请问为何冒泡排序(10数大小排列)中有数为0 则结果错误
#include "stdio.h"
void main()
{
int a[10];
int i,j,t;
for (i=0;i<10;i++)
scanf ("%d",&a[i]);
for (i=0;i<9;i++)
for (j=0;j<10-i-1;j++)
if (a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=a[j];
}
for (i=0;i<10;i++)
printf ("% d",a[i]);
}
用 输入1 2 3 4 5 6 7 8 9 0
则结果为0 0 0 0 0 0 0 0 0 0
但不输入0 就不会错... 何解... 请达人指点 :(