zoukankan      html  css  js  c++  java
  • 10 创建单链表(创建头结点的方式,尾插入初始化赋值)

    #include<stdio.h>
    #include<stdlib.h>
    
    //链表中节点的结构
    typedef struct Link {
        int  data;
        struct Link* next;
    }link;
    
    //链表初始化
    link* initLink(link* head_node) {
        head_node = (link*)malloc(sizeof(link)); //头结点申请空间
        head_node->data = 000; //头结点的数据域是000
        head_node->next = NULL;
    
        link* tmp = head_node; //tmp,保存头结点
    
        //尾插入初始化赋值
        printf("输入若干个值保存到链表中:
    ");
        int num = 0;
        while (num != -1) { //-1代表结束
            scanf("%d", &num);
            link* new_node = (link*)malloc(sizeof(link)); //申请新的结点
            new_node->data = num;
            new_node->next = NULL;
            tmp->next = new_node;  //头结点的指针域指向这个新申请的结点
            tmp = new_node;  //头结点后移
        }
        printf("头指针指向的值是:%d
    ", head_node->next->data);//1
        return head_node;  //将头结点返回
    }
    
    
    void showLink(link* head_node) {
        link* tmp = head_node;  //tmp,保存头结点
        while (tmp->next != NULL) { 
            if (tmp->data == -1) {
                break;
            }
            printf("%d ", tmp->data);
            tmp = tmp->next;
        }
        printf("
    ");
    }
    
    
    void main() {
        link* myheadNode = NULL; //创建头结点
        myheadNode = initLink(myheadNode); //获得经过初始化后的头结点
        printf("初始化链表为:
    ");
        showLink(myheadNode);
        
    }
    

     头结点的数据域是0,也可从第一个结点开始遍历

  • 相关阅读:
    博途Portal TIA(PLC) + Scout (独立)驱动配置 CU320 + PM240-2
    TM41 修改分辨率
    用户注册
    用户名的登录认证
    CSS
    HTML
    python常用模块
    面对对象进阶
    面对对象之绑定方法和非绑定方法
    面对对象之封装
  • 原文地址:https://www.cnblogs.com/shanlu0000/p/12500951.html
Copyright © 2011-2022 走看看