加入此时我们有 1,2,3,4,5 五个节点,需要在2节点和3节点之间插入一个节点,新节点是 100。

思路是:

  1. 先让 100->next = 2->next;

  1. 然后 2->next = 100;

#include <stdio.h>struct Test
{int data;struct Test *next;
};
// 遍历链表并输出
void printLink(struct Test *head)
{struct Test *p = head;while(p != NULL){printf("%d ",p->data);p = p->next;}
}
// 指定节点后方插入
int insertFromBehind(struct Test *head, int data, struct Test *new)
{struct Test *p = head;while(p != NULL){if(p->data == data){new->next = p->next;p->next = new;return 1;}p = p->next;}return 0;
}int main()
{struct Test t1 = {1, NULL};struct Test t2 = {2, NULL};struct Test t3 = {3, NULL};struct Test t4 = {4, NULL};    struct Test t5 = {5, NULL};t1.next = &t2;t2.next = &t3;t3.next = &t4;t4.next = &t5;    struct Test t6 = {100, NULL};    printf("use t1 to print three nums\n");    printLink(&t1);putchar('\n');ret = insertFromBehind(&t1, 2, &t6);printLink(&t1);putchar('\n');return 0;
}

c语言链表之链表后面插入节点相关推荐

  1. 寒假自主学习项目一 - 链表(6、插入节点)

    /**Copyright(c)2014,烟台大学计算机学院*All rights reserved.*文件名称:test.cpp*作者:满星辰*完成日期:2014年 2月 4日*版本号:v1.0*问题 ...

  2. 单链表的算法之尾部插入节点

    单链表的算法之插入节点 1.访问链表中各个自己的指针 (1)只能用头指针,不能用各个节点自己的指针.因为实际中我们保存链表不会保存各个节点的指针,只能通过头指针来访问链表节点. (2)前一个节点内部的 ...

  3. C语言已排序链表插入新节点保持排序状态(附完整源码)

    C语言已排序链表插入新节点保持排序状态 C语言已排序链表插入新节点保持排序状态完整源码(定义,实现,main函数测试) C语言已排序链表插入新节点保持排序状态完整源码(定义,实现,main函数测试) ...

  4. c语言在尾部添加新节点,在单链表最后插入节点

    要在单链表的最后插入节点,需要提及以下两种情况. 新节点添加到空链表中 新节点添加到链表的末尾 1. 新节点添加到空链表中 如果满足条件(head == NULL). 因此,只需要在C语言中使用mal ...

  5. (C语言)写一个函数insert,用来向一个动态链表插入节点

    写一个函数insert,用来向一个动态链表插入节点 用creat,print,del,insert四个函数,编写主函数,先后调用这些函数,实现链表的建立,输出,删除和插入,从主函数中指定需要删除和插入 ...

  6. 双链表中插入节点(C语言实现)

    文章目录 1. 相关背景介绍 1.1 双链表概念 1.2 双链表的优势与劣势 1.3 双链表插入节点的位置 2. 不同位置插入数据 2.1 在DLL的前端添加节点 2.2 在给定节点之前添加节点 2. ...

  7. 双链表(插入节点操作)

    在双链表L中第i个位置插入值域为e的结点. 双链表的存储结构定义: typedef struct DLinkList{int data;DLinkList * prior;DLinkList * ne ...

  8. 用c语言实现单链表的初始化,建表,查找,求长度,插入,删除等操作,【YTU+2430+C语言习题+链表建立+插入+删除+输(5)...

    的打印.判断链表是否为空.计算链表长度.插入节点.删除节点.删除整个链表.(2) 线性表adt顺序存储实现中的创建.查找.插入和删除等基本操作及相关算法,线性表adt链式存储实现中单链表.循环链表和双 ...

  9. C语言数据结构篇——单循环链表的创建,插入,节点删除,打印等操作

     作者名:Demo不是emo  主页面链接:主页传送门 创作初心:对于计算机的学习者来说,初期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CS ...

  10. C语言数据结构篇——双链表的创建,插入,节点删除,打印等操作

    作者名:Demo不是emo  主页面链接:主页传送门 创作初心:对于计算机的学习者来说,初期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CSD ...

最新文章

  1. 每次开机都出现Trojan.DL.Dagi.b 病毒的问题
  2. vs-halcon-大恒相机配置
  3. 04 - JavaSE之异常处理
  4. linux cat EOF使用示例
  5. 关于表单回车自动提交的讨论
  6. Linux SPI框架
  7. python中的计算符号
  8. 移动云2020 H1营收44.57亿元,同比增长556.4%
  9. redis面试常问--缓存雪崩
  10. Vue:中向对象中添加数据
  11. vcpkg编译库位数总结
  12. SpringBoot Kafka工具类封装
  13. Unity2D入门(二):图层layer和角色建立
  14. 三色球问题python_面试题-三色球问题
  15. Windows注册表内容详解(转载)
  16. Win10家庭版远程桌面工具RDP Wrapper出现Not listening解决方案
  17. Power BI Echart Tree开发自定义可视化对象
  18. 童瑶正式成为NEIWAI内外品牌大使
  19. 学微服务必经之路——Nacos新手入门(上)
  20. 使用IDEA 自带的数据库脚本导出

热门文章

  1. android 工厂模式
  2. CBC中更新TChart控件
  3. python抽签代码_python3 实现口罩抽签的功能
  4. 滚动数组(简单说明)
  5. 音频的播放、简单音乐播放器
  6. 罗永浩的人设,这次要彻底崩了?
  7. Java设计模式——单一责任原则(实例)
  8. 怎么玩闲鱼月入过万?【副业干货】
  9. 苹果平板的触控笔哪款好用?电容笔性价比高的品牌
  10. [Leetcode] 74. Search a 2D Matrix 解题报告