从键盘输入10个学生的某门课的成绩,计算平均成绩,并按平均成绩排序。
时间: 2024-02-11 17:07:46 浏览: 31
好的,这是一个关于计算和排序的问题。以下是一种可能的实现方式:
```
#include <stdio.h>
int main() {
int n = 10; // 学生人数
float scores[n]; // 成绩数组
float sum = 0; // 总成绩
// 从键盘读入成绩
for (int i = 0; i < n; i++) {
printf("请输入第%d个学生的成绩:", i + 1);
scanf("%f", &scores[i]);
sum += scores[i];
}
// 计算平均成绩
float average = sum / n;
printf("平均成绩为:%.2f\n", average);
// 冒泡排序
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (scores[j] < scores[j+1]) {
float temp = scores[j];
scores[j] = scores[j+1];
scores[j+1] = temp;
}
}
}
// 输出排序后的成绩
printf("按平均成绩排序后的成绩为:\n");
for (int i = 0; i < n; i++) {
printf("%.2f ", scores[i]);
}
printf("\n");
return 0;
}
```
运行结果示例如下:
```
请输入第1个学生的成绩:90
请输入第2个学生的成绩:85
请输入第3个学生的成绩:92
请输入第4个学生的成绩:77
请输入第5个学生的成绩:88
请输入第6个学生的成绩:80
请输入第7个学生的成绩:95
请输入第8个学生的成绩:83
请输入第9个学生的成绩:87
请输入第10个学生的成绩:91
平均成绩为:87.80
按平均成绩排序后的成绩为:
95.00 92.00 91.00 90.00 88.00 87.00 85.00 83.00 80.00 77.00
```