一个关于磁盘文件的问题,希望大家给予指点,谢过!
请看下面的一个小程序,我想要实现的功能是:从键盘输入学生信息记录,然后保存到磁盘文件中,再将学生的记录输出到 屏幕上。但是程序如下写好后,运行结果确是我没有想到的,结果我已经附在压缩文件的图片
1.zip
(2.8 KB)
中,请大家看看,到底是什么地方我错了,谢谢!#include "stdio.h"
#define size 4
struct student
{
int num;
char name[20];
int age;
int score;
}stu[size];
void save()
{
FILE *fp;
int i;
if((fp=fopen("students","w"))==NULL)
{printf("cann't open the file!\n");
exit(0);
}
for(i=0;i<size;i++)
if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)
printf("file write error!");
fclose(fp);
}
void main()
{
int i;
printf("please input the records:\n");
for(i=0;i<size;i++)
scanf("%d,%s,%d,%d",&stu[i].num,stu[i].name,&stu[i].age,&stu[i].score);
save();
for(i=0;i<size;i++)
{ printf("%4d,%6d,%4d,%5d",stu[i].num,stu[i].name,stu[i].age,stu[i].score);
printf("\n");}
getch();
}