C语言从键盘输入1行字符串(每行最多输入80个字符), 统计字符串中所包含的各个英文小写字符及其对应的数量。 **输入格式要求:不要有任何提示信息,直接输入1行字符。 **输出格式要求:按字母顺序输出统计结果,"%c=%d\n" 每行输出一个字母的统计信息。 如果某个字母没有出现,则不输出该字母的统计信息。
时间: 2024-03-23 14:39:07 浏览: 15
好的,我可以帮你解决这个问题。
你可以参考以下代码:
```c
#include <stdio.h>
int main() {
char str[81];
int count[26] = {0}; // 用于统计每个字母出现的次数
// 从键盘输入字符串
scanf("%s", str);
// 遍历字符串,统计每个字母出现的次数
for (int i = 0; str[i] != '\0'; i++) {
if (str[i] >= 'a' && str[i] <= 'z') {
count[str[i] - 'a']++;
}
}
// 按字母顺序输出统计结果
for (char ch = 'a'; ch <= 'z'; ch++) {
if (count[ch - 'a'] > 0) {
printf("%c=%d\n", ch, count[ch - 'a']);
}
}
return 0;
}
```
这个程序中,我们首先定义了一个长度为 81 的字符数组 `str`,用于存储输入的字符串。我们还定义了一个长度为 26 的整型数组 `count`,用于统计每个字母出现的次数。
接着,我们使用 `scanf` 函数从键盘输入字符串,并使用一个 for 循环遍历字符串中的每个字符。如果字符是小写字母,则将对应的计数器加 1。
最后,我们再次使用一个 for 循环,按字母顺序输出每个字母的统计信息。如果某个字母没有出现,则不输出该字母的统计信息。
希望这个程序能够帮助到你!