从键盘输入以下10 个学生的学号、姓名,以及数学、语文和英语成绩,写到文本文件f3.txt 中,再从文件中取出数据,计算每个学生的总成绩和平均分,并将结果显示在屏幕上。
程序
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct num
{
int xuehao;
char name[50];
int yu;
int su;
int yin;
int zong;
int jun;
};
int main(void)
{
FILE *fp;
int i;
struct num nums[11];
if((fp=fopen("D:\\c语言\\f3.txt","w"))==NULL)
{
printf("file open errof!");
exit(0);
}
for(i=0;i<10;i++)
{
printf("请输入学生的学号、姓名,以及数学、语文和英语成绩\n");
scanf("%d",&nums[i].xuehao);
scanf("%s",nums[i].name);
scanf("%d%d%d",&nums[i].yu,&nums[i].su,&nums[i].yin);
fprintf(fp,"%d %s %d %d %d\n",nums[i].xuehao,nums[i].name,nums[i].yu,nums[i].su,nums[i].yin);
}
for(i=0;i<10;i++)
{
nums[i].zong=nums[i].yu+nums[i].su+nums[i].yin;
nums[i].jun=nums[i].zong/3;
}
printf("学生的总成绩和平均成绩为\n");
for(i=0;i<10;i++)
{
printf("%s %d %d\n",nums[i].name,nums[i].zong,nums[i].jun);
}
if(fclose(fp))
{
printf("can no close the file\n");
exit(0);
}
return 0;
}
结果