调用文件的问题!
#include "stdio.h"#define N 2
struct student
{
long int num;
char name[20];
int cj[3];
} stud[N];
void save()/*建立文件*/
{
FILE *fp;
int i;
if((fp=fopen("student.txt","wb"))==NULL)
{
printf("error");
exit(0);
}
for(i=0;i<N;i++)
if(fwrite(&stud[i],sizeof( struct student),1,fp)!=1)
{
printf("no\n");
exit(0);
}
fclose(fp);
}
main()
{ FILE *fp;
int i;
for(i=0;i<N;i++)
{
scanf("%ld %s %d %d %d",&stud[i].num,&stud[i].name,&stud[i].cj[1],&stud[i].cj[2],&stud[i].cj[3]);
printf("%ld,%s,%d,%d,%d\n",stud[i].num,stud[i].name,stud[i].cj[1],stud[i].cj[2],stud[i].cj[3]);
}
save();
if((fp=fopen("student.txt","rb"))==NULL)
{
printf("no");
exit(0);
}
while(!feof(fp))
{
fread(&stud+i,sizeof(struct student),1,fp);
printf("%ld,%s,%d,%d,%d\n",stud[i].num,stud[i].name,stud[i].cj[1],stud[i].cj[2],stud[i].cj[3]);
i++;
}
getch();
}
为什么输出的文件和输进的数据不同!!