C语言程序题,怎样编写代码?

来源:百度知道 编辑:UC知道 时间:2024/05/15 10:00:35
有5个学生,每人3门课的成绩,从键盘输入数据(学生号,姓名,三门课的成绩)计算出平均成绩,并根据学生的平均成绩进行排序,将原有的数据和排序后的存放在磁盘文件"stud"中。

需要完整的代码。万分感谢!!

#include <stdio.h>
#include <stdlib.h>
#define n 3

struct score
{
int num;
float math; //数学成绩
float english; //英语成绩
float computer; //计算机成绩
float avg; //平均成绩
float all; //总成绩
};

void fun(struct score s[])
{
FILE *fp;
int i,j,t1;
float t;
if((fp=fopen("stud.txt","a"))==NULL)
{
printf("Error!\n");
exit(0);
}
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
if(s[i].avg<s[j].avg)
{
t=s[i].all;
s[i].all=s[j].all;
s[j].all=t;

t=s[i].avg;
s[i].avg=s[j].avg;
s[j].avg=t;

t=s[i].computer;
s[i].computer=s[j].computer;
s[j].computer=t;

t=s[i].english;
s[i].english=s[j].english;
s[j].english=t;

t=s[i].math;
s[i].math=s[j].math;