#define SIZE 10
struct student_type
{
char name[10]
int num
int age
char addr[15]
}stud[SIZE] //定义全局结构体数组,包含10个学生信息
void save()
{
FILE *fp
int i
if((fp=fopen("stu.dat","wb"))==NULL)
{
printf("无法打开文件\n")
return
}
for(i=0i<SIZEi++)
// { 你多加括号了这里,for语句不能包含fclose(fp)函数。
if(fwrite(&stud[i],sizeof(struct student_type),1,fp)!=1) //fwrite,fread 执行成功,则返回值为形参count的值
printf("文件写入错误\n")
fclose(fp)
// } 这个也去掉。
}
int main()
{
int i
printf("请输入学生的数据:\n")
for(i=0i<SIZEi++)
scanf("%s%d%d%s",stud[i].name,&stud[i].num,&stud[i].age,stud[i].addr)
save()
return 0
}
你for循环多加大括号了,循环体包含多了,已帮你改正!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)