1.任务和代码
(1)
/* copyright\c)2017,csdn学院 *All cights reserved *文件名称:a.c *作者:王琦 *完成日期:2017年5月6日 *版本号:6.0 *问题描述:统计一个文本文件中数字、空格、字母出现的次数,以及文件的字节数,并将结果输出,文本文件名在程序中输入 *程序输出:文本文件中数字、空格、字母出现的次数 */ #include <stdio.h> #include<stdlib.h> int main( ) { int score; int excelent=0, fail=0,count=0; double sum=0,ave; FILE *fp; fp=fopen("english .dat","r"); if(fp==NULL) { printf("open error!\n"); exit(1); } while(fscanf(fp,"%d",&score)!=EOF) { count++; sum+=score; if(score>=90) excelent++; else if(score<60) fail++; } fclose(fp); ave=sum/count; printf("总人数为:%d\n", count); printf("平均成绩为:%.2f\n", ave); printf("优秀人数:%d\n", excelent); printf("不及格人数:%d\n", fail); }(2) /* copyright\c)2017,csdn学院 *All cights reserved *文件名称:a.c *作者:王琦 *完成日期:2017年5月6日 *版本号:6.0 *问题描述:统计一个文本文件中数字、空格、字母出现的次数,以及文件的字节数,并将结果输出,文本文件名在程序中输入 *程序输出:文本文件中数字、空格、字母出现的次数 */ #include <stdio.h> #include<stdlib.h> int main( ) { int score; int excelent=0, fail=0,count=0; double sum=0,ave; FILE *fp; fp=fopen("english .dat","r"); if(fp==NULL) { printf("open error!\n"); exit(1); } while(fscanf(fp,"%d",&score)!=EOF) { count++; sum+=score; if(score>=90) excelent++; else if(score<60) fail++; } fclose(fp); ave=sum/count; printf("总人数为:%d\n", count); printf("平均成绩为:%.2f\n", ave); printf("优秀人数:%d\n", excelent); printf("不及格人数:%d\n", fail); fp=fopen("statictic.dat","w"); fprintf(fp, "总人数为:%d\n", count); fprintf(fp, "平均成绩为:%.2f\n", ave); fprintf(fp, "优秀人数:%d\n", excelent); fprintf(fp, "不及格人数:%d\n", fail); }(3) /* copyright\c)2017,csdn学院 *All cights reserved *文件名称:a.c *作者:王琦 *完成日期:2017年5月6日 *版本号:6.0 *问题描述:统计一个文本文件中数字、空格、字母出现的次数,以及文件的字节数,并将结果输出,文本文件名在程序中输入 *程序输出:文本文件中数字、空格、字母出现的次数 */ #include <stdio.h> #include<stdlib.h> int main( ) { int score; int excelent=0, fail=0,count=0,medium=0,passing=0,good=0,i,l,max; double sum=0,ave; FILE *fp; fp=fopen("english .dat","r"); if(fp==NULL) { printf("open error!\n"); exit(1); } while(fscanf(fp,"%d",&score)!=EOF) { count++; sum+=score; if(score>=90) excelent++; else if(score>=80) good++; else if(score>=70) medium++; else if(score>=60) passing++; else fail++; } fclose(fp); ave=sum/count; printf("平均成绩为:%.2f\n", ave); max=excelent; if(max<good) max=good; if(max<medium) max=medium; if(max<passing) max=passing; if(max<fail) max=fail; printf("优秀 "); l=((double)excelent)/max*50; for(i=0; i<l; ++i) printf("#"); printf(" %d\n", excelent); printf("良好 "); l=((double)good)/max*50; for(i=0; i<l; ++i) printf("#"); printf(" %d\n", good); printf("中等 "); l=((double)medium)/max*50; for(i=0; i<l; ++i) printf("#"); printf(" %d\n", medium); printf("及格 "); l=((double)passing)/max*50; for(i=0; i<l; ++i) printf("#"); printf(" %d\n", passing); printf("挂科 "); l=((double)fail)/max*50; for(i=0; i<l; ++i) printf("#"); printf(" %d\n", fail); }2.运行结果
(1)
(2)
(3)
3.知识点总结
(1)先建立文件,然后对文件中的数据进行处理
(2)运用fprintf将处理的数据写入另一个文件夹
(3)运用循环和嵌套对数据进行处理
4.心得体会
在不断地练习中逐渐掌握学到的东西