/* 求一个一维数组中的第二大元素,不用排序
假设数组中没有重复的元素*/
#include <stdio.h>
/* 求一个一维数组中的第二大元素,不用排序
假设数组中没有重复的元素*/
int main(int argc, char *argv[])
{
int i;
int a[7];
int max1,max2;
/* 输入数字*/
printf("Eneter 7 figures.\n");
for ( i = 0; i < 7; i++)
{
scanf("%d", &a[i]);
}
/*给max赋值*/
if (a[0] > a[1])
{
max1 = a[0];
max2 = a[1];
}
else
{
max1 = a[1];
max2 = a[0];
}
for(i = 2; i < 7; i++)
{
if(a[i] > max1)
{
max2 = max1;// 交换前将max1的值先赋值给max2
max1 = a[i];
}
/* 赋值时,max1就是最大的*/
if(a[i] > max2 && a[i] != max1)
{
max2 = a[i];
}
}
printf("max2 = %d\n", max2);
return 0;
}