当数据非常大的时候,先排序再找值 俨然是不可行的,对于初学者如何最简单地找出最大的两个数呢?
#include<stdio.h>
int main()
{
int n,i;
scanf("%d",&n);
long long int first,second,t;//用于超大型数据
first=second=0;//将最大第二大初值为0
for(i=0;i<n;i++)
{
scanf("%lld",&t);
if(t>first)
{
second=first; //将旧的最大值给第二大
first=t;//更新最大值
}
else if(t>second)//输入的数大于第二大 但小于最大值
second=t;//更新 第二大
}
printf("%ld %ld\n",first,second);
return 0;
}