按原来排序的规律将一个数插入数组,,为什么运行出来像这样

#include<stdio.h>
int main()
{
int a[11]={1,4,5,9,11,15,16,18,19,28};
int i,x,j,t;
for(i=0;i<10;i++)
printf("%6d",a[i]);
printf("\n");
printf("请输入一个数据:");
scanf("%d",x);
a[10]=x;
for(i=0;i<11;i++)

        for(j=i+1;j<12;j++)
        {
            if(a[i]>a[j])
            {
                t=a[i];
                a[i]=a[j];
                a[j]=t;
            }
        }

    printf("排序的数字为:");
       for(i=0;i<11;i++)
        printf("%d\t",a[i]);
       printf("\n");
    return 0;

}

img

改成 scanf("%d",&x);

for(j=i+1;j<11;j++) 改成11