// 输出数组中第一大和第二大的值
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<limits.h>
void Print2Max(int* br, int n)
{
assert(br != nullptr&&n>1);
int max1 = br[0] > br[1] ? br[0] : br[1];
int max2 = br[0] < br[1] ? br[0] : br[1];
for (int i = 2;i < n;++i)
{
if (br[i] > max1)
{
max2 = max1;
max1 = br[i];
}
else if(br[i]>max2 && max2<max1)
{
max2 = br[i];
}
}
printf("max1: %d max2: %d \n", max1, max2);
}
int main()
{
int ar[] = { 23,67,89,12,90,45,34,78,100,56 };
int n = sizeof(ar) / sizeof(ar[0]);
Print2Max(ar, n);
return 0;
}
4.例题-输出数组中第一大和第二大的值
于 2021-06-22 19:06:22 首次发布