从键盘输入4位学生的数据(学生数据包括学号、姓名和三门课的成绩),然后将它们转存到磁盘文件中。
供参考:
#include<stdio.h>
#define N 3 //人数
#define M 3 //课程
struct student{
int num;
char name[16];
float score[M];
};
int main()
{
struct student s[N];
int i,j;
FILE *fp;
printf("请输入学生 学号 姓名 课程1 课程2 课程3\n");
for(i=0;i<N;i++){
printf("请输入第%d位的学生信息:",i+1);
scanf("%d%s",&s[i].num,s[i].name);
for(j=0;j<M;j++)
scanf("%f",&s[i].score[j]);
}
for(i=0;i<N;i++){ //显示
printf("%d %s",s[i].num,s[i].name);
for(j=0;j<M;j++)
printf(" %.2f",s[i].score[j]);
printf("\n");
}
fp = fopen("student_data.txt","w");//保存到文件
if(fp == NULL){
printf("文件打开错误!\n");
exit(0);
}
for(i=0;i<N;i++){
fprintf(fp,"%d %s %f %f %f",s[i].num,s[i].name,
s[i].score[0],s[i].score[1],s[i].score[2]);
}
fclose(fp);
return 0;
}