C语言初学者不明白的文件问题

/*有5个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号、姓名、三门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件stud中。*/#i... /*有5 个学生,每个学生有3 门课的成绩,从键盘输入以上数据(包括学生号、姓名、三
门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件stud 中。*/
#include<stdio.h>
struct student
{
char num[10];
char name[8];
int score[3];
float ave;
}stu[5];
main()
{
int i,j,sum;
FILE *fp;
for(i=0;i<5;i++)
{
printf("\n input score of student%d:\n",i+1);
printf("NO.:");
scanf("%s",stu[i].num);
printf("name:");
scanf("%s",stu[i].name);
sum=0;
for(j=0;j<3;j++)
{
printf("score %d :",j+1);
scanf("%d",&stu[i].score[j]);
sum+=stu[i].score[j];
}
stu[i].ave=sum/3.0;
}
fp=fopen("stud","w");
for(i=0;i<5;i++)
if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)
printf("File write error\n");
fclose(fp);
fp=fopen("stud","r");
for(i=0;i<5;i++)
{
fread(&stu[i],sizeof(struct student),1,fp);
printf("\n%s,%s,%d,%d,%d,%6.2f\n",stu[i].num,stu[i].name,stu[i].score[0], stu[i].score[1],
stu[i].score[2] ,stu[i].ave);
}
fclose(fp);
}

这些打开的文件,我的电脑没有啊
为什么程序依然正常运行还得出了结果
能解释一下吗?
谢谢啦
展开
 我来答
百度网友52aeb54
2010-05-04 · TA获得超过2996个赞
知道小有建树答主
回答量:1261
采纳率:0%
帮助的人:1166万
展开全部
#include"stdafx.h"
#include<stdio.h>
struct student
{
char num[10];
char name[8];
int score[3];
float ave;
}stu[5];
main()
{
int i,j,sum;
FILE *fp;
for(i=0;i<5;i++)
{
printf("\n input score of student%d:\n",i+1);
printf("NO.:");
scanf("%s",stu[i].num);
printf("name:");
scanf("%s",stu[i].name);
sum=0;
for(j=0;j<3;j++)
{
printf("score %d :",j+1);
scanf("%d",&stu[i].score[j]);
sum+=stu[i].score[j];
}
stu[i].ave=sum/3.0;
}
fp=fopen("stud.txt","w");
for(i=0;i<5;i++)
if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)
printf("File write error\n");
fclose(fp);
fp=fopen("stud.txt","r");
for(i=0;i<5;i++)
{
fread(&stu[i],sizeof(struct student),1,fp);
printf("\n%s,%s,%d,%d,%d,%6.2f\n",stu[i].num,stu[i].name,stu[i].score[0], stu[i].score[1],
stu[i].score[2] ,stu[i].ave);
}
fclose(fp);
}

这样就有了、
文件要有后缀名
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Love_Ys
2010-05-04 · TA获得超过687个赞
知道小有建树答主
回答量:240
采纳率:0%
帮助的人:0
展开全部
fp=fopen("stud","w");
参数w是如果文件不存在则创建文件,所以你没有文件也能打开
fp=fopen("stud","r");
参数r才是文件必须存在的前提下才可以打开.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式