dev-cpp软件冒泡法输入1时结果不对,其余数据都正确,求助!!!
代码#include<stdio.h>int main()
{
int i,j,n,t;
scanf("%d",&n);
int a[100];
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n-1;i++)
{
for(j=0;j<n-i;j++)
{
if(a[j]<a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}
样例输入:
5
3 6 1 8 2
样例输出:
8 6 3 2 1
如果把for循环起始值改成1则正确,为什么???
[ 本帖最后由 d19930626k 于 2015-4-20 21:32 编辑 ]