本关任务: 从键盘输入字母、数字或其它,分别统计每个字符出现的次数,并按出现的次数从大到小排序。 测试说明 平台会对你编写的代码进行测试: 测试输入: 请输入字符,字符之间以空格间隔:b b 1 1 1 2 预期输出: 1:3 b:2 2:1
时间: 2024-10-29 17:19:30 浏览: 49
这是一个编程任务,主要是让你编写一段程序,接收用户通过键盘输入的一系列字符(包括字母和数字),然后统计每个字符出现的次数,并将结果按照字符出现的频率从高到低排序。以下是Python的一种解决方案:
```python
def count_chars(input_string):
# 创建一个字典来存储字符及其出现次数
char_count = {}
# 遍历输入字符串中的每个字符
for char in input_string.split():
if char in char_count:
char_count[char] += 1
else:
char_count[char] = 1
# 按照出现次数降序排序字典
sorted_count = sorted(char_count.items(), key=lambda x: x[1], reverse=True)
# 输出格式化为 "字符: 出现次数"
for item in sorted_count:
print(f"{item[0]}:{item[1]}")
# 获取用户输入并执行计数
input_str = input("请输入字符,字符之间以空格间隔:")
count_chars(input_str)
```
当你运行这个程序时,它会等待用户的输入,例如"b b 1 1 1 2",然后输出统计结果:"1:3", "b:2", "2:1"。
阅读全文