OpenJudge

4:在有序数组中插入一个元素

总时间限制:
100ms
内存限制:
1024kB
描述

编写一个函数 void insert(int *buf, int size, int key);数组buf中的整数已经按从小到大的顺序排好序。插入一个数值key,把key放到合适的位置,使数组仍然有序。函数调用者保证buf中有足够的内存空间插入key。

输出插入key之后的数组。

#include <stdio.h>

//数组buf中的整数已经按从小到大的顺序排好序。
//插入一个数值key,把key放到合适的位置,使数组仍然有序。
void insert(int *buf, int size, int key);
//show函数输出一个整型数组的所有元素
void show(int *buf, int size);

int main(void)
{
    int key;
    int buf[10] = {10, 20, 30, 40, 50, 60, 70, 80, 90};
    scanf("%d", &key);
    insert(buf, 10, key);
    show(buf, 10);
    return 0;
}

//数组buf中的整数已经按从小到大的顺序排好序。
//插入一个数值key,把key放到合适的位置,使数组仍然有序。
//请写出insert函数的定义。
// 在此处补充你的代码
//show函数输出一个整型数组的所有元素
void show(int *buf, int size)
{
    for (int i = 0; i < size; i++)
    {
        printf("%d ", buf[i]);
    }
    printf("\n");
}
输入
一个整数key
输出
按顺序插入key之后的数组元素。
样例输入
64
样例输出
10 20 30 40 50 60 64 70 80 90
全局题号
16481
添加于
2017-12-11
提交次数
98
尝试人数
48
通过人数
47