从键盘输入一行只有小写英文字母的字符串,用回车结束输入。统计26个英文字母出现的次数并依次输出。字符串长度不超过100个字符。
时间: 2024-06-17 15:02:42 浏览: 123
统计一篇txt文档(英文)中各英文字母出现的次数及概率
5星 · 资源好评率100%
您好!针对您的问题,以下是解决方案:
1. 首先,我们需要从键盘输入一行只有小写英文字母的字符串,可以使用C++的标准输入流std::cin来实现。代码如下:
```
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str;
getline(cin, str); // 从键盘输入一行字符串,存储到str中
...
return 0;
}
```
2. 统计26个英文字母出现的次数。我们可以定义一个大小为26的数组来存储每个字母出现的次数,然后遍历字符串,统计每个字母出现的次数。代码如下:
```
int count[26] = {0}; // 定义一个大小为26的数组,用来存储每个字母出现的次数
for (int i = 0; i < str.length(); i++)
{
if (str[i] >= 'a' && str[i] <= 'z') // 判断是否为小写字母
{
count[str[i] - 'a']++; // 统计字母出现的次数
}
}
```
3. 输出每个字母出现的次数。我们可以遍历数组,依次输出每个字母出现的次数。代码如下:
```
for (int i = 0; i < 26; i++)
{
cout << (char)('a' + i) << ": " << count[i] << endl;
}
```
完整代码如下:
```
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str;
getline(cin, str); // 从键盘输入一行字符串,存储到str中
int count[26] = {0}; // 定义一个大小为26的数组,用来存储每个字母出现的次数
for (int i = 0; i < str.length(); i++)
{
if (str[i] >= 'a' && str[i] <= 'z') // 判断是否为小写字母
{
count[str[i] - 'a']++; // 统计字母出现的次数
}
}
for (int i = 0; i < 26; i++)
{
cout << (char)('a' + i) << ": " << count[i] << endl;
}
return 0;
}
```
阅读全文