fwrite和fscanf怎么用,怎么把学生成绩信息保存到文件,此外,怎么把文件中的成绩信息输出到
fwrite和fscanf怎么用,怎么把学生成绩信息保存到文件,此外,怎么把文件中的成绩信息输出到相应结构体保存,并和结构体相应元素相对应...
fwrite和fscanf怎么用,怎么把学生成绩信息保存到文件,此外,怎么把文件中的成绩信息输出到相应结构体保存,并和结构体相应元素相对应
展开
展开全部
#include<stdio.h>
#include<string.h>
struct Student
{
char name[20];
char ID[20];
double score[3];
};
int main()
{
Student stud1[10];//用于向文件写入
Student stud2[10];//用于读取文件
FILE *fp1;
FILE *fp2;
int i;
printf("接下来你要输入3个学生的信息,请按照提示输入:\n");
for(i=0;i<3;i++)
{
printf("请输入第%d个学生的姓名:",i+1);
gets(stud1[i].name);
printf("请输入第%d个学生的学号:",i+1);
gets(stud1[i].ID);
printf("请输入第%d个学生的语文、数学、英语成绩:",i+1);
scanf("%lf %lf %lf",&stud1[i].score[0],&stud1[i].score[1],&stud1[i].score[2]);
getchar();
}
if((fp1=fopen("data1.dat","w"))==NULL)
{
printf("不能打开文件!!!\n");
return 1;
}
for(i=0;i<3;i++)
{
fwrite(&stud1[i],sizeof(stud1[i]),1,fp1);//写入文件
}
fclose(fp1);
if((fp2=fopen("data1.dat","r"))==NULL)
{
printf("不能打开文件!!!\n");
return 1;
}
for(i=0;i<3;i++)
{
fread(&stud2[i],sizeof(stud2[i]),1,fp2);//读取文件
}
fclose(fp2);
for(i=0;i<3;i++)//////输出
{
printf("第%d个学生信息如下:\n",i+1);
printf("姓名:\t%s\n",stud2[i].name);
printf("学号:\t%s\n",stud2[i].ID);
printf("语文:\t%lf\n",stud2[i].score[0]);
printf("数学:\t%lf\n",stud2[i].score[1]);
printf("英语:\t%lf\n",stud2[i].score[2]);
}
return 0;
}
更多追问追答
追问
fscanf怎么用
为什么我用fscanf函数无法正常把文件中的信息显示在VC运行界面上,求指教
ZESTRON
2024-09-04 广告
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸...
点击进入详情页
本回答由ZESTRON提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询