用c语言输入一串字符(总长不超过100,以0结尾),统计每个字符出现的次数(按字符大小输出)
时间: 2024-10-20 19:05:18 浏览: 20
C语言字符串练习(习题+答案).zip
在C语言中,你可以使用数组和循环结构来实现这个功能。这里是一个简单的示例程序:
```c
#include <stdio.h>
#define MAX_CHAR 100
// 定义字符计数数组,长度根据需求设置
char count[MAX_CHAR] = {0};
int main() {
char input[MAX_CHAR];
int i;
printf("请输入一串字符(以0结尾),最多100个字符:");
fgets(input, sizeof(input), stdin); // 读取用户输入,包括换行符
input[strcspn(input, "\n")] = '\0'; // 移除fgets带来的换行符
for (i = 0; input[i] != 0 && i < MAX_CHAR - 1; i++) { // 遍历输入字符串
if (input[i] >= 'a' && input[i] <= 'z') // 如果是小写字母
count[input[i] - 'a']++; // 提高计数
else if (input[i] >= 'A' && input[i] <= 'Z') // 如果是大写字母
count[input[i] - 'A']++; // 提高计数
}
// 按字母顺序输出结果
for (i = 0; i < 26; i++) {
if (count[i] > 0)
printf("%c 出现了 %d 次\n", 'a' + i, count[i]);
}
return 0;
}
```
在这个程序中,我们首先创建了一个`count`数组来存储每个字符的计数。然后通过`fgets`函数从用户那里获取输入,并移除换行符。接着遍历输入字符串,根据字符的ASCII值增加对应的计数。最后,按照字母顺序打印出每个字符及其出现次数。
阅读全文