c++学生类Student中包含当前学生对象的姓名、学号和三门课程的成绩和平均成绩,学生类Student中包含当前学生对象的姓名、学号和三门课程的成绩,在主函数中要求用户输入学生人数num,并根据输入的学生人数num创建动态对象数组。
时间: 2023-12-03 15:47:38 浏览: 85
学生成绩查询(c++)
好的,下面是一个简单的 C++ 代码示例,实现了上述要求:
```cpp
#include <iostream>
#include <string>
using namespace std;
class Student {
public:
string name;
string id;
double score[3];
double avg_score;
Student(string name, string id, double score1, double score2, double score3) {
this->name = name;
this->id = id;
score[0] = score1;
score[1] = score2;
score[2] = score3;
this->avg_score = (score1 + score2 + score3) / 3.0;
}
};
int main() {
int num;
cout << "请输入学生人数:";
cin >> num;
Student* students = new Student[num];
for (int i = 0; i < num; i++) {
cout << "请输入第 " << i+1 << " 个学生的姓名、学号、三门课程的成绩:" << endl;
string name, id;
double score1, score2, score3;
cin >> name >> id >> score1 >> score2 >> score3;
students[i] = Student(name, id, score1, score2, score3);
}
for (int i = 0; i < num; i++) {
cout << "第 " << i+1 << " 个学生:" << endl;
cout << "姓名:" << students[i].name << endl;
cout << "学号:" << students[i].id << endl;
cout << "三门课程的成绩:" << students[i].score[0] << ", " << students[i].score[1] << ", " << students[i].score[2] << endl;
cout << "平均成绩:" << students[i].avg_score << endl;
}
delete[] students;
return 0;
}
```
在上面的代码中,我们定义了一个 `Student` 类,包含了学生的姓名、学号、三门课程的成绩和平均成绩。在主函数中,我们首先要求用户输入学生人数 `num`,然后创建一个动态对象数组 `students`,长度为 `num`。接着,使用循环遍历数组,逐个读取用户输入的学生信息,并创建 `Student` 对象存储在数组中。
最后,我们再次使用循环遍历数组,输出每个学生的信息,包括姓名、学号、三门课程的成绩和平均成绩。最后,别忘了释放动态分配的内存空间,即使用 `delete[] students` 释放数组 `students`。
阅读全文