6. (程序题) 【又见字符统计】 【题目描述】 输入英文字符,请按照字母表顺序统计字符串中所有出现的字母的个数(计数时不区分大小写),若输入的内容有误(即不是所有的字符都是英文字符),则输出Error。 【输入描述】 一串只包含英文字母的字符。代码
时间: 2024-05-01 21:18:01 浏览: 80
Java 字符串应用、数组、字母转换和公约数等
5星 · 资源好评率100%
可以这样实现:
``` python
def count_chars(s):
# 将字符串转化为小写
s = s.lower()
# 初始化字母出现次数为0
counts = [0] * 26
for ch in s:
# 判断字符是否为英文字母
if 'a' <= ch <= 'z':
# 将字符转化为对应的下标
index = ord(ch) - ord('a')
# 对应字母出现次数加1
counts[index] += 1
else:
return "Error"
# 将出现次数大于0的字母及其出现次数输出
res = ""
for i in range(26):
if counts[i] > 0:
res += chr(i + ord('a')) + ":" + str(counts[i]) + ","
# 去除最后一个逗号并返回结果
return res[:-1]
input_str = input()
print(count_chars(input_str))
```
输入示例:abcdefABCDEFzzz
输出示例:a:1,b:1,c:1,d:1,e:1,f:1,z:3
阅读全文