求解惑,为什么出现这样的错误
今天写了段代码程序代码:
#include<stdio.h> #include<conio.h>//预处理 struct { int num; char name[10]; int achievement[3]; float average; }stu[5];//定义结构体数组 void build(void){//输入结构体数据函数 int i; for(i=0;i<5;i++){ printf("请输入第%d学生的号码:",i+1); fflush(stdin); scanf("%d",&stu[i].num); printf("请输入学生姓名:"); fflush(stdin); scanf("%s",stu[i].name); printf("请输入语文成绩:"); fflush(stdin); scanf("%d",&stu[i].achievement[0]); printf("请输入数学成绩:"); fflush(stdin); scanf("%d",&stu[i].achievement[1]); printf("请输入英语成绩:"); fflush(stdin); scanf("%d",&stu[i].achievement[2]); stu[i].average=((float)stu[i].achievement[0]+(float)stu[i].achievement[1]+(float)stu[i].achievement[2])/3; }//计算平均分 return;} void print(void){//输出函数 int i; printf("=================学生信息====================\n"); printf("学号\t姓名\t语文\t数学\t英语\t平均分\n"); for(i=0;i<5;i++) printf("%88s%8%8d%8d%8f\n",stu[i].num,stu[i].name,stu[i].achievement[0],stu[i].achievement[1],stu[i].achievement[2]); return;} void disk(void){//储存函数 int i; FILE *fp; if((fp=fopen("F:\\vc\\lianxi.txt","w"))==NULL){ printf("文件建立失败");getch();return ;}//判断是否打开文件 for(i=0;i<5;i++) fscanf(fp,"%d,%s,%d,%d,%d,%f\n",&stu[i].num,stu[i].name,&stu[i].achievement[0],&stu[i].achievement[1],&stu[i].achievement[2],&stu[i].average);//件结构体写入磁盘 fclose(fp); return; } void main(void){//主函数 build(); print(); disk(); return;}这个代码所要实现的目的就是输入5个学生的信息,然后显示到屏幕上,在存入一个原来没有需要系统建立的txt文档,但是在编译后的运行.exe文件时出现了问题,找不到原因,求大家帮忙,
这是出错时的截图
其实第一次运行没有这样的情况,但是建立的txt文件时空的,我就在运行了一遍,就出现了这种情况