C语言 单向链表创建

单向链表的创建:

1、首先是创建一个头结点,他的数据域可以不设置,也可以设置成记录链表的长度;

2、创建一个尾节点;

3、创建一个要插入的节点;

尾节点的作用是作为新节点的插入点,最后使最后插入的节点是尾节点;

初始化链表时使尾节点指向头结点,因为刚开始只有一个节点,即头结点就是尾节点;


#include <stdio.h>
#include <stdlib.h>

#define LEN   8

 struct node
{       
        int name;
        struct node  *next;
};
typedef struct node *list;

int main()
{       
        list head;
        list end;
        list p_new;
        int i;
        
        if( (head = (list)malloc(sizeof(list))) ==NULL)
        {       
                printf("malloc head fail!\n");               
        }                                                    //给头结点分配一个list类型的空间 
        
        end = head; 
        end->next = NULL;
        
        
        for(i=0; i<LEN; i++)
        {       
                
                if((p_new = (list)malloc(sizeof(list))) == NULL)
                {       
                        printf("malloc p_new fail!");
                }
                
                p_new->name = i+1;
                end->next = p_new;
                p_new->next = NULL;
                end = p_new;
         
        }
        return 0;
}
                                                      
创建一个八个节点的链表.

 


  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值