统计文本文件中各类字符个数:分别统计一个文本文件中字母、数字及其它字符的个数。用c语言试编写相应程序。
时间: 2024-03-09 21:48:42 浏览: 206
好的,以下是一个简单的 C 语言程序,可以统计文本文件中各类字符的个数:
```c
#include <stdio.h>
int main() {
FILE *fp;
char c;
int letters = 0, digits = 0, others = 0;
fp = fopen("test.txt", "r"); // 打开文本文件
if (fp == NULL) {
printf("Failed to open file.\n");
return 1;
}
while ((c = fgetc(fp)) != EOF) { // 逐个读取字符
if (c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z') {
letters++;
} else if (c >= '0' && c <= '9') {
digits++;
} else {
others++;
}
}
printf("Letters: %d\n", letters);
printf("Digits: %d\n", digits);
printf("Others: %d\n", others);
fclose(fp); // 关闭文件
return 0;
}
```
其中,`fopen()` 函数用于打开文本文件,`fgetc()` 函数用于逐个读取字符,`fclose()` 函数用于关闭文件。读取的字符逐个进行判断,如果是字母则 `letters` 计数器加 1,如果是数字则 `digits` 计数器加 1,否则 `others` 计数器加 1。最后输出各类字符的个数。
注意:这个程序只能统计 ASCII 码字符,如果文本文件中包含非 ASCII 字符,则无法正确统计。
阅读全文