注册 登录
编程论坛 数据结构与算法

大神帮帮忙,运用尾插法建立单链表的时候,出了一点小问题,帮帮看一看

天马星空101 发布于 2019-10-27 16:15, 2247 次点击
#include<stdio.h>
#include<stdlib.h>
typedef struct node{                         //尾插法建立链表
 
    int data;
    struct node * next;
}Node,*List;

typedef List PreNode;
int main()
{
    int i,j;
    PreNode p,r,head;
    head=(Node*)malloc(sizeof(Node));
    head->next=NULL;
    r=head;
    printf("请输入5个数:\n");
    for(i=0;i<5;i++)
    {
        p=(PreNode)malloc(sizeof(Node));
        scanf("%d",&p->data);
        p->next=NULL;
        r->next=p;
        p=r;
     }
     
  
     p=head->next;
     while(p)
     {
         printf("%d \n",p->data);
         p=p->next;
     }

     return 0;
}
只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2019-10-27 16:18编辑过]

1 回复
#2
n老庄2019-11-07 23:40
你for循环里面的p=r;错了,
应该是r=p;
由于你采用尾插法,你要保证r是指向表尾的
1