7-4 数组中插入一个数 (10分)

在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列,已知升序数组{1, 2, 4, 6, 8, 9, 12, 15, 149, 156 }。

输入格式:

直接输入一个整数,没有其它任何附加字符。。

输出格式:

输出插入元素后的升序数列,每个数输出占5列。

输入样例:

5

输出样例:

    1    2    4    5    6    8    9   12   15  149  156
#include
int main()
{
    int a[10]={1,2,4,6,8,9,12,15,149,156},b[11];
    int i,j=0,n;
    //在a[10]数组中插入一个数保存在b[11]数组中
    scanf("%d",&n);
    for(i=0;i<10;i++)
    {

        if(a[i]>=n && a[i-1]<=n)
        {
            b[j]=n;
            j++;
            b[j]=a[i]; //没这行和下一行会少6
            j++;
        }
        else
        {
            b[j]=a[i];
            j++;
        }

    }

    for(j=0;j<11;j++)
    {
       printf("%5d",b[j]);
    }

    return 0;
}

 

你可能感兴趣的:(c语言)