有五个学生,每个学生有三门课程的成绩,从键盘输入学生数据(包括学号,姓名,3门课程成绩),计算出平均成绩

将原有数据和计算出的平均分数存放在磁盘文件“stud”中
2024-11-19 08:40:21
推荐回答(1个)
回答(1):

经测试,程序正确运行,并把输入结果保存在stud文件中。
源代码如下:

#include

#define ID 11

typedef struct _stu
{
char id[ID];
int sco1;
int sco2;
int sco3;
}stu;

int main()
{
int i;
stu s[5];
FILE *fp;
float ave;
printf("请输入五个学生的学号和三门成绩:\n");
for(i=0;i<5;i++)
{
scanf("%s%d%d%d",s[i].id,&s[i].sco1,&s[i].sco2,&s[i].sco3);
}

if((fp=fopen("stud","w"))==NULL)
{
printf("文件打开失败\n");
return ;
}

for(i=0;i<5;i++)
{
ave=(s[i].sco1+s[i].sco2+s[i].sco3)/3.0;
fprintf(fp,"%s %d %d %d %.2f\n",s[i].id,s[i].sco1,s[i].sco2,s[i].sco3,ave);
}

fclose(fp);
return 0;
}