欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C语言入门题库——有序数组中插入若干数,仍保持有序

程序员文章站 2024-03-15 20:12:06
...

Description:在有序数列中插入若干个数,每插入一个数都要保持有序。
Input:输入两行,第一行输入5个有序数,第二行输入若干个插入的数,以 -1 结束。
Output:输出一行,输出所有数,用空格隔开。
Sample Input
3 5 7 9 11
15 0 8 -1
Sample Output
0 3 5 7 8 9 11 15

#include<stdio.h>

int main()
{
    int r, i, j, k, t;
    int a[5], b[100];
    for(i = 0; i < 5; i++)
        scanf("%d", &a[i]);
    for(j = 0; ; j++)
    {
        scanf("%d", &b[j]);
        if(b[j] == -1)
        	break;
    }
    r = 5 + j;
    int c[r];
    i = 0,j = 0;
    for(k = 0; k < 5; k++)
    {
        c[k] = a[i];
        i++;
    }
    for(k = 5; k < r; k++)
    {
        c[k] = b[j];
        j++;
    }
    for(k = 0; k < 5 + j; k++)
    for(r = 0; r < 5 + j; r++)
    if(c[r+1] < c[r])
    {
        t = c[r+1];
        c[r+1] = c[r];
        c[r] = t;
    }
    for(r = 0; r < 5 + j; r++)
    printf("%d ", c[r]);
    return 0;
}