c语言中,调用sort函数,输入10个成绩进行降序排序
时间: 2024-12-29 07:36:52 浏览: 13
在C语言中,如果你想要对10个成绩进行降序排序,通常会使用标准库中的`qsort`函数,它是一个通用的快速排序算法实现。首先,你需要定义一个结构体来存储成绩及其对应的数组,然后提供一个比较函数`compare`,告诉`qsort`如何判断分数的大小。
这里有一个简单的示例:
```c
#include <stdio.h>
#include <stdlib.h>
// 结构体表示学生和成绩
typedef struct {
int score;
} Student;
// 比较函数,用于降序排列
int compare(const void* a, const void* b) {
return ((const Student*)b)->score - ((const Student*)a)->score; // 负数表示a应该排在b前面
}
void sort_scores(Student scores[], int count) {
qsort(scores, count, sizeof(Student), compare);
}
int main() {
// 假设有10个初始的成绩
Student scores[10] = {50, 78, 92, 67, 85, 43, 98, 72, 61, 88};
// 对成绩数组进行降序排序
sort_scores(scores, 10);
// 打印排序后的成绩
for (int i = 0; i < 10; i++) {
printf("%d ", scores[i].score);
}
return 0;
}
```
当你运行这个程序时,它将输出按降序排列的成绩。记得编译并链接时链接`stdlib`库,因为它包含了`qsort`函数。
阅读全文