【问题描述】 输入若干个整数,统计出现次数最多的那个整数。如果出现最多的整数有两个以上,打印最早输入的那个整数。 【输入形式】 从标准输入读取输入。第一行只有一个数字N(1≤N≤10000),代表整数的个数。以后的N行每行有一个整数。 【输出形式】 向标准输出打印出现次数最多的那个数字。 【输入样例】 。C语言
时间: 2023-12-10 10:41:06 浏览: 142
```c
#include <stdio.h>
#define MAXN 10010
int main()
{
int n, cnt[MAXN] = {0}, max_num, max_cnt = 0; // cnt数组用于记录每个数字出现的次数
scanf("%d", &n);
for (int i = 0; i < n; i++){
int num;
scanf("%d", &num);
cnt[num]++;
if (cnt[num] > max_cnt || (cnt[num] == max_cnt && num < max_num)){
max_cnt = cnt[num];
max_num = num;
}
}
printf("%d\n", max_num);
return 0;
}
```
相关问题
Python问题:输入若干个整数,统计出现次数最多的那个
可以使用字典来统计每个数字出现的次数,然后找出出现次数最多的那个数字。以下是一个示例代码:
```python
nums = input("请输入若干个整数,用空格分隔:").split()
count_dict = {}
for num in nums:
if num in count_dict:
count_dict[num] += 1
else:
count_dict[num] = 1
max_count = 0
max_num = None
for num, count in count_dict.items():
if count > max_count:
max_count = count
max_num = num
print("出现次数最多的数字是:", max_num)
```
首先,通过 `input` 函数获取用户输入的若干个整数,并使用 `split` 方法将其转换为一个列表 `nums`。
接下来,定义一个空字典 `count_dict`,用于统计每个数字出现的次数。遍历 `nums` 列表中的每个数字,如果该数字已经在字典中出现过,则将其出现次数加 1,否则将其出现次数初始化为 1。
然后,遍历 `count_dict` 字典中的每个键值对,找出出现次数最多的那个数字,并将其保存在 `max_num` 变量中。
最后,输出出现次数最多的数字。
输入若干个整数,统计出现次数最多的那个整数
### 回答1:
可以使用一个字典来记录每个整数出现的次数,然后遍历字典找出出现次数最多的整数。
具体步骤如下:
1. 定义一个空字典,用来记录每个整数出现的次数。
2. 输入若干个整数,每输入一个整数,就在字典中将该整数对应的值加1。
3. 遍历字典,找出出现次数最多的整数。
4. 输出出现次数最多的整数。
下面是示例代码:
```
# 定义一个空字典
count_dict = {}
# 输入若干个整数
nums = input("请输入若干个整数,以空格分隔:").split()
for num in nums:
num = int(num)
if num in count_dict:
count_dict[num] += 1
else:
count_dict[num] = 1
# 遍历字典,找出出现次数最多的整数
max_count =
max_num = None
for num, count in count_dict.items():
if count > max_count:
max_count = count
max_num = num
# 输出出现次数最多的整数
print("出现次数最多的整数是:", max_num)
```
### 回答2:
首先,我们需要明确题目中给出的输入条件是什么。假设题目要求用户输入一系列整数,我们需要将这些整数存储起来。
接下来,我们需要创建一个字典来记录每个整数出现的次数。字典的键值对形式为整数-次数。我们遍历用户输入的整数列表,检查每个整数是否已经在字典中。如果已经存在,则将对应的值加一;如果不存在,则将整数作为新的键添加到字典中,初始值为1。
完成字典的构建后,我们需要遍历字典,找到出现次数最多的那个整数。我们设定一个变量`max_count`来记录最多的次数,一个变量`most_common`来记录最多的整数。
我们遍历字典的键值对,当值大于`max_count`时,更新`max_count`的值,并将对应的键赋值给`most_common`。最后输出`most_common`即为出现次数最多的整数。
代码实现如下:
```python
def find_most_common(nums):
freq = {}
for num in nums:
if num in freq:
freq[num] += 1
else:
freq[num] = 1
max_count = 0
most_common = None
for num, count in freq.items():
if count > max_count:
max_count = count
most_common = num
return most_common
```
以上是一种解决输入若干个整数统计出现次数最多整数的算法。
### 回答3:
要统计输入的若干个整数中出现次数最多的那个整数,可以采用字典来进行统计。
首先,我们可以定义一个空字典来存放整数和出现次数的对应关系。
然后,我们通过一个循环来遍历输入的整数。对于每个输入的整数,我们先判断字典中是否已经存在该整数作为键值,如果存在,则将对应的值加1;如果不存在,则将该整数作为键值添加到字典中,并将对应的值初始化为1。
接着,我们定义一个变量max_count来记录出现次数最多的整数的出现次数,并初始化为0。同时,定义一个变量max_num来记录出现次数最多的整数,并初始化为0。
然后,我们再次遍历字典中的键值对,对于每个键值对,如果次数大于max_count,则更新max_count和max_num的值为当前键值对的次数和整数;如果次数等于max_count,则判断当前整数是否比max_num大,如果是,则更新max_num的值为当前整数。
最后,输出max_num即为出现次数最多的整数。
示例代码如下:
```python
integer_dict = {}
max_count = 0
max_num = 0
# 输入若干个整数
n = int(input("输入整数个数:"))
for i in range(n):
num = int(input("输入第{}个整数:".format(i+1)))
# 统计整数出现次数
if num in integer_dict:
integer_dict[num] += 1
else:
integer_dict[num] = 1
# 更新出现次数最多的整数
if integer_dict[num] > max_count:
max_count = integer_dict[num]
max_num = num
elif integer_dict[num] == max_count and num > max_num:
max_num = num
# 输出出现次数最多的整数
print("出现次数最多的整数是:{}".format(max_num))
```
注意,在上面的代码中,我们假设用户输入的整数个数固定为n个,并依次输入。如果要实现动态输入,可以使用一个循环来持续输入整数,直到用户输入结束。
阅读全文