这段代码如果改为C++应该怎么做?
时间: 2024-12-25 10:25:37 浏览: 4
将上述Python代码转换成C++,我们需要创建一个结构体或类来存储学生的信息,并使用`vector`来替代Python的列表。这里是C++的版本:
```cpp
#include <iostream>
#include <vector>
#include <algorithm> // 包含sort函数
// 创建一个结构体表示学生
struct Student {
int score;
int id;
};
int main() {
std::vector<Student> students; // 使用std::vector存储学生信息
for (size_t i = 0; i < 10; ++i) {
int score;
std::cout << "请输入第" << (i + 1) << "位同学的成绩:";
std::cin >> score;
students.push_back({score, i + 1}); // 学号从1开始
}
// 按照成绩降序排序
std::sort(students.begin(), students.end(),
[](const Student& a, const Student& b) { return a.score > b.score; });
// 输出前三个最高分及其对应学号
for (size_t i = 0; i < 3; ++i) {
std::cout << "第" << (i + 1) << "名:学号 " << students[i].id << ", 成绩 " << students[i].score << std::endl;
}
return 0;
}
阅读全文