编写一个C语言程序,统计一个班(最多50人)的学生成绩,要求实现以下功能:

由键盘输入每一个学生的学号,姓名和四门课程的成绩;
计算每个学生的平均分和总分;
按总分排序(从高到低),并按名次输出;
根据要求输出某门功课(由键盘输入课程号)成绩在90分以上(包括90分)的学生情况;
具体要求:
每一个功能为一个独立的函数;
所有的键盘输入都要有提示;
学生情况应用结构体表示,例如:
struct student
{ int num;
char name[10 ];
float grade[6]; };

要用最基础的C语言,不要C++

【程序100】
题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出
平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件"stud"中.
1.程序分析:
2.程序源代码:
#include "stdio.h"
struct student
{ char num[6];
char name[8];
int score[3];
float avr;
} stu[5];
main()
{int i,j,sum;
FILE *fp;
/*input*/
for(i=0;i<5;i++)
{ printf("\n please input No. %d score:\n",i);
printf("stuNo:");
scanf("%s",stu[i].num);
printf("name:");
scanf("%s",stu[i].name);
sum=0;
for(j=0;j<3;j++)
{ printf("score %d.",j+1);
scanf("%d",&stu[i].score[j]);
sum+=stu[i].score[j];
}
stu[i].avr=sum/3.0;
}
fp=fopen("stud","w");
for(i=0;i<5;i++)
if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)
printf("file write error\n");
fclose(fp);
}
温馨提示:答案为网友推荐,仅供参考