尾插法建立单链表

今天我分享的是以尾插法建立单链表,至少插入5个不同的数据,完成输入与输出。

单链表是一种常见的数据结构,它由一系列节点组成,每个节点包含两部分:数据域和指针域。数据域用于存储节点的数据信息,指针域则存储下一个节点的地址(或称为链接)。通过这种指针的链接,各个节点依次连接起来形成链表。单链表的头节点用于标识链表的起始位置,尾节点的指针域通常为 NULL ,表示链表的结束。

尾插法是一种在链表中添加节点的方法。在链表中,每个节点包含数据部分和指向下一个节点的指针。尾插法就是每次将新节点添加到链表的末尾。

下面就是尾插法建立单链表的源代码以及运行结果。

#include <stdio.h>

#include <stdlib.h>

#include <malloc.h>

typedef  int  DataType;

typedef  struct  linknode  

{

   DataType   data;

   struct  linknode   *next;

} LinkList;

LinkList  *InitList();

void CreateListL(LinkList  *head,int n);

void DispList(LinkList *head);

int main()

{

       LinkList  *head;

       head=InitList();

       CreateListL(head,5);

       DispList(head);

       return 0;

}

LinkList  *InitList()

{  

    LinkList  *head;

    head=(LinkList*)malloc(sizeof(LinkList));

    head->next=NULL;

    return head;                   

}

void CreateListL(LinkList  *head,int n)

   LinkList  *s,*last;

   int i;

   last=head;             

   printf("请输入%d个整数:",n);

   for(i=0;i<n;i++)

   {  s=(LinkList *) malloc(sizeof(LinkList)); 

      scanf("%d",&s->data);           

      s->next=NULL;          

      last->next=s;          

      last=s;                 

   }

   printf("建立链表操作成功!");

}

void DispList(LinkList *head)

   LinkList *p;

   p=head->next;        

   while(p!=NULL)       

   {

       printf("%5d",p->data);

       p=p->next;

   }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值