输出一组数中的最大值和次大值,但是当最大值和次大值相等时,次大值输出错误
#include<stdio.h>
int main()
{
int max1,max2, i, a, t;
scanf_s("%d", &t);
for (i = 0; i < t; i++)
{
int b[10];
for (i = 0; i < t; i++)
{
scanf_s("%d", &a);
b[i] = a;
}
max1 = b[0];
for (i = 1; i < t; i++)
{
if (b[i] > max1)
{
max1 = b[i];
}
}
for (i = 0; i < t; i++)
{
if (b[i] != max1)
{
max2 = b[i];
}
for (i = 0; i < t; i++)
{
if (b[i] < max1 && b[i] >= max2)
{
max2 = b[i];
}
}
}
}
printf("%d %d\n",max1, max2);
return 0;
}
输入:4 -5 -12 35 35时
输出值为:35 -5