题目:

创建单链表(4)

程序分析

  • 带头结点的尾插法创建链表

    尾插法顾名思义就是从结点的尾部进行插入,头结点不动,后面的元素依次加入,因为头结点的data中没有存放任何元素,故打印出来是任意存放的值

主要代码

main.c

//创建结点类型
typedef struct Node{int data;struct Node *next;
}Node,*LinkList;
//带有头结点的尾插法创建链表
LinkList CreateLinkList(int n){LinkList head=(Node*)malloc(sizeof(Node));head->next=NULL;Node *p;Node *temp=head;int i;for (i = 0; i < n; i++){p=(Node*)malloc(sizeof(Node));scanf("%d",&p->data);temp->next=p;temp=p;}temp->next=NULL;return head;
}
void Print(LinkList L){while (L){printf("%3d",L->data);L=L->next;}
}
int main(){int n;printf("请输入你要创建链表的结点数目:\n");scanf("%d",&n);LinkList L=CreateLinkList(n);printf("目前链表中元素为:\n");Print(L);system("pause");return 0;
}

运行结果

今日巩固

  1. 链表的带头结点尾插法的创建以及打印

注意

打印出来的第一个地址元素不是程序错误,而是因为头结点的data中没有存放元素所致

每日程序C语言42-带头结点的尾插法创建链表相关推荐

  1. 每日程序C语言40-不带头结点的尾插法创建链表

    题目: 创建一个链表(2) 程序分析 不带头结点的尾插法创建链表 这个是按照顺序插入的,尾插法,顾名思义就是从第一个节点的尾部插入,创建第一个节点之后,在循环中让前面的节点的next指针存储后面节点的 ...

  2. 头插法和尾插法创建链表(有无头结点)

    头插法和尾插法创建链表(有无头结点) 文章目录 头插法和尾插法创建链表(有无头结点) 1 头插法 1.1头插法建表规则: 1.2 头插法建表代码实现 2 尾插法 2.1 尾插法建表规则: 2.2 尾插 ...

  3. 每日程序C语言39-不带头结点的头插法创建链表

    题目: 创建一个链表(1) 程序分析 不带头结点的头插法创建链表 首先创建的结点会出现在整个链表的最末端,所以数据的写入是逆序的 主要代码 main.c //创建结点类型 typedef struct ...

  4. 每日程序C语言41-带头结点的头插法创建链表

    题目: 创建单链表(3) 程序分析 带头结点的头插法创建链表 带有头结点的链表,头结点中的data中没有放置任何元素,头结点存储的地址就是链表首元素存储的地址.头插法顾名思义就是从链表的头部进行插入, ...

  5. 带头结点的头插法和尾插法创建单链表

    首先我们先定义一个链表的结构体. typedef int DataType; typedef struct Node {DataType data;struct Node* next; }*SLNod ...

  6. c语言 链表建立头插法尾插法,单链表的创建(头插法和尾插法)

    单链表的创建分为头插法和尾插法,头插法是不断地向头结点插入新的结点.这样会使你所插入的结点值呈现逆序,所以头插法也可以实现单链表的逆置.尾插法是不断地向插入的新元素之后再插入新的元素.需要注意的是头插 ...

  7. C语言的双向链表头插法和尾插法,指定节点删除

    文章目录 前言 头插法 尾插法 删除节点 测试代码如下 前言 双向链表和单链表的唯一区别就是多个一个指针域而已,该指针域可以访问链表的上一个节点. 关于构造双向链表的过程我们常见的有两种方法,和单链表 ...

  8. C语言头插法尾插法创建单链表

    前言 链表 [Linked List]:链表是由一组不必相连[不必相连:可以连续也可以不连续]的内存结构 [节点],按特定的顺序链接在一起的抽象数据类型. 下面介绍单链表的创建: 创建节点 链表是由一 ...

  9. 每日程序C语言44-反向输出一个链表(递归)

    题目: 反向输出一个链表-递归 程序分析 只需要反向输出即可,所以我们可以使用栈的特点,进行递归调用 递归过程如下: 主要代码 main.c typedef struct Node{int data; ...

最新文章

  1. [Android问答] 开发环境问题集锦
  2. text-overflow
  3. BZOJ4855 : [Jsoi2016]轻重路径
  4. 持续集成配置之Nuget
  5. mysql 表ful,你所不知的table is full那些事
  6. laravel修改.env不生效原因以及解决办法
  7. python输出总字符个数_python每次处理固定个数的字符的方法总结
  8. Android - get email attachment name in my application
  9. 数据结构笔记(四)-- 静态链表实现
  10. 大数据治理会遇到哪些难题
  11. golang 在 windows 下编译出 linux 二进制可执行文件的软件套装合集 [go 1.7.3环境]
  12. python微信聊天机器人_教你用Python创建微信聊天机器人
  13. UDS协议(车辆控制单元诊断系统开发架构及DID读取数据流程)
  14. WPF 程序加载PGIS性能问题
  15. 在国外开通了漫游 显示无服务器,中国移动也开通国际漫游为什么在国外无服务?...
  16. 基于Web的建筑智能化系统集成组态软件的设计与应用
  17. Early stopping conditioned on metric `val_loss` which is not available. Available metrics are: loss,
  18. Swin Transformer理论讲解
  19. webpy使用说明(二)
  20. 在Excel表格中插入函数,利用公式进行计算

热门文章

  1. S8 Linux磁盘与文件系统管理命令
  2. linux 基础 文件系统 用户权限
  3. php日志导出oracle,一个php导出oracle库的php代码
  4. 《云原生人才计划之Kubernetes 技术图谱》发布!
  5. 在 Kubernetes 上弹性深度学习训练利器 - Elastic Training Operator
  6. 从DevOps到AIOps,阿里如何实现智能化运维?
  7. 校园二手交易平台的开发和利用
  8. 剑与远征恶魔英雄瑟可斯,我们认识一下他的技能
  9. Linux Shell 通配符、元字符、转义符使用实例介绍
  10. v-charts修改点击图例事件,legendselectchanged