C语言 从该文件读取数据,计算平均成绩、最高分和最低分,并将结果输出到文件
文本文件score.txt中保存有一组学生的成绩(为整数),成绩之间用空格分割,成绩个数未知;要求从该文件读取数据,计算平均成绩、最高分和最低分,并将结果输出到文件result.txt中,其中平均分保留两位小数。【输入形式】
【输出形式】
【样例输入】假设score.txt中的数据为:90 80 70 60
【样例输出】result.txt中的数据为:75.00 90 60
麻烦大神们帮我改一下这个程序 谢谢谢谢 总是测试的数据不对
程序代码:
#include<stdio.h> #include<stdlib.h> int main() { FILE *fp1,*fp2; int max=0,min=100,score,n=0; double avg=0; if ((fp1=fopen("score.txt","r"))==NULL) { printf("File open error!\n"); exit(0); } fp2=fopen("result.txt","w"); while(fscanf(fp1,"%d",&score)!=EOF) { fscanf(fp1,"%d",&score); if(max<score) max=score; if(min>score) min=score; avg+=score; n++; } avg=avg/n; fprintf(fp2,"%.2f %d %d",avg,max,min); if(fclose(fp1)){ printf("Cannot close this file!\n"); exit(0); } if(fclose(fp2)){ printf("Cannot close this file!"); exit(0); } return 0; }