本题要求编写C语言程序,根据输入学生的成绩,统计并输出学生的平均成绩、最高成绩和最低成绩。
时间: 2025-01-12 18:58:53 浏览: 37
好的,我来为您编写一个C语言程序,用于统计并输出学生的平均成绩、最高成绩和最低成绩。以下是程序代码:
```c
#include <stdio.h>
#define MAX_STUDENTS 100
int main() {
int n, i;
float scores[MAX_STUDENTS];
float sum = 0, max, min, average;
// 输入学生人数
printf("请输入学生人数: ");
scanf("%d", &n);
// 检查输入是否合法
if(n <= 0 || n > MAX_STUDENTS) {
printf("学生人数必须在1到%d之间。\n", MAX_STUDENTS);
return 1;
}
// 输入学生成绩
for(i = 0; i < n; i++) {
printf("请输入第%d个学生的成绩: ", i+1);
scanf("%f", &scores[i]);
sum += scores[i];
}
// 初始化最大和最小值
max = scores[0];
min = scores[0];
// 查找最高和最低成绩
for(i = 1; i < n; i++) {
if(scores[i] > max) {
max = scores[i];
}
if(scores[i] < min) {
min = scores[i];
}
}
// 计算平均成绩
average = sum / n;
// 输出结果
printf("\n统计结果:\n");
printf("平均成绩: %.2f\n", average);
printf("最高成绩: %.2f\n", max);
printf("最低成绩: %.2f\n", min);
return 0;
}
```
这个程序的工作原理如下:
1. 定义了一个常量MAX_STUDENTS来限制最大学生人数。
2. 使用数组scores来存储学生的成绩。
3. 首先输入学生人数,并进行基本的输入验证。
4. 然后使用循环输入每个学生的成绩,同时累加总成绩。
5. 初始化最大和最小值为第一个学生的成绩。
6. 使用循环遍历所有成绩,更新最高和最低成绩。
7. 计算平均成绩。
8. 最后输出统计结果,包括平均成绩、最高成绩和最低成绩。
阅读全文
相关推荐


















