c语言求助,谢谢大神! 已有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中,

c语言求助,谢谢大神!
已有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中,并输出插入后的数组。
提示:假设原数组有10个数,则要定义数组长度为11,因为要新插入一个数到原数组中。

#include <stdio.h>
 
int main() {
    int a[15] = {9,12,13,23,24,35,46,54,57,67,89};
    int i,j,x,n = 11;
    int flag = 1;
    for(i = 0; i < n; ++i)
        printf("%d ",a[i]);
    printf("\n要插入的数:");
    scanf("%d",&x);
    for(i = 0; i < n && flag; ++i) {
        if(a[i] > x) {
            for(j = n; j > i; --j)
                a[j] = a[j - 1];
a[i] = x;
            flag = 0;
        }
    }
    if(flag) a[n] = x;
++n;
    printf("删除%d后:\n",x);
    for(i = 0; i < n; ++i)
printf("%d ",a[i]);
printf("\n");
    return 0;   
}

追问

谢谢

温馨提示:答案为网友推荐,仅供参考
相似回答