c 语言从键盘输入若干个学生的C语言成绩,以输入负数作为输入结束标记。用数组和函数实现求解最高分和将所有成绩降序排列。
时间: 2023-06-18 13:02:01 浏览: 166
以下是实现代码:
```c
#include <stdio.h>
void sort(int arr[], int n) { // 降序排列函数
int i, j, temp;
for (i = 0; i < n; i++) {
for (j = i + 1; j < n; j++) {
if (arr[i] < arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
int main() {
int scores[100], i, max_score = 0, n = 0;
// 输入学生成绩,以负数为结束标记
printf("请输入学生的成绩,以负数为结束:\n");
while (1) {
scanf("%d", &scores[n]);
if (scores[n] < 0) {
break;
}
if (scores[n] > max_score) {
max_score = scores[n]; // 更新最高分
}
n++;
}
// 输出最高分
printf("最高分为:%d\n", max_score);
// 降序排列
sort(scores, n);
// 输出降序排列后的成绩
printf("降序排列后的成绩为:\n");
for (i = 0; i < n; i++) {
printf("%d ", scores[i]);
}
printf("\n");
return 0;
}
```
运行程序后,输入学生成绩,以负数为结束标记,程序会输出最高分和降序排列后的成绩。
阅读全文