用C++的include<stdio.h>、printf和scanf来编写读取输入的英文字母并分别输出各个字母及其个数
时间: 2024-03-24 17:36:39 浏览: 73
好的,我可以帮你写一个简单的程序,请看以下代码:
```c++
#include <stdio.h>
int main()
{
char ch;
int count[26] = {0};
printf("请输入一段英文文本:\n");
while (scanf("%c", &ch) != EOF) {
if (ch >= 'a' && ch <= 'z') {
count[ch - 'a']++;
} else if (ch >= 'A' && ch <= 'Z') {
count[ch - 'A']++;
}
}
for (int i = 0; i < 26; i++) {
if (count[i] > 0) {
printf("%c: %d\n", i + 'a', count[i]);
}
}
return 0;
}
```
这个程序中,我们首先声明了一个字符变量 `ch`,用于读取输入的每一个字符。然后我们定义了一个大小为 26 的整型数组 `count`,用于存储每一个字母出现的次数。数组的下标代表字母在字母表中的顺序,例如 `count[0]` 存储的是字母 a 出现的次数,`count[1]` 存储的是字母 b 出现的次数,以此类推。
在程序的主循环中,我们使用 `scanf` 函数读取输入的每一个字符,如果这个字符是小写字母,则在 `count` 数组中对应的元素加 1;如果这个字符是大写字母,则也在 `count` 数组中对应的元素加 1。
最后,我们遍历整个 `count` 数组,如果某一个元素的值大于 0,则输出该元素对应的字母和它出现的次数。
希望这个程序可以帮到你!
阅读全文