1、文件“stu_info1.txt”包含学生的基本信息(姓名、学号、籍贯三项),现在需
要从该文件中读出信息,并依次为每位学生输入三门课程成绩,计算平均成绩,再将学生
完整信息(姓名、学号、籍贯、课程1、课程2、课程3、平均分)
写入文件“stu_info2.txt”
并保存于磁盘上。
c语言读出一个文档信息,输入其他信息,存入另一个文档
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- qfl_sdu 2021-06-08 19:25关注
stu_info1.txt文件的格式是什么样的?
代码如下,如有帮助,帮忙采纳一下,谢谢。
#include <stdio.h> #define MAXNMB 200 struct Student { char name[20]; //姓名 int id; //学号 char jg[100]; //籍贯 float score[3];//成绩 float avg; //平均成绩 }; int main() { FILE* fp; char buf[200] ={0}; Student st[MAXNMB]; int i,nmb = 0; //实际人数 if (!(fp = fopen("stu_info1.txt","r"))) { printf("文件打开失败\n"); return 0; } while(!feof(fp)) { fscanf(fp,"%s\t%d\t%s",st[nmb].name,&st[nmb].id,st[nmb].jg); nmb++; } fclose(fp); if (!(fp = fopen("stu_info2.txt","w"))) { printf("文件打开失败\n"); return 0; } //录入成绩 printf("请为每位学生输入3门课程的成绩\n"); for (i = 0;i < nmb;i++) { printf("%s的成绩:",st[i].name); scanf("%f %f %f",&st[i].score[0],&st[i].score[1],&st[i].score[2]); st[i].avg = (st[i].score[0]+st[i].score[1]+st[i].score[2])/3; fprintf(fp,"%s\t%d\t%s\t%f\t%f\t%f\t%f\n",st[i].name,st[i].id,st[i].jg,st[i].score[0],st[i].score[1],st[i].score[2],st[i].avg); } fclose(fp); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 9无用 2
悬赏问题
- ¥50 求解vmware的网络模式问题
- ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳
- ¥15 springboot 3.0 实现Security 6.x版本集成
- ¥15 PHP-8.1 镜像无法用dockerfile里的CMD命令启动 只能进入容器启动,如何解决?(操作系统-ubuntu)
- ¥30 请帮我解决一下下面六个代码
- ¥15 关于资源监视工具的e-care有知道的嘛
- ¥35 MIMO天线稀疏阵列排布问题
- ¥60 用visual studio编写程序,利用间接平差求解水准网
- ¥15 Llama如何调用shell或者Python
- ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?