找出一个数组中前三个最大的数字,帮忙看下
题目本意,找出前三大的数字,但是只能找出最大的,第二个和第三个都找不除,帮忙看看问题所在,谢谢大家了#include<stdio.h>
main()
{
float ave[10]={1,2,3,4,5,6,7,8,9,5};
float max1,max2,max3;
int first,second,third,i;
first=second=third=0;
max1=max2=max3=ave[0];
for(i=0;i<10;i++)
{
if(max1<ave[i])
{max1=ave[i];
first=i+1;
}
if(max2<max1&&max2>ave[i])
{
max2=ave[i];
second=i+1;
}
if(max3<max2&&max2>ave[i])
{
max3=ave[i];
third=i+1;
}
}
printf("最大的数字为:%d\n",first);
printf("第二大的数字为:%d\n",second);
printf("第三大的数字为:%d\n",third);
getch();
}