提问人:Jude Koh 提问时间:3/13/2023 更新时间:3/13/2023 访问量:36
如何生成随机数组并获得它的第三个最大值
How to generate randomize array and getting the third max of it
问:
这里的问题是获得第三大随机数。
我的代码应该是生成随机的 100 个数字,通过排序算法,我会得到第三大数字。
#include <iostream>
#include <climits>
#include <stdlib.h>
using namespace std;
void thirdmax(int arr[], int arr_size)
{
if (arr_size < 3) {
printf(" Invalid Input ");
return;
}
// Find first max element
int first = arr[0];
for (int i = 1; i < arr_size; i++)
if (arr[i] > first)
first = arr[i];
// Find second max element
int second = int_min;
for (int i = 0; i < arr_size; i++)
if (arr[i] > second && arr[i] < first)
second = arr[i];
// Find third max element
int third = int_min;
for (int i = 0; i < arr_size; i++)
if (arr[i] > third && arr[i] < second)
third = arr[i];
std::cout<<"The Third Max Element is:"<<third;
}
int main()
{
int i;
int arr_size;
cout<<" Random Numbers : ";
for(i=1;i<=100;i++)
{
arr_size=rand()%100;
cout<<" "<<arr_size<<" ";
}
cout<<"\n";
int n = sizeof(int arr_size) / sizeof(int arr_size[0]);
thirdmax(int rr_size, n);
return 0;
}
我的代码应该是生成随机的 100 个数字,通过排序算法,我会得到第三大数字。
答: 暂无答案
下一个:在 C++ 中没有输入时读取数字
评论
{100, 100, 90, 80}
rand()
srand()