问题。我写了数据存放到文本,保存后。再次增加数据进去就出现问题。
1.一开始存入两个学生数据。没出错
2.当我再往里面添加1个学生信息
3.我次运行程序都会先刷新一下,增加数据都会保存。
void shuaxin() //刷新学生信息函数
{
FILE *fp;
int i=0; //记录学生人数
if((fp=fopen("student.txt","r"))==NULL)
{
printf("文件刷新失败\n");
exit(0);
}
while(fscanf(fp,"%s %s %s%f%f%f%f",stu[i].num,stu[i].name,stu[i].time,&stu[i].score[0],&stu[i].score[1],
&stu[i].score[2],&stu[i].sum)==7)
i++;
fclose(fp);
n=i; //n是学生总人数
printf("………………………………………%d位学生信息刷新录入完毕………………………………\n",n);
system("pause");
}
void baocun() //保存学生信息函数
{
FILE *fp;
int i=0; //录入学生人数
if((fp=fopen("student.txt","w"))==NULL)
{
printf("文件保存失败\n");
exit(0);
}
for(i=0;i<n;i++)
{
fprintf(fp,"%s %s %s %.2f %.2f %.2f %.2f",stu[i].num,stu[i].name,stu[i].time,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].sum);
fputs("\n",fp);
}
fclose(fp);
printf("………………………………一共有%d个学生信息已经保存……………………\n",n);
}
出题出现在哪里?
C语言文件一小问!求大神
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 鸿羽_HongYu 2015-04-19 13:09关注
你重发一下代码,用选项里的“插入代码片”括起来,这样代码看不到,就是这个图标:“</>”
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 MATLAB怎么通过柱坐标变换画开口是圆形的旋转抛物面?
- ¥15 寻一个支付宝扫码远程授权登录的软件助手app
- ¥15 解riccati方程组
- ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
- ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
- ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
- ¥50 树莓派安卓APK系统签名
- ¥65 汇编语言除法溢出问题
- ¥15 Visual Studio问题
- ¥20 求一个html代码,有偿