#include
#include
struct student{
char name[20];
char number[10];
int math,physics,englishi;
};
int main()
{
int n;
FILE *fp;
struct student S[1000];
fp=fopen("I:\shixun\one\studinfo.dat.txt","w");
printf("请输入学生人数:n=");
scanf("%d",&n);
printf("输入成绩时请按 Math Physics Englishi顺序输入:\n");
for(int i=0;i<n;i++)
{
printf("Student's name:"); scanf("%s",S[i].name);
printf("Number:"); scanf("%s",S[i].number);
printf("Grade: "); scanf("%d%d%d",&S[i].math,&S[i].physics,&S[i].englishi);
fwrite(S+i,sizeof(student),1,fp);
}
fclose(fp);
fp=fopen("I:\shixun\one\studinfo.dat.txt","r");
printf("NAME"); printf(" Number"); printf(" Grade:"); printf("Math Physics Englishi");
printf("\n");
for(int i=0;i<n;i++)
{
fread(S+n+i,sizeof(student),1,fp);
printf("%s",S[n+i].name);
printf("%14s",S[n+i].number);
printf("%16d %6d %6d",S[n+i].math,S[n+1].physics,S[n+i].englishi);
printf("\n");
}
fclose(fp);
//fwrite(fp,sizeof(student),n,fp);
return 0;
}
执行这个程序,当我打开该文件的时候,看到的没有各科成绩,只有姓名和学号,但是输出没有问题,请问怎么了