求C语言高手帮忙编个程序

来源:百度知道 编辑:UC知道 时间:2024/06/07 23:14:09
有10个学生,每个学生有3门课成绩,从键盘输入以上信息(包括学生学号,姓名,三门课成绩),计算出平均成绩,将所有数据以空格分开,与平均成绩一并按每人一行的格式存入文件stu.dat中。并按平均成绩由高到低输入到屏幕(要求有学号,平均成绩,排名序号。读写文件和排序输出必须使用函数)
这是我们期末实习的题目,希望有高手帮忙
做的好还有追加

#include <cstdlib>
#include <iostream>

using namespace std;
struct student
{
char name [20];
int score [5];
int sum ;
float average ;
}a [30];
int main(int argc, char *argv[])
{
int i,k,j;
char ch,filename [20];
printf("input the file name \n");
gets(filename);

for(i=0;i<10;i++)
{
printf("input student name \n");
scanf("%s",a[i].name );
printf("input the score \n");

for(k=0;k<3;k++)
scanf("%d",&a[i].score[k]);

}
for(i=0;i<10;i++)
{ for(k=0;k<3;k++)
a[i].sum+=a[i].score[k];
a[i].average=a[i].sum/3; }
for(i=0;i<10;i++)