文章
28
粉丝
0
获赞
132
访问
25.2k
 
#include <bits/stdc++.h>
using namespace std;
// 定义学生结构体
struct Student {
    string name; // 学生姓名
    int score;     // 学生分数
};
int main() {
    int way, count;
    cin >> count; // 输入学生数量
    cin >> way;   // 输入排序方式(0: 降序, 1: 升序)
    Student stu[100]; // 假设最多100个学生
    // 输入学生信息
    for (int i = 0; i < count; i++) {
        cin >> stu[i].name >> stu[i].score;
    }
    // 排序
    if (way == 0) { // 降序排序
        for (int i = 0; i < count - 1; i++) {
            for (int j = 0; j < count - 1 - i; j++) {
                if (stu[j].score < stu[j + 1].score) {
                    swap(stu[j], stu[j + 1]);   //通过分数,判断结构体是否交换
                }
            }
        }
    } else if (way == 1) { // 升序排序
        for (int i = 0; i < count - 1; i++) {
            for (int j = 0; j < count - 1 - i; j++) {
                if (stu[j].score > stu[j + 1].score) {
                    swap(stu[j], stu[j + 1]);...
    
登录后发布评论
错的原因应该是没有多组输入,题目说了是多组测试数据