#include
#include
#define maxsize 100
typedef int datatype;
typedef struct{
datatype a[maxsize];
int size;
}sequence_list;
//置空顺序表
void init(sequence_list *p){
p->size=0;
}
//添加元素
void append(sequence_list *slt,int x){
if(slt->size==maxsize){
printf("顺序表已满n");
exit(0);
}
slt->a[slt->size]=x;
slt->size++;
}
//展示操作
void display(sequence_list slt){
if(slt.size==0){
printf("顺序表为空n");
exit(0);
}
for(int i=0;isize+p2->size>maxsize){
return false;
}
else{
int k=0,m=0,n=0;
while(msize&&nsize){
if(p1->a[m]a[n]){
p3->a[k]=p1->a[m];
m++;k++;
}
else{
p3->a[k]=p2->a[n];
k++;n++;
}
}
while(msize){
p3->a[k++]=p1->a[m++];
}
while(nsize){
p3->a[k++]=p2->a[n++];
}
p3->size=k;
}
}
//主函数窗口
int main(){
sequence_list s1,s2,s3;
init(&s1);
init(&s2);
for(int i=1;i<=5;i++){
append(&s1,i*10);
append(&s2,i*9);
}
display(s1);
printf("n");
display(s2);
init(&s3);
merge(&s1,&s2,&s3);
printf("n");
display(s3);
}