请编写C语言程序,分别统计两个txt文件中文字符和英文字符的数量
时间: 2023-06-05 07:07:35 浏览: 132
好的,下面是C语言代码:
```c
#include <stdio.h>
#include <ctype.h>
int main()
{
FILE *fp1, *fp2;
char filename1[50], filename2[50], ch;
int count_en1 = 0, count_cn1 = 0, count_en2 = 0, count_cn2 = 0;
printf("请输入第一个txt文件名:");
scanf("%s", filename1);
printf("请输入第二个txt文件名:");
scanf("%s", filename2);
fp1 = fopen(filename1, "r");
if (fp1 == NULL)
{
printf("无法打开文件 %s\n", filename1);
return 0;
}
fp2 = fopen(filename2, "r");
if (fp2 == NULL)
{
printf("无法打开文件 %s\n", filename2);
return 0;
}
while ((ch = fgetc(fp1)) != EOF)
{
if (isalpha(ch))
count_en1++;
else if (ch >= 0x4e00 && ch <= 0x9fff)
count_cn1++;
}
fclose(fp1);
while ((ch = fgetc(fp2)) != EOF)
{
if (isalpha(ch))
count_en2++;
else if (ch >= 0x4e00 && ch <= 0x9fff)
count_cn2++;
}
fclose(fp2);
printf("文件 %s 中英文字符数分别为:%d %d\n", filename1, count_en1, count_cn1);
printf("文件 %s 中英文字符数分别为:%d %d\n", filename2, count_en2, count_cn2);
return 0;
}
```
注意:如果txt文件中包含了其他字符(比如数字、标点符号等),也会被当作英文字符统计。
阅读全文