2. 从键盘输入一个不包括空格的仅由英文字母组成的字符串,长度不超过200个字符。统计26个英文字母的使用频率(出现的次数),不区分大小写。最后按使用频率从大到小的顺序输出字母(小写字母)及其使用频率,没有出现的字母不输出。
时间: 2023-05-25 22:06:06 浏览: 87
示例:
输入:helloWorld
输出:
l 3
o 2
e 1
h 1
r 1
w 1
d 1
输入格式:
一个不包括空格的仅由英文字母组成的字符串,长度不超过200个字符。
输出格式:
按使用频率从大到小的顺序输出字母(小写字母)及其使用频率,每行一个字母及其使用频率,格式为“字母 频率”。
输入样例:
helloWorld
输出样例:
l 3
o 2
e 1
h 1
r 1
w 1
d 1
提示:
该题目是Python偏难题,Java中难易程度中等。
相关问题
c++2. 从键盘输入一个不包括空格的仅由英文字母组成的字符串,长度不超过200个字符。统计26个英文字母的使用频率(出现的次数),不区分大小写。最后按使用频率从大到小的顺序输出字母(小写字母)及其使用频率,没有出现的字母不输出。
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
char str[201];
int freq[26] = {0}; // 存储每个字母的使用频率,初始值为0
cin >> str;
int len = strlen(str);
for (int i = 0; i < len; i++)
{
if (str[i] >= 'a' && str[i] <= 'z') // 统计小写字母的使用频率
freq[str[i] - 'a']++;
else if (str[i] >= 'A' && str[i] <= 'Z') // 统计大写字母的使用频率
freq[str[i] - 'A']++;
}
int count = 0;
for (int i = 0; i < 26; i++)
{
if (freq[i] > 0) // 如果该字母出现过,则输出字母及其使用频率
{
cout << (char)(i + 'a') << ":" << freq[i] << endl;
count++;
}
}
if (count == 0) // 如果所有字母都没有出现过,则输出"None"
cout << "None" << endl;
else // 否则按使用频率从大到小排序输出
{
int maxFreq = 0;
for (int i = 0; i < 26; i++)
maxFreq = max(maxFreq, freq[i]);
while (maxFreq > 0)
{
for (int i = 0; i < 26; i++)
{
if (freq[i] == maxFreq)
cout << (char)(i + 'a') << ":" << freq[i] << endl;
}
maxFreq--;
}
}
return 0;
}
从键盘输入一行字符(长度小于等于1000),统计出其中的英文字母、数字、空格、和其它字符的个数。
可以使用循环遍历输入的字符串,判断每个字符的类型,然后累加计数器即可。具体实现如下:
1. 定义四个计数器,分别用于统计英文字母、数字、空格和其它字符的个数,初始值都为0。
2. 从键盘输入一行字符,保存到一个字符串变量中。
3. 使用for循环遍历字符串中的每个字符,对每个字符进行类型判断:
- 如果是英文字母,英文字母计数器加1;
- 如果是数字,数字计数器加1;
- 如果是空格,空格计数器加1;
- 否则,其它字符计数器加1。
4. 输出四个计数器的值,即为统计结果。
代码示例:
```python
# 定义计数器
letter_count = 0
digit_count = 0
space_count = 0
other_count = 0
# 输入字符串
s = input("请输入一行字符:")
# 遍历字符串,统计各种字符的个数
for c in s:
if c.isalpha(): # 判断是否为英文字母
letter_count += 1
elif c.isdigit(): # 判断是否为数字
digit_count += 1
elif c.isspace(): # 判断是否为空格
space_count += 1
else: # 其它字符
other_count += 1
# 输出统计结果
print("英文字母个数:", letter_count)
print("数字个数:", digit_count)
print("空格个数:", space_count)
print("其它字符个数:", other_count)
```
注意:上述代码中使用了字符串的isalpha()、isdigit()和isspace()方法来判断字符的类型,这些方法分别用于判断是否为英文字母、数字和空格。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)