用一个简单的c语言程序设计学生记录由学号num和成绩score组成,N个学生的数据存放于结构数组a中,将程序Ccon203.c填写完整,其中函数void found(a[ ])实现:统计N个学生的平均成绩aver,输出平均值aver,以及成绩大于平均值的每位学生记录。
时间: 2024-01-02 19:01:41 浏览: 95
以下是填写完整的C语言程序设计:
```c
#include <stdio.h>
#define N 100
struct student {
int num;
int score;
};
void found(struct student a[]) {
int sum = 0;
float aver;
int i;
// 计算总成绩
for (i = 0; i < N; i++) {
sum += a[i].score;
}
// 计算平均成绩
aver = (float) sum / N;
// 输出平均成绩
printf("平均成绩为:%.2f\n", aver);
// 输出成绩大于平均值的学生
printf("成绩大于平均值的学生有:\n");
for (i = 0; i < N; i++) {
if (a[i].score > aver) {
printf("学号:%d,成绩:%d\n", a[i].num, a[i].score);
}
}
}
int main() {
struct student a[N];
int n;
int i;
printf("请输入学生的个数:");
scanf("%d", &n);
printf("请依次输入学生的学号和成绩:\n");
for (i = 0; i < n; i++) {
scanf("%d%d", &a[i].num, &a[i].score);
}
found(a);
return 0;
}
```
这个程序中,我们定义了一个结构体 `student`,包含学号 `num` 和成绩 `score`。我们用一个结构体数组 `a` 来存放 N 个学生的数据。
在函数 `found` 中,我们先计算了所有学生的总成绩,然后计算平均成绩,并输出平均成绩。接着,我们遍历结构体数组,输出成绩大于平均值的学生的学号和成绩。
在 `main` 函数中,我们先输入学生的个数,然后依次输入每个学生的学号和成绩。最后调用函数 `found`,进行统计和输出。
阅读全文