程序填空题:函数实现插入排序
已知整型数组a中的元素已经由小到大排序,函数insert的功能是:将整数x插入到数组a中,要求插入后的数组元素依然保持升序。其中pn所指的存储单元中存放着数组元素的个数。请补充完整下面的函数。
```in
void insert(int *a, int x, int *pn) {
int k,i,n;
n=*pn;
i=0; //初始时,x在a数组中待插入位置为0
while(x>a[i])
i++;//更新x在a数组中待插入的位置i
for(k=n; k>i; k--)
a[k]=a[k-1];//将插入位置及后面的元素都往后移
@@[a[i]=x](5) ;//将元素x插入到a数组的i位置。
*pn=n+1;//数组元素个数增加1
}
```
答案:
第1空:a[i]=x
```in
void insert(int *a, int x, int *pn) {
int k,i,n;
n=*pn;
i=0; //初始时,x在a数组中待插入位置为0
while(x>a[i])
i++;//更新x在a数组中待插入的位置i
for(k=n; k>i; k--)
a[k]=a[k-1];//将插入位置及后面的元素都往后移
@@[a[i]=x](5) ;//将元素x插入到a数组的i位置。
*pn=n+1;//数组元素个数增加1
}
```
答案:
第1空:a[i]=x