写一段C语言代码实现统计文本字符的频率
时间: 2024-02-15 22:31:57 浏览: 77
C语言实现英文文本词频统计
好的,以下是一段统计文本字符频率的 C 语言代码:
```c
#include <stdio.h>
#include <ctype.h>
#define MAXCHAR 256
int main() {
int c, i;
int freq[MAXCHAR] = {0};
printf("Enter text. Press Ctrl+D to quit.\n");
while ((c = getchar()) != EOF) {
if (isalpha(c)) {
c = tolower(c);
++freq[c];
}
}
for (i = 0; i < MAXCHAR; ++i) {
if (freq[i] > 0) {
printf("%c: %d\n", i, freq[i]);
}
}
return 0;
}
```
这段代码中,我们首先定义了一个常量 `MAXCHAR`,它表示 ASCII 码表中能够表示的字符的数量。然后我们定义了一个数组 `freq`,用来记录每个字符出现的次数。
在 `main()` 函数中,我们首先读取用户输入的文本字符,如果它是字母则将其转换为小写字母,并在 `freq` 数组中记录它出现的次数。
最后,我们遍历一遍 `freq` 数组,输出所有出现次数大于 0 的字符以及它们的出现频率。
希望这个答案能够帮到你!
阅读全文