《C语言及程序设计》实践参考——小玩文件

    xiaoxiao2025-12-03  23

    返回:贺老师课程教学链接

    【项目1 - 小玩文件】 1、下面程序的功能是统计文本文件abc.txt中的字符个数,请填空将程序补充完整。

    #include <stdio.h> #include <stdlib.h> int main() { FILE *fp; if((fp=fopen("abc.txt",_______))==NULL) //(1) { printf("open error!\n"); exit(1); } int i=0; while(________) // (2) { fgetc(fp); _________; // (3) } printf("Character: %d\n", i); fclose(________);// (4) return 0; }

    [参考解答] (1) “r” (2) !feof(fp) (3) i++ (4) fp

    2、用键盘输入文件名,统计输出文件中每个字母、数字字符出现的次数; [参考解答]

    #include <stdio.h> #include <stdlib.h> int main() { FILE *fp; char filename[30]; printf("请输入文件名:"); scanf("%s", filename); if((fp=fopen(filename,"r"))==NULL) { printf("open error!\n"); exit(1); } int num[10]= {0}; //各数字字符出现的次数,num[0]代表'0'出现的个数……,初值全为0 int low[26]= {0}; //各小写字母出现的次数,low[0]代表'a'出现的个数……,初值全为0 int upper[26]= {0}; //各大写字母出现的次数,upper[0]代表'A'出现的个数……,初值全为0 int i=0; char ch; while(!feof(fp)) { ch=fgetc(fp); if(ch>='0'&&ch<='9') num[ch-'0']++; //若ch为'0',num[0]将增加;也可以写作num[ch-48]++ else if (ch>='a'&&ch<='z') low[ch-'a']++; //若ch为'a',low[0]将增加…… else if (ch>='A'&&ch<='Z') upper[ch-'A']++; //若ch为'A',upper[0]将增加…… } fclose(fp); printf("文件中各个数字字符出现的次数是: \n"); for(i=0; i<10; ++i) printf("\'%d\'---%d\n", i, num[i]); printf("文件中各个小写字母出现的次数是: \n"); for(i=0; i<26; ++i) printf("\'%c\'---%d\n", i+'a', low[i]); printf("文件中各个大写字母出现的次数是: \n"); for(i=0; i<26; ++i) printf("\'%c\'---%d\n", i+'A', upper[i]); return 0; } 相关资源:七夕情人节表白HTML源码(两款)
    最新回复(0)