统计每一学生的平均成绩

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 110 收藏 0 点赞 0 评论 0

38. 已知文件中存有10 个学生的数学、政治、和英语三门课的成绩,试统计每一学生的平均成绩,并存入该文件中。
解:   #include <stdio.h>
struct student{  int number;
char cname[10];
int shuxue;
int zhengzhi;
int yingyu;
double ave;};
main()
{
FILE   *fp;
struct student s[10];
int size;
int i;
size=sizeof(struct student);
if((fp=fopen(“student”,”ab+”))==NULL)
{
printf(“cannot open the file!”);
exit(0);
}
for(i=0;i<10;i++)
{
fread(&s[i],size,1,fp);
s[i].ave=(s[i].shuxue+s[i].zhengzhi+s[i].yingyu)/3;
}
rewind(fp);
for(i=0;i<10;i++)
fwrite(&s[i],size,i,fp);
fclose(fp);
}

已知文件中存有10 个学生的数学、政治、和英语三门课的成绩,试统计每一学生的平均成绩,并存入该文件中。

解:   #include <stdio.h>

struct student{  int number;

char cname[10];

int shuxue;

int zhengzhi;

int yingyu;

double ave;};

main()

{

FILE   *fp;

struct student s[10];

int size;

int i;

size=sizeof(struct student);

if((fp=fopen(“student”,”ab+”))==NULL)

{

printf(“cannot open the file!”);

exit(0);

}

for(i=0;i<10;i++)

{

fread(&s[i],size,1,fp);

s[i].ave=(s[i].shuxue+s[i].zhengzhi+s[i].yingyu)/3;

}

rewind(fp);

for(i=0;i<10;i++)

fwrite(&s[i],size,i,fp);

fclose(fp);

}

评论列表
文章目录