数据结构两个有序链表合并为一个有序链表

函数部分如下:
node* combine(node* a,node* b)
{
node *p=a,*q=b,*pre,*head;
if(p->info>=q->info)
head=p;
else
head=q;
pre=head;
while( p!=NULL && q!=NULL )
{
if(p->info >= q->info)
{
pre->next=p;
pre=p;
p=p->next;
}
else
{
pre->next=q;
pre=q;
q=q->next;
}
}
while(p!=NULL)
{
pre->next=p;
pre=p;
p=p->next;
}
while(q!=NULL)
{
pre->next=q;
pre=q;
q=q->next;
}
return head;
}
可是什么也不显示,运行结果如下图片说明,上面的是其他功能的函数

其他函数补图图片说明

楼主可以参考下面我写的将两个链表连接的函数

 /****实现将两个带头节点的单向链表a,b连接****/
void LinkTwoNode(SeqList *a,SeqList *b)
    {
      SeqList *mPtr = NULL;
      for (mPtr = a;mPtr->next != NULL;mPtr = mPtr->next);
      ;
      mPtr->next = b->next;
      free(b);
      b = NULL;
    }