文章

10

粉丝

0

获赞

28

访问

1.1k

头像
成绩排序 题解:详细注释
P1151 清华大学上机题
发布于2025年3月23日 10:46
阅读数 94

#include <stdio.h>  // 引入标准输入输出库
#define MAX 1000    // 定义最大学生数量

// 定义学生结构体,包含姓名(最多 10 个字符)和成绩
typedef struct {
    char name[10];
    int grade;
} Stu;

int main() {
    int n, flag;  // 变量 n 存储学生人数,flag 决定排序方式
    Stu stu[MAX]; // 定义学生数组,存储学生信息

    // 读取输入,持续处理多个数据集(适用于多组输入的情况)
    while (scanf("%d %d", &n, &flag) == 2) {
        // 读取 n 个学生的信息(姓名 + 成绩)
        for (int i = 0; i < n; i++) {
            scanf("%s %d", stu[i].name, &stu[i].grade);
        }

        // 使用冒泡排序对学生按照成绩排序
        for (int i = 0; i < n - 1; i++) {
            for (int j = 0; j < n - 1 - i; j++) {
                // 根据 flag 选择排序顺序
        ...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发