C++实现学生成绩管理系统:添加与计算平均成绩

0 下载量 189 浏览量 更新于2024-08-03 收藏 1KB TXT 举报
本资源是一份C++代码示例,用于实现一个简单的学生成绩管理系统。系统的核心是定义了一个名为`Student`的类,它包含了学生的个人信息(如姓名和学号)以及他们的成绩记录。以下是该系统的主要知识点: 1. **类定义与成员变量**: - `class Student` 定义了一个名为`Student`的类,它有三个私有成员变量: - `string name`:表示学生的姓名。 - `int id`:表示学生的学号。 - `vector<int> scores`:用于存储学生的各科成绩,使用`vector`是因为成绩列表可以动态增加或减少。 2. **构造函数**: - `Student(string n, int i) : name(n), id(i)` 是类的构造函数,用于初始化学生对象,传入学生的姓名和学号。 3. **方法定义**: - `void addScore(int score)`:这个成员函数允许添加新的成绩到学生的成绩列表中,通过`scores.push_back(score)`实现。 - `double getAverageScore() const`:这是一个常量成员函数,计算并返回学生的平均成绩。首先检查分数列表是否为空,然后遍历列表求和并除以元素个数,确保了结果为浮点数。 4. **输出功能**: - `void printInfo() const`:用于打印学生的完整信息,包括姓名、学号和平均成绩。 5. **主函数**: - 在`main()`函数中,创建了一个`vector<Student>`类型的`students`容器,用于存储多个学生对象。 - 使用`emplace_back()`方法动态添加学生,如添加"张三"(ID 1001)的成绩。 - 遍历`students`容器,调用每个学生的`printInfo()`方法显示他们的信息,并在每条记录后添加换行符。 6. **整体流程**: - 代码通过实例化学生对象和调用其成员函数,实现了对学生信息和成绩的管理,包括添加新成绩、计算平均成绩以及展示学生详细信息的功能。 通过这个代码,我们可以理解如何在C++中设计一个基础的学生成绩管理系统,包括数据结构的选择(如`vector`)、类的定义和成员函数的编写。这对于学习C++编程和理解面向对象编程的概念非常有用。