请教一下图三是我写的,哪里出错了呢?意思就是在排好的有序数组中插入一个数

img

img

img

比如要把i插入a[5],题主只做了a[6]=a[5],a[5]=x,没有把原来的a[6]~a[9]后移。
原数组长度10,插入一个数字后数组长度应该为11。
9~14行改为如下,注意考虑x最小的情况。

for (i=10; i>0; i--) {
    if (a[i-1] < x) {
        a[i] = x;
        break;
    }
    else {
        a[i-1] = a[i];
    }
}
if (i=0) {
    a[0] = x;
}