假设学生的基本信息包括学号、姓名、三门课程成绩以及个人平均成绩,定义一个能够表示学生信息的结构类型。输入n(1<=n<=10)个学生的成绩信息,计算并输出平均分最高的学生信息,平均分保留两位小数。如果平均分最高的学生有多个,按输入顺序输出第一个学生的信息。 输入格式: 输入整数n(1<=n<=10),在下面n行输入n个学生的信息,包括学号、姓名、三门课程成绩(整数)。 输出格式: 在一行中输出平均分最高的学生信息:学号、姓名、平均分(保留两位小数)。
时间: 2023-06-05 19:47:13 浏览: 542
定义结构体类型:
struct Student {
int id; // 学号
string name; // 姓名
int score1; // 第一门课程成绩
int score2; // 第二门课程成绩
int score3; // 第三门课程成绩
double avg; // 平均分
};
输入n个学生信息,计算平均分并找到平均分最高的学生:
int n;
cin >> n;
vector<Student> students(n);
for (int i = 0; i < n; i++) {
cin >> students[i].id >> students[i].name >> students[i].score1 >> students[i].score2 >> students[i].score3;
students[i].avg = (students[i].score1 + students[i].score2 + students[i].score3) / 3.0;
}
找到平均分最高的学生:
int maxIndex = 0;
for (int i = 1; i < n; i++) {
if (students[i].avg > students[maxIndex].avg) {
maxIndex = i;
}
}
输出平均分最高的学生信息:
cout << students[maxIndex].id << " " << students[maxIndex].name << " " << fixed << setprecision(2) << students[maxIndex].avg;
阅读全文