【发布时间】:2020-10-30 20:51:09
【问题描述】:
这里是 C++ 初学者。我正在尝试编写一个不使用数组的程序,该程序将采用 N 个数字并允许用户编写由 N 个数字组成的元素序列(例如 N strong> 为 5,则元素序列应由 5 个整数组成(例如 8,21,7,21,10))。然后程序应该计算序列的最大元素出现了多少(在示例中输出应该是2,因为最大数量是21,其中出现2 次)。 这是我到目前为止编写的代码,它检测序列的最大数。
#include <iostream>
#include <limits.h>
using namespace std;
int main() {
int n , n_seq, count = 0;
int max = INT_MIN;
cin>>n;
for(int i = 0; i < n; i++)
{
cin>>n_seq;
if(n_seq > max)
{
max = n_seq;
}
}
cout<<max;
}
但我无法弄清楚每次出现最大数量时如何增加 count 变量的其余部分。
【问题讨论】:
-
if (n_seq == max) count++? -
除了@AlanBirtles,如果发现新的最大值,计数器必须重置为 0。
-
@SebastianH 或为一,具体取决于测试的完成位置。
-
@SebastianH 我试图不完全为他们写作业......
标签: c++ loops max var find-occurrences