用c++编写一个能计算学生平均成绩和成绩排序的程序
时间: 2024-03-19 15:43:28 浏览: 88
应用c++语言开发显示学生的各科成绩及平均成绩的程序
好的,我可以帮你编写这个程序。以下是代码示例:
```c++
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
struct Student {
string name;
double score;
};
bool cmp(Student a, Student b) {
return a.score > b.score; // 按成绩从高到低排序
}
int main() {
int n;
cout << "请输入学生人数:";
cin >> n;
vector<Student> students(n);
double sum = 0;
for (int i = 0; i < n; i++) {
cout << "请输入第" << i+1 << "个学生的姓名和成绩(中间用空格隔开):";
cin >> students[i].name >> students[i].score;
sum += students[i].score;
}
double average = sum / n;
cout << "学生平均成绩为:" << average << endl;
sort(students.begin(), students.end(), cmp);
cout << "学生成绩从高到低排序:" << endl;
for (int i = 0; i < n; i++) {
cout << students[i].name << " " << students[i].score << endl;
}
return 0;
}
```
这个程序中,我们使用了一个 `Student` 结构体来保存每个学生的姓名和成绩。然后,我们使用一个 `vector` 容器来存储所有的学生信息,并计算它们的平均成绩。最后,我们使用 `sort` 函数对学生按成绩从高到低进行排序,并输出排序后的结果。
希望能帮助到你!
阅读全文