将两个递增单链表合并成一个新的递增单链表

主函数怎么改啊教教我

将两个递增单链表合并成一个新的递增单链表

#include
#include

typedef struct Node
{
    int data;
    struct Node *next;
}LNode,*LinkList;

LinkList Creat_LinkList1() 
{
     LinkList L=NULL;
     LNode *s;
     int x;
     scanf("%d",&x);
     while(x!=0)
     {
         s=(LNode*)malloc(sizeof(LNode));
         s->data=x;
         s->next=L;
         L=s;
         scanf("%d",&x);
     }
     return L;
}
LinkList merge(LinkList &A,LinkList &B,LinkList &C)
{
    LNode *p,*q,*s;
    p=A->next;q=B->next;
    C=A;
    C->next=NULL;
    free(B);
    while (p&&q)
    {
        if(p->datadata)
        {
            s=q;q=q->next;
        }
        else
        {
            s=q;q=q->next;
        }
        s->next=C->next;
        C->next=s; 
    }
    if(p==NULL)p=q;
    while(p)
    {
        s=p;p=p->next;
        s->next=C->next;
        C->next=s;
    }
    return C;
}

int main()
{
    printf("请输入表A:");
    LinkList A=Creat_LinkList1();
    printf(A);
    printf("请输入表B:");
    LinkList B=Creat_LinkList1();
    printf(B);
    printf("请输入表C:");
    LinkList C=merge(LinkList &A,LinkList &B,LinkList &C)
    printf(C);
    return 1;
 } 

img

好家伙,printf不能这么用的。你要再写一个打印链表的函数才行。