0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C++创建链表并输出

jf_96884364 来源:jf_96884364 作者:jf_96884364 2023-01-10 15:05 次阅读

使用C++代码创建一个链表并输出:

#include 
#include 
//#include 
//#include 
#include
#include
using namespace std;


//定义一个结构体  ListNode的结构
struct ListNode 
{
      int val;  //当前结点的值用val表示
      struct ListNode *next;  //指向下一个结点的指针用next表示
      ListNode(int x) : val(x), next(NULL) { } //初始化当前结点值为x,指针为空
};

void print(ListNode *head)   //打印输出链表
{
    ListNode *p = head;
    while (p != NULL)
    {
        cout << p->val;
        p = p->next;
    }
}


ListNode* CreateListNode(ListNode* pHead)  // 创建链表
{
    ListNode* p = pHead;                // 声明移动指针,最开始指向头结点               

    for (int i = 1; i < 10; ++i) 
    {
        ListNode* pNewNode;           // 声明链表 pNewNode 来保存数据,pNewNode 就是一个链表的节点
        pNewNode = new ListNode(0);   // 初始化变量 pNewNode

        pNewNode->val = i;            // 将新节点的值赋值为 i
        pNewNode->next = NULL;

        p->next = pNewNode;            // p的下一节点指向这个新的节点,将此节点与头节点连接
        p = pNewNode;    // p节点指向这个新的节点,向后移动指针,以便下一次链接;p一直指向链表最后的一个节点 
    }

    return pHead;
}


int main()
{

    ListNode* head;                     // 声明头节点
    head = new ListNode(0);             // 头节点需要赋值才能调用
    ListNode* p = CreateListNode(head); // 引用头节点创建链表

    print(p);                           //引用打印
    system("pause");

}

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C++
    C++
    +关注

    关注

    22

    文章

    2108

    浏览量

    73636
  • 代码
    +关注

    关注

    30

    文章

    4786

    浏览量

    68555
  • 链表
    +关注

    关注

    0

    文章

    80

    浏览量

    10558
收藏 人收藏

    评论

    相关推荐

    如何在C语言中去创建一种双向链表

    双向链表的结构是由哪些部分组成的?如何在C语言中去创建一种双向链表呢?
    发表于 12-24 06:22

    使用OpenVINO运行C++ API创建输入tensor执行推理遇到的问题求解

    使用 OpenVINO™ 运行时 C++ API 创建输入 tensor 执行推理: ov::Tensor input_tensor = ov::Tensor(input_type
    发表于 08-15 08:22

    C加加建立动态链表

    C加加建立动态链表利用C语言及c++编写程序
    发表于 11-19 13:43 0次下载

    C++结构体与链表的实验报告资料免费下载

    本文档的主要内容详细介绍的是C++结构体与链表的实验报告资料免费下载。 一、目的和要求1. 掌握结构体类型、结构体变量的基本概念;2. 掌握结构体指针、结构体数组的应用;3. 掌握链表的基本概念;4. 掌握
    发表于 05-27 08:00 4次下载
    <b class='flag-5'>C++</b>结构体与<b class='flag-5'>链表</b>的实验报告资料免费下载

    图文详解:C++输出输入

    图文详解:C++输出输入
    的头像 发表于 06-29 14:53 3384次阅读
    图文详解:<b class='flag-5'>C++</b>的<b class='flag-5'>输出</b>输入

    在STM32上创建链表实现LCD滚动显示串口消息

    在STM32上创建链表实现LCD滚动显示串口消息
    发表于 12-06 19:21 18次下载
    在STM32上<b class='flag-5'>创建</b><b class='flag-5'>链表</b><b class='flag-5'>并</b>实现LCD滚动显示串口消息

    双向循环链表创建

    需要注意的是,虽然双向循环链表成环状,但本质上还是双向链表,因此在双向循环链表中,依然能够找到头指针和头节点等。双向循环链表和双向链表相比,
    的头像 发表于 05-24 16:27 2107次阅读

    使用C++创建传感器接口

    在过去的几篇文章中,我们一直在探索开发人员如何与传感器交互开发可重用的驱动程序。在“与现代传感器接口:接口设计”中,我们研究了如何使用 C 设计传感器接口。在本文中,我们将从更面向对象的角度使用 C++
    发表于 07-18 17:50 2015次阅读
    使用<b class='flag-5'>C++</b><b class='flag-5'>创建</b>传感器接口

    C语言_链表总结

    本篇文章介绍C语言链表相关知识点,涉及链表创建、单向链表、循环链表、双向
    的头像 发表于 08-14 09:53 1780次阅读

    C++构建复制二叉树

    使用C++构建一个二叉树复制、输出
    的头像 发表于 01-10 15:17 1018次阅读
    <b class='flag-5'>C++</b>构建<b class='flag-5'>并</b>复制二叉树

    C++自定义二叉树输出二叉树图形

    使用C++构建一个二叉树输出
    的头像 发表于 01-10 16:29 1749次阅读
    <b class='flag-5'>C++</b>自定义二叉树<b class='flag-5'>并</b><b class='flag-5'>输出</b>二叉树图形

    如何使用DevEco Studio创建Native C++应用

    for OpenAtom OpenHarmony (以下简称“OpenHarmony”)创建一个Native C++应用。应用采用“Native C++”模板,实现了通过Node-API调用
    的头像 发表于 02-21 14:30 1419次阅读

    C++的输入流和输出流介绍

    C++的输入流和输出流是C++标准库中的两个重要的流类,分别用于输入和输出数据。在本篇博客中,我们将详细介绍C++的输入流和
    的头像 发表于 04-30 17:58 2095次阅读

    双向循环链表创建代码

    HeadNode; } //创建节点 Node creatNode(int data) { //C语言:malloc + free //C++:new + delete Node* newNode
    的头像 发表于 07-27 11:26 934次阅读
    双向循环<b class='flag-5'>链表</b><b class='flag-5'>创建</b>代码

    如何选择创建c语言和c++

    选择创建 C 语言和 C++ 都需要综合考虑多个因素。在决定使用哪种语言之前,我们需要对这两种语言的特点、优缺点、适用场景、学习成本等进行全面的了解和对比。下面是关于选择创建
    的头像 发表于 11-27 15:58 604次阅读