#include<stdlib.h>
#include<stdio.h>
typedef struct node
{
int data;
struct node *next;
}*Link,LNode;
Link inilink(Link head)
{
head=(Link)malloc(sizeof(struct node));
head->next=NULL;
return head;
/*head-pre=null; 双向链表*/
}
void setLink(Link head)
{/*采用后插入法建立单链表*/
int y,i=0;
Link q,p;
printf("输入数据,当输入0时停止\n");
p=head;
scanf("%d",&y);
while(y!=0)
{
q=(Link)malloc(sizeof(struct node));
q->data=y;
p->next=q;
/*q->pre=p双向*/
p=q;
i++;
scanf("%d",&y);
}
p->next=NULL;
head->data=i;
/*head->pre=NULL;双向*/
}
void printLinkList(Link head)
{/*输出单链表 */
Link p;
p=head;
while(p!=NULL)
{
printf("%6d",p->data);
p=p->next;
}
printf("\n");
}
main()
{
Link ha;
ha=inilink(ha);
setLink(ha);
printLinkList(ha);
printf("\n");
}
c语言单链表的建立
最新推荐文章于 2023-08-02 09:18:05 发布