C语言编程求救

来源:百度知道 编辑:UC知道 时间:2024/06/19 08:34:57
学生的记录由学号和成绩组成,N名学生的数据在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。在主函数中调用函数fun,并输出结果

/*学生的记录由学号和成绩组成,N名学生的数据在主函数中放入结构体数组s中,
请编写函数fun,它的功能是:把高于平均分的学生数据放在b所指的数组中,高于等于
平均分的学生人数通过形参n传回,平均分通过函数值返回。在主函数中调用函
数fun,并输出结果*/

#include <stdio.h>

#define N 5
struct student
{
int no;
float mark;
};
float fun(student s[], student b[],int* n,int* size);
void main()
{
student s[N];//N名学生的数据
student b[N];//高于平均分的学生数据放在b所指的数组
int n = 0;//高于等于平均分的人数
int size = 0 ;//高于平均分的人数
int i;
float ave;//平均分

//输入N名学生的数据
printf("please input the student 's no and mark %d\nno\tmark\n",N);
for (i = 0; i < N; i++)
{
scanf("%d%f",&(s[i].no),&(s[i].mark));
}

ave = fun(s, b, &n, &size);

printf("the information of higher than average!\n");
printf("no\tmark\n");
for (i = 0; i < size; i++)
{
printf("%d\t%f\n"