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++
    +关注

    关注

    21

    文章

    2066

    浏览量

    72900
  • 代码
    +关注

    关注

    30

    文章

    4556

    浏览量

    66800
  • 链表
    +关注

    关注

    0

    文章

    80

    浏览量

    10464
收藏 人收藏

    评论

    相关推荐

    C语言单向链表

    strName[16];//用指针的话会出访问冲突异常 struct NODE *next;};//创建一个具有n个节点的链表,从键盘输入数据将其初始化,返回链表的首节点指针str
    发表于 05-22 15:53

    玩转C语言链表-链表各类操作详解

    ,它称为“表尾”,它的地址部分放一个“NULL”(表示“空地址”),链表到此结束。  链表的各类操作包括:学习单向链表创建、删除、 插入(无序、有序)、
    发表于 09-18 13:30

    Qt Creator如何创建C++项目?

    Qt Creator如何创建C++项目
    发表于 11-09 08:54

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

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

    如何去实现在Windows ARM架构下运行调试C/C++

    系统变量path中重新进入 Visual Studio Code 中,创建一个新的文件夹,在文件夹中创建一个新的C++文件例如一个简单的 Hello World#includeint main(){ std::cout
    发表于 05-12 16:17

    使用C++项目的正确方法是什么?

    在 STM32CubeIDE 中,我创建了一个 C++ 项目。但是 `main.c` 仍然以 .c 扩展名生成,使用
    发表于 02-07 08:34

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

    简介本篇主要介绍如何使用DevEco Studio for OpenAtom OpenHarmony (以下简称“OpenHarmony”)创建一个Native C++应用。应用采用“Native
    发表于 02-22 14:24

    使用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>的实验报告资料免费下载

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

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

    双向循环链表创建

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

    C语言_链表总结

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

    双向循环链表创建代码

    ; //保存下一个数据元素的地址 struct node * prev; //保存上一个数据元素的地址 }Node; //创建表头表示链表 Node* creatList() { Node * HeadNode
    的头像 发表于 07-27 11:26 711次阅读
    双向循环<b class='flag-5'>链表</b><b class='flag-5'>创建</b>代码

    如何创建链表

    实际中经常使用的一般为带头双向循环链表。 单链表1 # include # include typedef struct node { int data; //"数据域" 保存数据元素 struct
    的头像 发表于 07-27 16:05 939次阅读
    如何<b class='flag-5'>创建</b>单<b class='flag-5'>链表</b>