【求助】单链表建立与输出错误?

调用初始化链表函数及如下代码中InitLinkList(L,6)后,输入时进仅仅输入了3个元素就直接跳出了输出函数。
请大佬帮忙答疑!!!

图片说明

#include<stdio.h>
#include<stdlib.h>

typedef struct LNode{
    char data;
    struct LNode *next;
}LNode, *LinkList;

void InitLinkList(LinkList &L,int n){
    L=(LinkList)malloc(sizeof (LNode));
    L->next=NULL;
    LinkList head,tail,p;
    head=L;
    tail=L->next;
    printf("请输入链表元素\n");
    for(int i=1;i<=n;i++){
        p=(LinkList)malloc(sizeof(LNode));
        scanf("%c",&p->data);
        head->next=p->next;
        head->next=p;
        head=head->next;
        printf("%c",p->data);
    }
}

void PutLinkList(LinkList &L){
    printf("————链表如下————\n");
    LinkList p=L->next;
    while(p){
        printf("%c!",p->data);
        p=p->next;
    }
}

void main(){
    LinkList L;
    InitLinkList(L,6);
    PutLinkList(L);
}
查看全部
wo1874005418
编程小白——
2020/02/03 11:40
  • c语言
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

1个回复