编写一个程序,从键盘读取未指定个数的字符串,一行一个,以字符串"q"为输入结束标志("q"不列入统计范围)。使用字典找出其中出现次数最多的字符串,打印该字符串及其出现次数。 注意:本题的测试用例中将保证只有一个字符串出现次数最多。
时间: 2024-03-20 14:44:03 浏览: 76
好的,这是一个关于统计字符串出现次数的问题。我可以为您提供一个 Python 的解决方案:
```python
# 定义一个空字典,用于存储字符串出现次数
word_count = {}
# 循环读取输入的字符串
while True:
word = input()
if word == 'q':
break
if word not in word_count:
word_count[word] = 1
else:
word_count[word] += 1
# 找出出现次数最多的字符串
max_count = 0
max_word = ''
for word, count in word_count.items():
if count > max_count:
max_count = count
max_word = word
# 输出结果
print(max_word, max_count)
```
这段代码首先定义了一个空字典 `word_count`,用于存储字符串出现次数。然后使用一个无限循环来读取输入的字符串,当输入的字符串为 "q" 时,退出循环。在循环中,如果读取到的字符串尚未出现过,则将其加入字典中,并将出现次数初始化为 1;如果已经出现过,则将其出现次数加 1。读取完所有字符串后,再遍历一遍字典,找出出现次数最多的字符串,并输出其出现次数和字符串本身。
需要注意的是,由于本题的测试用例中将保证只有一个字符串出现次数最多,因此上面的代码并没有处理多个字符串出现次数相同的情况。如果需要处理这种情况,可以将最大出现次数的字符串放入一个列表中,然后输出列表即可。
阅读全文