rust程序设计(5)结构体相关练习题| 附带解答
生活随笔
收集整理的這篇文章主要介紹了
rust程序设计(5)结构体相关练习题| 附带解答
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目
-
基礎結構體練習:
- 創(chuàng)建一個名為
Person的結構體,包含name(字符串類型)和age(整數(shù)類型)兩個字段。 - 寫一個函數(shù),接收一個
Person實例作為參數(shù),并打印出這個人的名字和年齡。
- 創(chuàng)建一個名為
-
結構體方法練習:
- 為
Person結構體添加一個方法birthday,當調用時,它將這個人的年齡增加1。 - 創(chuàng)建一個
Person實例,并使用birthday方法為其慶生,然后打印出新的年齡。
- 為
-
結構體關聯(lián)函數(shù)練習:
- 為
Person結構體添加一個關聯(lián)函數(shù)(即靜態(tài)方法)new,它接收名字和年齡,并返回一個Person實例。 - 使用
Person::new來創(chuàng)建一個新的Person實例。
- 為
-
帶有枚舉的結構體練習:
- 創(chuàng)建一個名為
Vehicle的結構體,其中包含一個model(字符串類型)和一個名為vehicle_type的枚舉(枚舉值可以是Car,Truck,Motorcycle等)。 - 實現(xiàn)一個顯示
Vehicle信息的函數(shù),包括它的型號和類型。
- 創(chuàng)建一個名為
-
結構體更新語法練習:
- 創(chuàng)建兩個
Person實例。 - 使用結構體更新語法,創(chuàng)建一個新的
Person實例,它從第一個實例繼承名字,從第二個實例繼承年齡。
- 創(chuàng)建兩個
-
元組結構體練習:
- 創(chuàng)建一個名為
Color的元組結構體,它有三個u8類型的字段,代表紅、綠、藍色值。 - 創(chuàng)建一個
Color實例,并打印出其各個顏色分量。
- 創(chuàng)建一個名為
解答
-
基礎結構體練習:
struct Person { name: String, age: u32, } fn print_person(person: &Person) { println!("Name: {}, Age: {}", person.name, person.age); } -
結構體方法練習:
impl Person { fn birthday(&mut self) { self.age += 1; } } // 使用示例 // let mut person = Person { name: String::from("Alice"), age: 30 }; // person.birthday(); // println!("New age: {}", person.age); -
結構體關聯(lián)函數(shù)練習:
impl Person { fn new(name: String, age: u32) -> Person { Person { name, age } } } // 使用示例 // let person = Person::new(String::from("Bob"), 40); -
帶有枚舉的結構體練習:
enum VehicleType { Car, Truck, Motorcycle, } struct Vehicle { model: String, vehicle_type: VehicleType, } fn print_vehicle_info(vehicle: &Vehicle) { let type_str = match vehicle.vehicle_type { VehicleType::Car => "Car", VehicleType::Truck => "Truck", VehicleType::Motorcycle => "Motorcycle", }; println!("Model: {}, Type: {}", vehicle.model, type_str); } -
結構體更新語法練習:
// let person1 = Person { name: String::from("Chris"), age: 25 }; // let person2 = Person { name: String::from("Pat"), age: 30 }; // let person3 = Person { // name: person1.name, // ..person2 // }; -
元組結構體練習:
struct Color(u8, u8, u8); // 使用示例 // let color = Color(255, 0, 0); // println!("Red: {}, Green: {}, Blue: {}", color.0, color.1, color.2);
總結
以上是生活随笔為你收集整理的rust程序设计(5)结构体相关练习题| 附带解答的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python 潮流周刊#27:应该如何处
- 下一篇: Nginx自定义日志中时间格式