一个班有n个同学,通过键盘输入成绩,对n个学生的成绩进行排序。使用c语言数组编程
时间: 2023-12-14 07:37:03 浏览: 55
以下是使用冒泡排序算法来对学生成绩进行排序的C语言代码实现:
```c
#include <stdio.h>
void bubbleSort(int arr[], int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int n, i;
printf("请输入学生人数:");
scanf("%d", &n);
int scores[n];
for (i = 0; i < n; i++) {
printf("请输入第%d个学生的成绩:", i + 1);
scanf("%d", &scores[i]);
}
bubbleSort(scores, n); // 对成绩进行排序
printf("排序后的成绩为:\n");
for (i = 0; i < n; i++) {
printf("%d ", scores[i]);
}
printf("\n");
return 0;
}
```
代码中,我们先通过 `scanf` 函数从键盘输入学生人数 `n`,然后使用 `scores[n]` 定义一个长度为 `n` 的整型数组来存储学生成绩。
接着,我们使用 `for` 循环依次读入每个学生的成绩,并通过调用 `bubbleSort` 函数对成绩进行排序。`bubbleSort` 函数使用冒泡排序算法,从小到大地对数组 `arr` 进行排序。
最后,我们再次使用 `for` 循环输出已经排好序的成绩数组 `scores` 。