用C语言程序段写出输入m个学生的成绩存放在score数组里,统计这些学生的平均分和低于平均分的人数
时间: 2024-11-29 20:16:23 浏览: 29
在C语言中,你可以通过以下几个步骤来实现这个功能:
首先,我们需要定义一个结构体来存储每个学生的成绩信息,然后创建一个数组来存放学生数据。接着,我们计算平均分并遍历数组找出低于平均分的学生。
```c
#include <stdio.h>
// 定义学生结构体
typedef struct {
int score;
} Student;
// 计算平均分
double calculate_average(Student scores[], int m) {
int total = 0;
for (int i = 0; i < m; i++) {
total += scores[i].score;
}
return (double)total / m;
}
// 统计低于平均分的人数
int count_below_average(Student scores[], double avg, int m) {
int below_avg_count = 0;
for (int i = 0; i < m; i++) {
if (scores[i].score < avg) {
below_avg_count++;
}
}
return below_avg_count;
}
int main() {
const int m = 5; // 输入的学生人数,可根据需要修改
Student scores[m]; // 存储学生分数的数组
printf("请输入%d个学生的成绩:\n", m);
for (int i = 0; i < m; i++) {
scanf("%d", &scores[i].score);
}
double avg = calculate_average(scores, m); // 计算平均分
printf("平均分是:%.2f\n", avg);
int below_avg_students = count_below_average(scores, avg, m); // 统计低于平均分的人数
printf("有%d个学生的成绩低于平均分。\n", below_avg_students);
return 0;
}
```
阅读全文