#include<stdio.h>
#include<stdlib.h>
#define M 2 //学生样本数目,可以按照需要进行修改,只改一处即可
#define N 3 //成绩的数目,其他同上
struct student{
int num;
char name[20];
float score[3];
float ave;
}cla[M],cla2[M];
void main(){
FILE *fp;
int i,j;
float ave;
if((fp = fopen("stu","wb")) == NULL){
printf("ERROR 201!\n");
exit(0);
}
for(i = 0;i < M;i++){
scanf("%d,%s",&cla[i].num,cla[i].name);
ave = 0;
for(j = 0;j < N;j++){
scanf("%f",&cla[i].score[j]);
ave += cla[i].score[j];
}
cla[i].ave = ave/N;
}
for(i = 0;i < M;i++)
fwrite(&cla[i],sizeof(struct student),1,fp);
fclose(fp);
if((fp = fopen("stu","rb")) == NULL){
printf("ERROR 202!\n");
exit(0);
}
for(i = 0;i < M;i++)
fread(&cla2[i],sizeof(struct student),1,fp);
for(i = 0;i < M;i++){
printf("%-5d,%-7s",cla2[i].num,cla2[i].name);
for(j = 0;j < N;j++)
printf("%-6.2f",cla2[i].score[j]);
printf("%-6.2f",cla2[i].ave);
printf("\n");
}
fclose(fp);
}
从键盘输入数据,计算出平均成绩,存放到文件中。
最新推荐文章于 2023-05-07 21:38:55 发布