wovulizhil 发表于 2019-10-17 11:18:15

请问大家为什么这样设置的单向链表无法正常输出

void CreateList_L(LinkList L) //逆顺位输入n个值,建立单向表
{
    LinkList p;
    int i ;
    for (i = 2; i > 0; i--)//每次循环创造一个节点;
    {
      p = (LinkList*)malloc(sizeof(LNode));
      scanf_s("%d",&(p->data));
      p->next = L;
      L = p;
    }
    L->next = NULL;
}
int main()
{
    LinkList L,p ;
    L = (LinkList*)malloc(sizeof(LNode));
    p = L;
    int n = 2, i;
    CreateList_L(L);
    for (i = 1; i < 2; i++)
    {
      printf("%d", p->data);
      p = p->next;
    }
    return 0;
}


jackz007 发表于 2019-10-17 11:39:45

本帖最后由 jackz007 于 2019-10-17 11:55 编辑

      你在 main() 里建立的首节点 L 完全没有赋任何值,哪里来的 p -> data 和 p -> next ?,又哪里来的链表?
      楼主,请解释一下,什么是 "逆顺位" ?

kin3z 发表于 2019-10-20 14:42:57

本帖最后由 kin3z 于 2019-10-20 14:45 编辑

看题目,搂住的思路是不是想创建一个链表,对另一个链表作反向顺序的复制?
请放上题目和你的完整代码吧,否则能帮的有限。
页: [1]
查看完整版本: 请问大家为什么这样设置的单向链表无法正常输出