冒泡法问题。帮帮忙看下
#define n 10main(){
int a[n],i,j,l;
for(i=1;i<=n;i++)
scanf("%d",a[i]);
for(j=1;j<=n-1;j++)
for(i=1;i<=n-j;i++)
if(a[i]>a[i+1]) {l=a[i];a[i]=a[i+1];a[i+1]=l;}
for(i=1;i<=n;i++) printf("%d,",a[i]);
}
这个程序是从小排到大。但是我输入10 9 8 7 6 5 4 3 2 1
最终运行果却是 2,3,4,5,6,7,8,9,10,3,
实在搞不懂为什么为这样。谁来帮我解释下啊。谢了