#include <stdio.h>
#define MAXSIZE 100
typedef struct
{int data[MAXSIZE];
int length;
}seqlist;
void intlist(seqlist *l)
{l->length=0;
}
void creatlist(seqlist *l)
{int x;
scanf("%d",&x);
while(x!=-1)
{l->data[l->length]=x;
l->length++;
scanf("%d",&x);}
}
void outputlist(seqlist *l)
{int i;
for(i=0;i<l->length;i++)
printf("%d ",l->data[i]);
}
void mergelist(seqlist *a,seqlist *b,seqlist *c)
{
int i,j,k;
i=0;j=0;k=0;
while(i<=a->length&&j<=b->length)
if(a->data[i]<b->data[j])
{
c->data[k]=a->data[i];
i++;k++;
}
else
{
c->data[k]=b->data[j];
j++;k++;
}
while(i<=a->length)
{
c->data[k]=a->data[i];
i++;k++;
}
while(j<=b->length)
{
c->data[k]=b->data[j];
i++;k++;
}
c->length=k-1;
outputlist(c);
}
void main()
{seqlist *la,*lb,*l;
int i;
intlist(la);
intlist(lb);
printf("\ninput the la data:");
creatlist(la);
printf("\ninput the lb data:");
creatlist(lb);
printf("\noutput the la data:");
outputlist(la);
printf("\noutput the lb data:");
outputlist(lb);
printf("\noutput the la and lb data:");
mergelist(la,lb,l);
getch();
}