主题:求助
#include<iostream.h>
int main()
{ int m,i,j,k,a[1000],N,t;
cin>>N;
while(N<2);
cin>>N;
for(k=0;k<N;k++)
cin>>a[k];
for(i=0;i<N-1;i++)
{m=i;
for(j=i+1;j<N;j++)
if(a[i]<a[j])
{ m=j;
t=a[m];
a[m]=a[i];
a[i]=t;}
}
cout<<a[N-1]<<" "<<a[N-2]<<endl;
return 0;
}
我想让此程序输出的是最小的两个数,为啥此程序输出的不是最小的两个数?哪里错了
int main()
{ int m,i,j,k,a[1000],N,t;
cin>>N;
while(N<2);
cin>>N;
for(k=0;k<N;k++)
cin>>a[k];
for(i=0;i<N-1;i++)
{m=i;
for(j=i+1;j<N;j++)
if(a[i]<a[j])
{ m=j;
t=a[m];
a[m]=a[i];
a[i]=t;}
}
cout<<a[N-1]<<" "<<a[N-2]<<endl;
return 0;
}
我想让此程序输出的是最小的两个数,为啥此程序输出的不是最小的两个数?哪里错了