让你创建结构体student,包括姓名,数学成绩和英语成绩,输入3名同学的姓名和成绩,输出总分最高的同学数学成绩和英语成绩。c++
时间: 2024-10-21 22:14:02 浏览: 22
c++ 用结构体数组来创建学生成绩管理系统.doc.doc
5星 · 资源好评率100%
在C++中,你可以通过定义一个结构体`Student`来表示学生信息,并使用一个动态数组或者vector来存储多个学生的数据。这里是一个简单的示例,如何实现这个功能:
```cpp
#include <iostream>
#include <vector>
using namespace std;
// 定义结构体 Student
struct Student {
string name;
int mathScore;
int englishScore;
};
int main() {
// 创建一个 vector 来存储学生
vector<Student> students;
// 输入学生的数量
int numStudents;
cout << "请输入学生人数: ";
cin >> numStudents;
// 遍历输入学生信息并计算总分
for (int i = 0; i < numStudents; ++i) {
Student temp;
cout << "请输入第" << (i+1) << "位同学的姓名: ";
cin >> temp.name;
cout << "请输入第" << (i+1) << "位同学的数学成绩: ";
cin >> temp.mathScore;
cout << "请输入第" << (i+1) << "位同学的英语成绩: ";
cin >> temp.englishScore;
students.push_back(temp);
}
// 初始化最高分数记录
int maxTotalScore = students[0].mathScore + students[0].englishScore;
Student topStudent;
topStudent.mathScore = students[0].mathScore;
topStudent.englishScore = students[0].englishScore;
// 比较总分找出最高分的学生
for (const auto& student : students) {
if (student.mathScore + student.englishScore > maxTotalScore) {
maxTotalScore = student.mathScore + student.englishScore;
topStudent = student;
}
}
// 输出总分最高的同学及其成绩
cout << "总分最高的同学是 " << topStudent.name << ",他的数学成绩是 " << topStudent.mathScore
<< ", 英语成绩是 " << topStudent.englishScore << endl;
return 0;
}
```
阅读全文