用c++将n个学生的信息(包括学号,姓名,成绩),按照成绩的高低顺序输出学生的信息。
时间: 2024-01-03 20:03:26 浏览: 79
好的,这是一个简单的排序问题,可以使用C++中的结构体和sort函数来完成。以下是示例代码:
```c++
#include <iostream>
#include <algorithm>
using namespace std;
struct student {
int id;
string name;
int score;
};
bool cmp(student a, student b) {
return a.score > b.score;
}
int main() {
int n;
cin >> n;
student stu[n];
for (int i = 0; i < n; i++) {
cin >> stu[i].id >> stu[i].name >> stu[i].score;
}
sort(stu, stu + n, cmp);
for (int i = 0; i < n; i++) {
cout << stu[i].id << " " << stu[i].name << " " << stu[i].score << endl;
}
return 0;
}
```
首先定义结构体`student`来存储学生的信息,包括学号、姓名和成绩。然后定义一个`cmp`函数作为sort函数的比较函数,按照成绩从高到低排序。在`main`函数中,先输入学生数量和每个学生的信息,然后使用sort函数对数组进行排序,最后输出排好序的学生信息。
阅读全文