zoukankan      html  css  js  c++  java
  • 14 求链表的表长

    /*求表长*/
    #include<stdio.h>
    #include<stdlib.h>
    
    //链表中节点的结构
    typedef struct Link {
        int  data;
        struct Link* next;
    }link;
    
    //链表初始化
    link* initLink(link* phead) {
        link* first_node = (link*)malloc(sizeof(link));//创建第一个节点
        //第一个结点先初始化
        printf("请输入第一个结点的值:
    ");
        int firstNum = 0;
        scanf("%d", &firstNum);
        first_node->data = firstNum;
        first_node->next = NULL;
        phead = first_node;//头指针指向第一个节点
    
        //尾插入初始化赋值
        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;
            first_node->next = new_node;  //第一个结点的指针域指向这个新申请的结点
            first_node = new_node;  //第一个结点后移
        }
        printf("头指针指向的值是:%d
    ", phead->data);//1
        return phead;  //将指向第一个结点的头指针返回
    }
    
    
    void showLink(link* phead) {
        link* tmp = phead;
        while (tmp != NULL) {
            if (tmp->data == -1) {
                break;
            }
            printf("%d ", tmp->data);
            tmp = tmp->next;
        }
        printf("
    ");
    }
    
    
    //求链表的表长
    int getLinkLength(link* phead) {
        link* tmp = phead;
        int len = 0;
        while (tmp != NULL) {
            if (tmp->data == -1) {
                break;
            }
            len++;
            tmp = tmp->next;
        }
        return len;
    }
    
    
    void main() {
        link* myhead = NULL; //创建头指针
        myhead = initLink(myhead); //获得经过初始化后的头指针
        printf("初始化链表为:
    ");
        showLink(myhead);
        printf("表的长度是:%d
    ", getLinkLength(myhead));
    }
    

  • 相关阅读:
    paramiko连接并配置交换机
    Paramiko-sftp上传和下载文件
    常做的性能测试包含哪些?
    术语?
    什么是【负载测试】和【压力测试】?
    什么是性能?
    web服务器
    兼容性测试?
    可用性测试?
    什么是【回归测试】?
  • 原文地址:https://www.cnblogs.com/shanlu0000/p/12459811.html
Copyright © 2011-2022 走看看