-->
当前位置:首页 > 题库 > 正文内容

程序填空题:完成两个有序顺序表的合并操作。

Luz4年前 (2021-05-10)题库3064
函数merge用于将两个顺序存储的递增有序表合并成一个非递减有序表。如“1,2,3,4”和“2,3,5 ,8,10”合并成“1,2,2,3,3,4,5,8,10”。

```c++

#include
#define M 4
#define N 5

void merge(int a[],int b[],int c[])
{
int i=0,j=0,@@[k=0](1);
while(@@[i {
if(a[i] c[k++]=a[i++];
else
@@[c[k++]=b[j++]](1);
}
@@[while(i c[k++]=a[i++];
while(j c[k++]=b[j++];
}

int main()
{
int a[M],b[N],c[M+N],i,j;
for(i=0;i scanf("%d",&a[i]);
for(j=0;j scanf("%d",&b[j]);
merge(a,b,c);
for(i=0;@@[i printf("%d ",c[i]);
printf("\n");
return 0;
}
```






答案:
第1空:k=0

第2空:i
第3空:c[k++]=b[j++]

第4空:while(i
第5空:i

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。