删除节点

链表的节点删除有两种情况
一、删除头节点
将头结点变为第二个节点即可。

二、删除非头节点
将要删除的节点的前一个节点指向到要删除的节点的下一个节点。

#include <stdio.h>
//定义结构体
struct Test
{int data;struct Test *next;//链表有一个指向自己的指针
};
//输出链表数据
void printLink(struct Test *head)
{struct Test *piont = head;while(piont != NULL){printf("%d ",piont->data);piont = piont->next;}putchar('\n');
}
struct Test *delLinkNode(struct Test *head,int data)
{struct Test *point = head;if(point->data == data){head = head->next;printf("deletet succeed!\n");return head;}while(point->next != NULL){if(point->next->data == data){point->next = point->next->next;  printf("deletet succeed!\n");return head;}//跳到下一节点point = point->next;}printf("delete faulat!\n");return head;
}int main()
{//定义结构体变量struct Test *head = NULL;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};struct Test new = {100,NULL};//指向对应节点地址形成链表t1.next = &t2;t2.next = &t3;t3.next = &t4;t4.next = &t5;head = &t1;//输出printLink(head);head = delLinkNode(head, 1);printLink(head);head = delLinkNode(head, 3);printLink(head);return 0;
}

执行结果:

C语言学习笔记—链表(四)链表的删除相关推荐

  1. Ink脚本语言学习笔记(四)

    目前想要基于Ink脚本语言和Unity新的UIToolkit做一套对话系统,本文对Ink脚本语言的使用方式做一下介绍和总结 Ink脚本语言学习笔记(三) 四.进阶故事流控制(Advanced Flow ...

  2. go语言学习笔记(四):调度器基础-爬上那座山

    目录 调度器概述 调度器初始化 第一个goroutine,main goroutine的创建 第一个goroutine,main goroutine的调度 非main goroutine的创建.退出以 ...

  3. R语言acres92 region_R语言学习笔记(四)

    R语言支持很多图形,并且有些图形是非常少见的,可能也因为自己不是专业弄数据分析的所以就孤陋寡闻了,总结下目前学习到的图形. 条形图 这个图比较常见,很多数据统计软件都支持这种图形,这种图形可以很好的展 ...

  4. go struct 静态函数_Go语言学习笔记(四)结构体struct 接口Interface 反射reflect...

    加 Golang学习 QQ群共同学习进步成家立业工作 ^-^ 群号:96933959 结构体struct struct 用来自定义复杂数据结构,可以包含多个字段(属性),可以嵌套: go中的struc ...

  5. R语言学习笔记(四)参数估计

    文章目录 写在前面 点估计 极大似然估计 可求出解析解 不易或无法求出解析解 矩估计 区间估计 一个正态总体的置信区间 σ2\sigma^2σ2已知时,μ\muμ的区间估计 σ2\sigma^2σ2未 ...

  6. C语言学习笔记(四)

    今天研究了半天Java的输入输出方法,发现它通过某种方式就可以实现类似C语言的输出,于是我脑子一抽搞了一个高精度的加法,因为是我看了原理自己写出来的,所以代码可能很繁杂,还有数据结束的判断方法也十分. ...

  7. 易语言学习笔记(四)--js解密,图形验证码,滑块,鱼刺多线程

    W3school js加密,解密 抓包分析找数据(关键字:password.MD5.RSA.encrypt) 断点调试,扣代码(点链接,跳到加密函数,把函数抠出来,用JS调试工具加解密) get请求头 ...

  8. 梓益C语言学习笔记之链表&动态内存&文件

    梓益C语言学习笔记之链表&动态内存&文件 一.定义: 链表是一种物理存储上非连续,通过指针链接次序,实现的一种线性存储结构. 二.特点: 链表由一系列节点(链表中每一个元素称为节点)组 ...

  9. Windows进程与线程学习笔记(四)—— 等待链表调度链表

    Windows进程与线程学习笔记(四)-- 等待链表&调度链表 要点回顾 33个链表 等待链表 实验:分析等待链表中的线程所属的进程 第一步:查看所属线程结构体: 第二步:查看所属进程结构体 ...

  10. 《Go语言圣经》学习笔记 第四章 复合数据类型

    <Go语言圣经>学习笔记 第四章 复合数据类型 目录 数组 Slice Map 结构体 JSON 文本和HTML模板 注:学习<Go语言圣经>笔记,PDF点击下载,建议看书. ...

最新文章

  1. JBoss Seam 3.0.0.Beta2 发布
  2. linux安装12c oem,OEM12C(12.1.0.5)安装插件监控mysql(linux)
  3. 流行的开源数据挖掘tool
  4. idea远程调试修改代码_IDEA远程调试(Remote Debug)Java代码指南
  5. mysql用户添加_MySQL用户添加
  6. iOS 自定义控件 progressView(环形进度条)
  7. 深入了解C++变量类型有哪些
  8. 2022电工(中级)考试模拟100题模拟考试平台操作
  9. 绕过卡巴斯基通过RPC控制lsass注入DLL
  10. 厉害!一流大学本科生,获42万奖学金!
  11. UE4_C++_自定义细节面板_Customizing detail panels
  12. 无法更新运行时文件夹共享状态_关于iPadOS 13.4更新的5件事
  13. java匿名内部类,什么是匿名内部类,如何定义匿名内部类,如何使用匿名内部类?
  14. 阿里云天池大赛赛题解析——机器学习篇 | 留言赠书
  15. 【git】eclipse使用git的过程中的问题,提示rejected - non-fast-forward错误的解决办法
  16. Lei ❤函数的初识
  17. 深度学习 一 :使用BERT做 NLP分类任务
  18. 单片机用c语言开关点亮一盏灯,用PLC设计用一个开关控制8个灯,每5S逐个点亮,并循环...
  19. 【踩坑实录】hive删除字段报错
  20. 吉尼斯计算机打字记录,吉尼斯世界纪录打字

热门文章

  1. 浅尝Pytorch自动混合精度AMP
  2. 使用idm下载新闻视频(bbc)及百度云盘内容
  3. thinkPHP基于php的衡水游泳馆管理系统--php-计算机毕业设计
  4. Go语言处理Windows系统的图标ICO文件(上)
  5. ATECLOUD智能云测试平台-测试测量/仪器程控/工业控制/上位机开发软件
  6. The right to contest automated decisions under the General Data Protection Regulation: Beyond the so
  7. css3中属性前缀(-moz、-ms、-webkit、-o-)
  8. MTK开发之cpu核开关与频率调节
  9. 解决 WIDOWS 2003 SERVER 玩不了3D游戏
  10. html5判断出生日期,出生时间看五行,出生日期查五行属性?