Yan_websying 2022-03-20 15:38 采纳率: 100%
浏览 73
已结题

创建单链表后打印单链表出现问题

使用头插法建立单链表后打印单链表出现以下问题:

img


输入是这个样的:

img


代码是这样的:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<malloc.h>
typedef int Elemtype;
typedef struct Lnode {
Elemtype data;
struct Lnode* next;
}LNODE,LinkList;
LinkList List_HeadInsert(LinkList& L) { //头插法
Lnode
s;
int x;
L = (LinkList)malloc(sizeof(Lnode));
scanf("%d", &x);
while (x != 9999) { //输入9999结束
s=(Lnode*)malloc(sizeof(Lnode));
s->data = x;
s->next = L->next;
L->next = s;
scanf("%d", &x);
}
return L;
}
void printL(LinkList& L) {
L = L->next;
while (L != NULL) {
printf("%d\n",L->data);
L = L->next;
}
}

int main() {
LinkList L;
List_HeadInsert(L);
printL(L);
return 0;

}

请问为社么出现这样的问题?

  • 写回答

1条回答 默认 最新

  • SmallAntJ 2022-03-20 17:09
    关注
    typedef struct Lnode {
    Elemtype data;
    struct Lnode* next;
    }LNODE,LinkList;
    

    这里的LinkList应该要定义成结构体指针,要改成

    typedef struct Lnode {
    Elemtype data;
    struct Lnode* next;
    }LNODE, *LinkList;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月28日
  • 已采纳回答 3月20日
  • 创建了问题 3月20日