#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define MAXSIZE 100
typedef int DataType;
typedef struct
{
DataType data[MAXSIZE];
int last;
}seqlist;
seqlist *Creat_seqlist()
{
int n;
seqlist *L;
L=(seqlist *)malloc(sizeof(seqlist));
L->last=-1;
printf("请输入要创建的线性表中数据元素的个数:\n");
scanf("%d",&n);
for(int i=0;i<n;i++)
{
printf("请输入第%d个数据元素的值:",i+1);
scanf("%d",&L->data[i]);
}
L->last=n-1;
return L;
}
int main()
{
seqlist *A,*B,*C;
A=Creat_seqlist();
B=Creat_seqlist();
C=(seqlist *)malloc(sizeof(seqlist));
C->last=-1;
int i,j,k;
i=0,j=0,k=0;
while(i<=A->last&&j<=B->last)
{
if(A->data[i]<B->data[j])
{
C->data[k]=A->data[i];
i++;
k++;
}
else
{
C->data[k]=B->data[j];
k++;
j++;
}
}
while(i<=A->last)
{
C->data[k]=A->data[i];
i++;
k++;
}
while(j<=B->last)
{
C->data[k]=B->data[j];
j++;
k++;
}
C->last=k-1;
printf("顺序表C为:\n");
for(int i=0;i<=C->last;i++)
{
if(i==0)
printf("%d",C->data[i]);
else
printf(" %d",C->data[i]);
}
printf("\n");
system("pause");
return 0;
}
转载于:https://www.cnblogs.com/zhangshu/archive/2011/04/23/zhangshu0001.html