用c语言输入10名同学的成绩和学号,输出显示学生分数的排行,采用选择排序
时间: 2023-06-09 17:04:56 浏览: 177
好的,请稍等,让我为您解答这个问题。
以下是用 C 语言实现输入学生成绩和学号,对学生分数进行选择排序并输出学生分数排行的代码:
```c
#include <stdio.h>
int main()
{
int n = 10; // 学生数量
int i, j, max, temp;
int score[n], id[n]; // 分数和学号数组
// 输入学生成绩和学号
printf("请输入学生成绩和学号:\n");
for (i = 0; i < n; i++) {
printf("学生%d的学号和分数:", i + 1);
scanf("%d %d", &id[i], &score[i]);
}
// 选择排序,按学生分数从大到小排列
for (i = 0; i < n - 1; i++) {
max = i;
for (j = i + 1; j < n; j++) {
if (score[j] > score[max])
max = j;
}
if (i != max) {
temp = score[i];
score[i] = score[max];
score[max] = temp;
temp = id[i];
id[i] = id[max];
id[max] = temp;
}
}
// 输出学生分数排行
printf("学生分数排行:\n");
for (i = 0; i < n; i++) {
printf("学号:%d 分数:%d\n", id[i], score[i]);
}
return 0;
}
```
希望以上代码能够满足您的需求,有其他问题可以继续提出。
阅读全文