c语言输出链表函数 c语言输出链表函数怎么输入

c语言 定义一个函数输出链表数据 。#includestdio.h
#include stdlib.h
struct node
{int data;
struct node *next;
};
struct node *create()
{
struct node *p;
p=(struct node *)malloc(sizeof(struct node));
p-next=0;
return p;
}
void show(node*head)
{
head=head-next;
while(head!=NULL)
{
printf("%d\n",head-data);
head=head-next;
}
}
void main()
{
struct node *head,*q,*p,*t;
int i;
int x;
head=create();
for(i=1;i=10;i++)
{
printf("please input data:");
scanf("%d",x);
q=create();
【c语言输出链表函数 c语言输出链表函数怎么输入】q-data=https://www.04ip.com/post/x;
if(i==1)
{
head-next=q;
p=q;
}
else
{p-next=q;
p=q;}
}
show(head);
}
C语言链表输出1.我看这个链表应该是带头的链表,所以for循环前的
p=q-next;应该改成p=q;
2.链表不是数组,楼主好像没有完全理解链表 。
在你的代码基础上改下:
for(i=0;ia;i++)//p++是没有道理的 , 
{
printf("%d\t%d\t",p-num,p-age);//
p=p-next;//用这个来实现查找下一个
}
不过一般情况下不知道链表的长度,可以按照下面方式遍历
while(p)
{
printf("%d\t%d\t",p-num,p-age);//
p=p-next;
}
3.没有释放空间的语句,可以借鉴上述遍历的方式 。
C语言链表 输出C语言里面c语言输出链表函数的链表是一种数据结构
是一种线形c语言输出链表函数的存储结构
链表和数组一样,也是将一组同类型c语言输出链表函数的数据组织在一起c语言输出链表函数的一种数据结构
不同的是
数组采用的是顺序存储,依靠数组的首地址和元素的相对地址(下标)来实现访问 。
优点是访问方便快捷,而缺点是数组是静态的,不利于实现元素的动态增减 。
而链表采用的是离散存储,依靠节点间的指向下一个节点的指针来实现访问 。
其优缺点和数组相反
链表里可以有不同种类型数据
c语言输出链表函数的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于c语言输出链表函数怎么输入、c语言输出链表函数的信息别忘了在本站进行查找喔 。

    推荐阅读