c语言写出如何计算各个字母出现次数
时间: 2024-10-15 21:15:32 浏览: 24
统计字母出现次数.zip(C语言练习例程)
在 C 语言中,你可以使用一个字符数组以及对应的计数数组来统计字符串中每个字母出现的次数。这里是一个简单的示例,我们将只考虑小写字母,因为大写字母会被当作不同的字符处理。注意,这个程序不区分输入字符串中的空格和其他非字母字符。
```c
#include <stdio.h>
#include <ctype.h>
#define MAX_CHAR 26
// 字符计数数组
int letterCount[MAX_CHAR] = {0};
void countLetters(char* str) {
while (*str != '\0') {
if (isalpha(*str)) {
// 转换为小写字母并减去'a'的ASCII值得到索引
int index = tolower(*str) - 'a';
letterCount[index]++;
}
str++;
}
}
int main() {
char input[100];
printf("Enter a string: ");
fgets(input, sizeof(input), stdin); // 防止读取超过数组长度
input[strcspn(input, "\n")] = '\0'; // 移除fgets结束后的换行符
countLetters(input);
for (int i = 0; i < MAX_CHAR; i++) {
if (letterCount[i] > 0) {
printf("'%c': %d\n", 'a' + i, letterCount[i]);
} else {
printf("'%c': 0\n", 'a' + i);
}
}
return 0;
}
阅读全文