用c++做给出n个整数,输出其中出现最多的一个整数(包含负数0。
时间: 2023-03-23 12:01:47 浏览: 93
可以,以下是一个C语言的实现:
```c
#include <stdio.h>
#define MAX_N 100000 // 假设最多有100000个整数
int main() {
int n, x, max_num, max_count = 0;
int cnt[MAX_N * 2 + 1] = {0}; // 计数数组,下标范围是[-MAX_N, MAX_N]
scanf("%d", &n);
for (int i = 0; i < n; i++) {
scanf("%d", &x);
cnt[x + MAX_N]++; // 下标需要偏移,使其不为负数
}
for (int i = -MAX_N; i <= MAX_N; i++) {
if (cnt[i + MAX_N] > max_count) {
max_num = i;
max_count = cnt[i + MAX_N];
}
}
printf("%d\n", max_num);
return 0;
}
```
以上程序中,我们使用一个计数数组 `cnt` 来记录每个整数出现的次数。由于整数范围可能包括负数,我们需要将下标偏移 `MAX_N` 个单位,以保证不会出现负数下标。最后遍历一遍计数数组,找到出现次数最多的整数即可。
相关问题
c++,连续输入n个整数,统计其中正数、负数和零的个数
好的,我可以为您解答这个问题。您可以使用一个循环语句,输入n个整数,并逐个判断它们是正数、负数还是零。在每次输入后,您可以使用if语句来判断是正数、负数还是零,并对应地累加计数器的值。最后,输出三个计数器的值即可,例如:
```
#include <stdio.h>
int main() {
int n, num, positive = 0, negative = 0, zero = 0;
printf("请输入整数个数n:");
scanf("%d", &n);
for (int i = 0; i < n; i++) {
printf("请输入第%d个整数:", i+1);
scanf("%d", &num);
if (num > 0) {
positive++;
} else if (num < 0) {
negative++;
} else {
zero++;
}
}
printf("正数个数:%d\n负数个数:%d\n零的个数:%d\n", positive, negative, zero);
return 0;
}
```
这段代码可以统计连续输入的n个整数中,正数、负数和零的个数,并输出结果。如果您有任何疑问,可以继续问我。
用C++编程 输入 n 个正整数,输出这 n 个数中第二大的数。
好的,这是一个经典的编程题目,以下是对应的C++代码实现:
```c++
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int max1 = -1, max2 = -1; // 初始值设为-1,防止出现0或负数的情况
for (int i = 0; i < n; i++) {
int num;
cin >> num;
if (num > max1) {
max2 = max1;
max1 = num;
} else if (num > max2 && num != max1) {
max2 = num;
}
}
cout << max2 << endl;
return 0;
}
```
以上代码中,我们使用了两个变量 `max1` 和 `max2` 来记录输入数字中的最大值和第二大值,遍历输入数字时,如果当前数字比 `max1` 大,则将 `max1` 更新为该数字,同时将 `max2` 更新为原来的 `max1`;如果当前数字比 `max2` 大,且不等于 `max1`,则将 `max2` 更新为该数字。最终输出 `max2` 即为第二大数字。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)