编程序,已知5个学生的4门课的成绩,要求求出每个学生的平均成绩,然后对平均成绩从高到低将各学生的成绩排序记录。
时间: 2023-06-06 09:08:19 浏览: 98
编写程序,输入并保存5名学生的信息,计算出平均分,再按照成绩从高到低的顺序输出他们的信息 学生信息包括学号、姓名、成绩
这是一道编程题,我可以给你提供代码实现帮助,以下是一种实现:
```
#include<iostream>
#include<algorithm>
using namespace std;
struct Student {
string name;
double score[4];
double average;
} stu[5];
bool cmp(Student a, Student b) {
return a.average > b.average;
}
int main() {
// 输入5个学生的信息
for(int i = 0; i < 5; i++) {
cin >> stu[i].name;
for(int j = 0; j < 4; j++) {
cin >> stu[i].score[j];
}
stu[i].average = (stu[i].score[0] + stu[i].score[1] + stu[i].score[2] + stu[i].score[3]) / 4.0;
}
// 将学生按平均成绩从高到低排序
sort(stu, stu + 5, cmp);
// 输出排序结果
for(int i = 0; i < 5; i++) {
cout << stu[i].name << " " << stu[i].average << endl;
}
return 0;
}
```
输入示例:
```
Tom 89 93 91 87
Jerry 81 86 84 90
Mike 78 71 88 89
Mary 92 81 78 89
John 88 80 77 85
```
输出示例:
```
Tom 90
Mary 85
Jerry 85
John 82.5
Mike 81.5
```
阅读全文