编写一个程序,读取个数不定的整数,然后查找其中出现频率最高的数字。当输入为0时,表示结束输入。例如,如果输入的数据是 29 7 8 3 6 6 -6 4 5 6 1 0,那么数字6的出现频率最高。如果出现频率最高的数字不止一个,则应该将它们全部输出。例如,在线性表9 30 3 9 3 2 4中,3和9都出现了两次,所以3和9都应该被输出
时间: 2024-02-23 09:00:00 浏览: 23
以下是Python实现该程序的代码:
```python
num_dict = {}
max_freq = 0
while True:
n = int(input("请输入一个整数(输入0结束输入):"))
if n == 0:
break
if n not in num_dict:
num_dict[n] = 1
else:
num_dict[n] += 1
if num_dict[n] > max_freq:
max_freq = num_dict[n]
res = []
for k, v in num_dict.items():
if v == max_freq:
res.append(k)
print("出现频率最高的数字是:", res)
```
程序首先定义一个字典`num_dict`来存储输入的数字以及它们的出现频率。然后利用while循环,读取用户输入的整数,如果输入的是0,则跳出循环。接着,程序将该整数加入到`num_dict`中,并更新`max_freq`变量,以记录出现频率最高的数字的出现次数。
最后,程序遍历`num_dict`,找出所有出现次数等于`max_freq`的数字,并将它们添加到列表`res`中。最终输出`res`即可得到所有出现频率最高的数字。