用C语言编制程序从n个学生的成绩中统计出低于平均分的人数。
时间: 2024-12-13 16:17:27 浏览: 12
在C语言中,你可以通过以下几个步骤编写一个简单的程序来计算低于平均分的学生人数:
1. **声明数组和变量**:
首先,创建一个存储学生分数的数组,并声明一个变量来存储总分数、学生总数以及低于平均分的学生计数。
```c
int scores[n]; // 存储学生分数的数组
int total_score = 0;
int num_students = n; // 总学生数
int below_average = 0; // 低于平均分的学生数
```
2. **输入数据**:
然后,通过`for`循环从用户那里获取每个学生的分数并累加到总分数上。
```c
for (int i = 0; i < num_students; i++) {
scanf("%d", &scores[i]);
total_score += scores[i];
}
```
3. **计算平均分**:
找出平均分,然后与每个分数比较。
```c
double average = (double)total_score / num_students; // 平均分为浮点型以防整数除法的问题
for (int i = 0; i < num_students; i++) {
if (scores[i] < average) {
below_average++;
}
}
```
4. **输出结果**:
最后,打印出低于平均分的学生人数。
```c
printf("有 %d 名学生的成绩低于平均分.\n", below_average);
```
完整的代码示例:
```c
#include <stdio.h>
int main() {
int n, scores[100]; // 假设最多100名学生
printf("请输入学生人数:");
scanf("%d", &n);
for (int i = 0; i < n; i++) {
scanf("%d", &scores[i]);
}
double total_score = 0;
for (int i = 0; i < n; i++) {
total_score += scores[i];
}
double average = total_score / n;
int below_average = 0;
for (int i = 0; i < n; i++) {
if (scores[i] < average) {
below_average++;
}
}
printf("平均分为 %.2f,有 %d 名学生的成绩低于平均分.\n", average, below_average);
return 0;
}
阅读全文