顺序表的合并操作算法,应该怎么写?
我试验写了一个顺序表的合并操作算法,但是不对,应该怎么写?
#include <stdio.h>
struct stu{ //线性表的定义
int data[5];
int length;
};
//-------------------------------
struct xin{ //合并之后的新线性表的定义
int data[10];
int length;
}
//--------------------------------
void jianli(stu *l)//线性表的建立
{
int i;
l->length=0;
for(i=0;i<5;i++)
{
scanf("%d",&l->data[i]);
l->length++;
}
}
//---------------------------------------------------------------
int a_charu_b(stu *l,stu *k,stu *p)//线性表l,k的合并操作
{
int m,n;
int i;
for (m=l.length=0;m<5;m++)
scanf("%d",&l->data[m]);
printf("%d\t",l.data[m]);
for (n=k.length=0;n<5;n++)
scanf("%d",&k->data[n]);
printf("%d\t",k.data[n]);
for (i=0;i<=l.length;i++)
if (l.data[i]=k.data[i])
p.data[i]=l.data[i];
else (l.data[i]=k.data[i])
{
p.data[i]=l.data[i];
p.data[i+1]=k.data[i];
i++;
}
int main()
{
int m,i;
stu l;
jianli(&l);
jianli(&k)
for(i=0;i<5;i++)
printf("%d\t",l.data[i]);
int a_charu_b(&l,&k,&p);
getchar();
getchar();
//scanf("%d",m);
return 0;
-------------------------------------------------
特别是在函数a_charu_b,和主函数main()中调用的错误,请大侠帮我修改补充完整一下这个算法,谢谢!