文件score.text,结构体中包括学生名字学生成绩,把成绩按从高
到低排序显示输出个数:名字 分数
Void sort (student[] in t count)
Void display (student[] in t count)
#include <stdio.h>
#include <string.h>
// 定义学生结构体
typedef struct {
char name[50];
int score;
} student;
// 交换两个学生的位置
void swap(student* a, student* b) {
student temp = *a;
*a = *b;
*b = temp;
}
// 排序学生成绩,按照从高到低的顺序
void sort(student arr[], int count) {
for (int i = 0; i < count - 1; i++) {
for (int j = 0; j < count - i - 1; j++) {
if (arr[j].score < arr[j+1].score) {
swap(&arr[j], &arr[j+1]);
}
}
}
}
// 显示学生成绩
void display(student arr[], int count) {
for (int i = 0; i < count; i++) {
printf("%s %d\n", arr[i].name, arr[i].score);
}
}
int main() {
// 假设有5个学生
student students[5] = {
{"张三", 85},
{"李四", 77},
{"王五", 92},
{"赵六", 68},
{"孙七", 79}
};
sort(students, 5); // 对学生成绩进行排序
display(students, 5); // 显示排序后的学生成绩
return 0;
}
```