数据结构, 如何将一个数用尾插法插入到链表中,下面是代码,请大神指出哪里出了问题谢谢

#include<stdio.h>#include<stdlib.h>structnode{intdata;structnode*next;};structnode*cr... #include <stdio.h>
#include <stdlib.h>

struct node
{
int data;
struct node *next;
};

struct node *createlist()
{
struct node *head=NULL;
head=(struct node *)malloc(sizeof(struct node));
head->data=0;
head->next=NULL;
return head;
}

int insertlist(struct node *head,int num)
{
struct node *p,*r;
p=(struct node *)malloc(sizeof(struct node));
r=head;
p->data=num;
r->next=p;
r=p;
}

int showlist(struct node *head)
{
struct node *temp;
temp=head->next;
while(temp)
{
printf("%d\n",temp->data);
temp=temp->next;
}
return 0;
}

int main()
{
struct node *head;
head=createlist();
insertlist(head,9);
insertlist(head,8);
insertlist(head,7);
insertlist(head,5);
showlist(head);
}
展开
 我来答
chmwh1992
2015-04-05 · TA获得超过1126个赞
知道小有建树答主
回答量:475
采纳率:100%
帮助的人:536万
展开全部
插入函数有问题,首先设置一个指针,移动指针让该指针指向最后一个结点,然后再插入新节点
int insertlist(struct node *head,int num)
{
struct node *p,*r=head;
while(r->next)r=r->next;
p=(struct node *)malloc(sizeof(struct node));
p->data=num;
p->next=NULL;
r->next=p;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式