统计文件中的字符的算法:
以读的形式打开一个文本D:\\1.txt——使用fgetc遍历文本——遍历时对文本中的不同的字符以不同的变量统计——得到统计的结果
程序代码:
#include <stdio.h>
#include <stdlib.h>
void main()
{
FILE *fp;
int count_big = 0;//统计大写字符
int count_small = 0;//统计小写字符
int count_num = 0;//统计数字
int count_character = 0;//统计符号
fp = fopen("D:\\1.txt","r");
if(NULL == fp)
{
printf("文件打开失败!\n");
}
else
{
printf("文件打开成功!\n");
char ch;
int count = 0;//记录文件中的字符数
while(!feof(fp))
{
ch = fgetc(fp);//得到文件中的字符
if(ch>='A' && ch<='Z')//统计大写字母
{
count_big++;
}
else if(ch>='a' && ch<='z')//统计小写字母
{
count_small++;
}
else if(ch>='0' && ch<='9')//统计数字
{
count_num++;
}
//符号
else if((ch>='!' && ch<='/') || (ch>=':' && ch<=96) || (ch>='{' && ch<='~'))
{
count_character++;
}
}
printf("D:\\1.txt中有%d个大写字母\n",count_big);
printf("D:\\1.txt中有%d个小写字母\n",count_small);
printf("D:\\1.txt中有%d个数字\n",count_num);
printf("D:\\1.txt中有%d个符号\n",count_character);
fclose(fp);
}
system("pause");
}
D:\\1.txt中的内容
执行结果: