注册 登录
编程论坛 C语言论坛

将从一个文件中读入的数据直接写入另一个文件

Buddhawly 发布于 2019-10-15 20:39, 3291 次点击
只有本站会员才能查看附件,请 登录
图中的第二小问,求问!!!!!
9 回复
#2
Buddhawly2019-10-15 20:41
#include <stdio.h>
#include<stdlib.h>
int main()
{
    FILE* fp;
    int a;
    int M, E, C;
    float AVG;
    a = 1001;
    M = 90;
    E = 80;
    C = 70;
    fp = fopen("score.txt", "r");
    FILE* fp2;
    AVG = (C + M + E) / 3;
    fp2 = fopen("score_avg.txt", "w+");
    fprintf(fp2, "学号:%d高数成绩:%d 英语成绩:%d C语言成绩:%d 平均分:%d\n",a,M,E,C);
    return 0;
}
运行出来就是平均分不对,其他没什么问题,不知道代码有没有什么错误,ball ball大佬们!!!感谢
#3
吹水佬2019-10-15 21:33
fprintf(fp2, "学号:%d高数成绩:%d 英语成绩:%d C语言成绩:%d 平均分:%f\n",a,M,E,C,AVG);
#4
Buddhawly2019-10-16 16:37
回复 3楼 吹水佬
我改成这样了,但是调试的时候又显示我C和AVG是未声明的标识符
只有本站会员才能查看附件,请 登录
#5
rjsp2019-10-16 16:42
这就是为什么大家讨厌“贴图”的原因了,没法区分英文符号,还是全角中文符号。
尤其是遇到全角中文空格,那眼神再好都没法从图片上看出错误。
#6
Buddhawly2019-10-16 17:28
回复 4楼 Buddhawly
#include <stdio.h>
#include<stdlib.h>
int main()
{
    FILE* fp;
    int a;
    int M, E, C;
    float AVG;
    a = 1001;
    M = 90;
    E = 80;
    C = 70;
    fp = fopen("score.txt", "r");
    FILE* fp2;
    AVG = (C + M + E) / 3;
    fp2 = fopen("score_avg.txt", "w+");
    fprintf(fp2, "学号:%d高数成绩:%d 英语成绩:%d C语言成绩:%d 平均分:%f\n",a,M,E,C,AVG);
    return 0;
}
这样可以吗?
#7
Buddhawly2019-10-16 17:29
回复 6楼 Buddhawly
显示C和AVG为未声明的标识符
#8
纯蓝之刃2019-10-16 19:18
fprintf(fp2, "学号:%d高数成绩:%d 英语成绩:%d C语言成绩:%d 平均分:%f\n",a,M,E,CAVG);
这个逗号错了,你的这个是中文的全角逗号,要用英文的半角逗号。像这个样子:
fprintf(fp2, "学号:%d高数成绩:%d 英语成绩:%d C语言成绩:%d 平均分:%f\n",a,M,E,C,]AVG);
#9
Buddhawly2019-10-16 19:42
回复 7楼 Buddhawly
谢谢,太感谢了!!!!
#10
bcbbcclbbc2019-10-17 01:39
我个人觉得你这个程序不符合题意,从文件中读取数据(打开文件,读取数据,关闭文件)计算并写入数据。
1