#student #class #school #structures #manage #grades #schools

school_library

这个 Rust 库提供了管理学校相关数据(包括学生、班级和学校)的结构。

3 个稳定版本

1.0.3 2023 年 11 月 29 日

#423 in 数据结构

MIT 许可证

21KB
301

只是为了好玩,随便写的

这相当于一个表示初高中学校数据库的模型。

我写这段代码是为了练习我在 Rust 语言中的所有知识。

学校 Rust 库

这个 Rust 库提供了管理学校相关数据(包括学生、班级和学校)的结构。

使用方法

要使用此库,请在您的 Cargo.toml 中添加以下内容

[dependencies]
school_library = "1.0.0"

然后,在您的 Rust 代码中

use school_library::{School, Class, Student, Grades};

成绩

代表不同科目的成绩。

let grades = Grades::new(90, 85, 88, 92, 78, 87, 91, 95, 89);
let random_grades = Grades::gen();

学生

代表具有 ID、姓名、年龄和成绩的学生。

let student = Student::new(1, String::from("John Doe"), 16, &grades);

班级

代表具有名称和学生列表的班级。

let class = Class::new(String::from("Math Class"), vec![student1, student2]);
class.add_student(&new_student);

学校

代表具有名称、学生数量和班级列表的学校。

let mut school = School::new(String::from("High School"), vec![class1, class2]);
school.add_class(&new_class);
let average_grades = school.average_grades();
let best_class = school.get_best();

API 参考

成绩

代表不同科目的成绩。

方法签名 描述
fn new(...) ->成绩 使用给定的科目成绩创建一个新的 Grades 实例。
fn gen() ->成绩 生成随机成绩。

学生

代表具有 ID、姓名、年龄和成绩的学生。

方法签名 描述
fn new(...) ->学生 创建一个新的 Student 实例。

班级

代表具有名称和学生列表的班级。

方法签名 描述
fn new(...) ->班级 创建一个新的 Class 实例。
fn get_average() -> f32 计算班级的平均成绩。
fn add_student(&mut self, student: &学生) 将学生添加到班级中。

学校

代表具有名称、学生数量和班级列表的学校。

方法签名 描述
fn new(...) ->学校 创建一个新的 School 实例。
fn average_grades() -> f32 计算整个学校平均成绩。
fn add_class(&mut self, class: &班级) 将班级添加到学校。
fn get_best() ->班级 找到学校中平均成绩最好的班级。

依赖项

~310KB