完成如下两个函数:
///向数组a中指定下标k的位置上插入一个数值x
void InsertA(int a[], int n, int k, int x)
///输出数组的元素
void OutputA(int a[], int n)
并在此基础上实现将一个整数插入到数组指定的下标位置中,并输出插入后的数组。
输入格式:
首先输入一个整数n,n<100。 然后输入n个整数,所有数据均在int类型范围内。 然后输入两个整数,k和x,其中x代表要插入数组的元素值,k代表插入数组的具体位置(首元素位置从0开始,0<=k<n)。
输出格式:
输出n+1个整数,代表插入数值后的所有数组元素。每个数后面用一个空格隔开。
输入样例:
2
1 2
0 3
输出样例:
3 1 2
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
#define N 1000
void InsertA(int a[], int n, int k, int x)
{
int i;
for(i=n-1;i>=k;i--)
a[i+1]=a[i];
a[k]=x;
}
void OutputA(int a[], int n)
{
int i;
for(i=0;i<=n;i++)
printf("%d ",a[i]);
}
int main ()
{
int n,i,k,x,a[N];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
scanf("%d%d",&k,&x);
InsertA(a,n,k,x);
OutputA(a,n);
return 0;
}