C语言数据结构之简单实现链表的建立及打印
链表是数据结构中非常重要的一种存储结构,相较非线性结构树、图而言,链表有着更为广泛的应用。C语言实现链表的建立与打印如下:
1、结点的结构体定义
链表的每一个结点都包括数据域和指针域两个部分,其定义如下:
typedef struct Node{
int data;//数据域
struct Node *next;//指针域
}SNode,*Linkist;
2、建立单链表
利用尾插法建立链表是最常用的方法,需要用到两个结构体指针p和r,其算法设计如下:
Linkist CreateNode(){
int num;
int i=1;
Linkist L;//头指针
Linkist p,r;
L=(SNode *)malloc(sizeof(SNode));
L->next=NULL;//初始化
p=L;
printf("please input %d number:(数字0结束输入)\n",i);
scanf("%d"