C语言单链表统计英文语句中每个字母1出现的频度
时间: 2023-12-20 18:04:05 浏览: 58
用链表计算单个词出现次数
4星 · 用户满意度95%
好的,让我来帮你解答这个问题。
首先,我们需要遍历输入的英文语句,统计每个字母出现的频度。可以使用一个长度为 26 的数组来存储每个字母出现的次数。假设输入字符串为 str。
```
int freq[26] = {0};
for (int i = 0; i < strlen(str); i++) {
if (isalpha(str[i])) {
freq[tolower(str[i]) - 'a']++;
}
}
```
上述代码中,`tolower()` 函数将大写字母转换为小写字母,并通过将字符减去 'a' 的 ASCII 码值得到字母在频度数组 `freq` 中的下标。
接下来,我们可以打印出每个字母的频度。
```
for (int i = 0; i < 26; i++) {
printf("%c : %d\n", 'a' + i, freq[i]);
}
```
这样就可以得到每个字母出现的频度了。
注意:这个方法只能统计英文语句中的字母频度,不能统计数字、标点符号等其他字符出现的频度。
阅读全文