从文件读取包含数字和字母字符串,统计每个字符出现的次数,将次数输出到另外一个文件

Posted cpsmile

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从文件读取包含数字和字母字符串,统计每个字符出现的次数,将次数输出到另外一个文件相关的知识,希望对你有一定的参考价值。

 1 //2016年重大考研机试题目
 2 //从文件读取包含数字和字母字符串,统计每个字符出现的次数
 3 //输出格式,字符:次数并输出到另外一个文件
 4 //需要在D盘下新建文件text.in
 5 #include<stdio.h>
 6 #include<stdlib.h>
 7 #include<string.h>
 8 
 9 int main()
10 {
11     FILE *fp_read, *fp_write;//读写文件指针
12     int count[36]; //存储26个字母和10个数字
13     char ch;
14     int index;
15 
16     memset(count, 0, sizeof(count));//初始化数组count
17 
18     fopen_s(&fp_read, "D:\\text.in", "r");//打开输入文件
19     fopen_s(&fp_write, "D:\\text.out", "w");//打开写入文件
20 
21     if(NULL == fp_read)
22         fprintf(fp_write, "Csn‘t open the input file!\n");
23 
24     while(!feof(fp_read))
25     {
26         ch = fgetc(fp_read);
27         if(ch >= a && ch <= z)//记录小写字母的次数
28             count[ch - a]++;
29 
30         else if(ch >= A && ch <= Z)//记录大写字母的次数
31             count[ch - A]++;
32 
33         else if(ch >= 0 && ch <= 9)//记录数字的次数
34             count[ch - 0 + 26]++; 
35     }
36 
37     //输出字母到文件
38     for(index = 0; index < 26; index++)
39         if(count[index] != 0)
40             fprintf(fp_write, "%c: \t %d\n", index+97, count[index]);//根据字符的ASCII码
41     //输出数字到文件
42     for(index = 26; index < 36; index++)
43         if(count[index] != 0)
44             fprintf(fp_write, "%c: \t %d\n", index+22, count[index]);
45 
46     fclose(fp_read);
47     fclose(fp_write);
48 
49     system("pause");
50     return 0;
51 }

 

以上是关于从文件读取包含数字和字母字符串,统计每个字符出现的次数,将次数输出到另外一个文件的主要内容,如果未能解决你的问题,请参考以下文章

c语言:文件操作与字符处理

c语言编程。从标准输入设备上输入一个字符串,分别统计其中每个数字,空格,字母及其他字符出现的次数。

某字符串可能包含26个英文字母,可能包含6种符号,可能包含3个数字,统计他们出现的个数

Python中如何从键盘中输入字符串,统计字母,数字,符号和空格的个数?

程序一 用记事本建立文件src.dat,其中存放若干字符。编写程序,从文件src.dat中读取数据,统计其中的大写字母小写字母数字其它字符的个数,并将这些数据写入到文件test.dat中。

统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数,其他字符出现的次数。