请问为什么会出现这种情况

问题遇到的现象和发生背景

请问一下,为什么我这样值都输进去了还在输入界面并且还输不进去值啊,还有我这样写可不可行呢?
题目: 编程从键盘任意输入10个数放入数组(长度大于10),对此数组进行选择排序,再输入一个数x,然后输出x在数组中的下标位置,如果没有就加入数组中。

用代码块功能插入代码,请勿粘贴截图
#include
int main()
{
    int a[12],i,j,k,x=0,temp=0;
    for(i=0;i<10;i++)
    scanf("%d",&a[i]);
    for(j=0;j<9;j++){
        int index=j;
        for(k=j+1;k<10;k++){
            if(a[index]>a[k])
            index=k;
        }
        temp=a[index];
        a[index]=a[j];
        a[j]=temp;
    }
    scanf("%d",&x);
    for(i=0;i<10;i++){
        if(x==a[i]){
        printf("%d",i);
        return 0;
    }
        else{
         while(xfor(j=9;j>=i;j--)
         a[j+1]=a[j];
         a[j]=x;
       }
   }
}
    for(i=0;i<11;i++)
    printf("%d ",a[i]); 
return 0;
}