加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 湛江站长网 (https://www.0759zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > 正文

C++中链表操作实例分析

发布时间:2021-01-08 07:30:55 所属栏目:创业 来源:网络整理
导读:副标题#e# 链表概述 链表是一种常见的重要的数据结构。它是动态地进行存储分配的一种结构。它可以根据需要开辟内存单元。链表有一个“头指针”变量,以head表示,它存放一个地址。该地址指向一个元素。链表中每一个元素称为“结点”,每个结点都应包括两个

/*
===========================
 功能:输出节点
 返回: void
===========================
*/
void Print(struct student *head)
{
    struct student *p;
    printf ("nNow,These %d records are:n",n);
    p = head;
    if(head != NULL)        //只要不是空链表,就输出链表中所有节点
    {
        printf("head is %on",head);     //输出头指针指向的地址
        do
        {
            /*
            输出相应的值:当前节点地址、各字段值、当前节点的下一节点地址。
            这样输出便于读者形象看到一个单向链表在计算机中的存储结构,和我们
            设计的图示是一模一样的。
            */
            printf ("%o   %d   %5.1f   %on",p,p->num,p->score,p->next);
            p = p->next;        //移到下一个节点
        }
        while (p != NULL);
    }
}/*
===========================
 功能:输出节点
 返回: void
===========================
*/
void Print(struct student *head)
{
    struct student *p;
    printf ("nNow,p->next);
            p = p->next;        //移到下一个节点
        }
        while (p != NULL);
    }
}

单向链表的删除图示:
    ---->[NULL]
    head

    图3:空链表

   从图3可知,空链表显然不能删除

   ---->[1]---->[2]...---->[n]---->[NULL](原链表)
   head   1->next  2->next   n->next

   ---->[2]...---->[n]---->[NULL](删除后链表)
   head   2->next   n->next

(编辑:PHP编程网 - 湛江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读