c++成绩排名pta
时间: 2024-12-08 20:12:17 浏览: 87
在C++中,如果你想要根据学生的成绩对他们的排名进行排序,你可以创建一个包含学生信息的数据结构,比如一个结构体或者类,其中包含姓名(name)和成绩(score)两个字段。然后可以使用标准模板库(STL)中的算法,如`std::sort`,结合自定义的比较函数来按成绩降序排列。
例如:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
struct Student {
std::string name;
int score;
};
bool compareScore(Student a, Student b) {
return a.score > b.score; // 按照分数从高到低排序
}
int main() {
std::vector<Student> students = {{"Alice", 90}, {"Bob", 85}, {"Charlie", 95}};
std::sort(students.begin(), students.end(), compareScore); // 排序
for (const auto& student : students) {
std::cout << "Name: " << student.name << ", Score: " << student.score << std::endl;
}
return 0;
}
```
在这个例子中,`compareScore`函数是一个比较函数,当传入两个学生对象时,如果第一个学生的分数大于第二个,那么返回`true`,排序结果就是按照成绩递增。反之则保持原样。
阅读全文