C语言链表详解

* 11.10 用typedef 为类型定义新名字 除可直接使用C提供的标准类型和自定义的类型(结构、共用、枚举)外,也可使用typedef定义已有类型的别名。该别名与标准类型名一样,可用来定义相应的变量。 定义已有类型别名的方法如下: (1)按定义变量的方法,写出定义体; (2)将变量名换成别名; (3)在定义体最前面加上typedef。 * 11.10 用typeded 为类型定义新名字 任何已有的类型可以重新命名 typedef long integer; //将 long 重新命名为 integer,使得 integer 和 long 同等使用 可以和新类型定义一起定义名字 typedef int ARR[10] ; // 定义了一个数组名 ARR,它是具有10个元素的整型数组类型 typedef struct{ int num; float score; } S; /*定义结构体别名为S*/ STUDENT stu1; * 讨论:typedef 和 #define 说明: (1)用typedef只是给已有类型增加1个别名,并不能创造1个新的类型。就如同人一样,除学名外,可以再取一个小名(或雅号),但并不能创造出另一个人来。 (2)typedef与#define有相似之处,但二者是不同的:前者是由编译器在编译时处理的;后者是由编译预处理器在编译预处理时处理的,而且只能作简单的字符串替换。 * struct TM { int x,y; // 结构TM的成员,x,y为整数型 struct TM * next // 结构TM的成员,属TM型 } 下面的表是马的跳步方案,从左下角跳到右上角 结点 n1 n2 n3 n4 n5 n6 n7 x y 0 0 1 2 2 4 4 3 6 4 7 2 8 4 结构体与共体例子 * 8 4 NULL NULL为空地址 下面是形成链表的一个参考程序 2 4 &n4 1 2 &n3 0 0 &n2 &n1 head * // 结构1.c #include // 预编译命令 #define null 0// 定义空指针常量 struct TM// 定义结构TM { int x,y;// 整型变量x,y struct TM *next;// 指向TM结构的指针 }; void main()// 主函数 {// 主函数开始 int i;// 声明整型变量 // 声明TM结构n1~n7,结构指针head,p struct TM n1,n2,n3,n4,n5,n6,n7, * head, * p; * // 分别对TM结构n1~n7中的x,y赋值 n1.x=0;n1.y=0; n2.x=1;n2.y=2; n3.x=2;n3.y=4; n4.x=4;n4.y=4; n5.x=6;n5.y=4; n6.x=7;n6.y=2; n7.x=8;n7.y=4; // head赋值为n1,即head指向n1 head=&n1; // n1~n7构成链表 n1.next=&n2; n2.next=&n3; n3.next=&n4; n4.next=&n5; n5.next=&n6; n6.next=&n7; // n7的next指针赋值为空指针 n7.next=null; * p=head;// p赋值为head,即p指向head所指的内容 i=1;// i赋值为1 do// 直到型循环 {// 循环体开始 // 输出结点信息 printf("结点%d: x=%d, y=%d\n",i,p->x,p->y); p=p->next;// p指向下一个结点 i=i+1;// 计数加1 } while(p!=null);// 未到达链表尾部,则继续循环 }// 主函数结束 * 用结构数组,利用键盘输入结点中的数据。重点看 scanf(“%d”,&a); n[i].x=a; 结构数组,数组中的元素为结构类型的数据,如n[8] // 结构2.c #include // 预编译命令 #define null 0// 定义空指针常量 struct TM// 定义TM结构 { int x,y;// 整型变量x,y struct TM *next;// 指向TM结构的指针 }; * void main()

c语言的链表ppt,C语言链表详解.ppt相关推荐

  1. C语言结构体与指针ppt,c语言指针和结构体:链表详解.ppt

    c语言指针和结构体:链表详解.ppt 1,第十一章 链表,2,例跳马.依下图将每一步跳马之后的位置x,y放到一个"结点"里,再用"链子穿起来",形成一条链,相邻 ...

  2. c语言的指针详解ppt,最全的C语言指针详解.ppt

    最全的C语言指针详解.ppt 第6章 指针,6.1 指针定义与使用 6.2 指针与函数 6.3 指针与数组 6.4 指针与字符串 6.5 指针数组与多级指针 6.6 指针与动态内存分配 6.7 指针的 ...

  3. C语言结构体中定义函数指针详解

    C语言结构体中定义函数指针详解 结构体指针函数应用场景之一--驱动程序编写 结构体的一些基本用法 形式1:先定义结构体类型,再定义变量 形式2:在定义类型的同时定义变量 形式3:直接定义变量,用无名结 ...

  4. c语言实现顺序表源程序,C语言实现静态顺序表的实例详解

    C语言实现静态顺序表的实例详解 线性表 定义一张顺序表也就是在内存中开辟一段连续的存储空间,并给它一个名字进行标识.只有定义了一个顺序表,才能利用该顺序表存放数据元素,也才能对该顺序表进行各种操作. ...

  5. python创建双链表_Python双链表原理与实现方法详解

    本文实例讲述了Python双链表原理与实现方法.分享给大家供大家参考,具体如下: Python实现双链表 文章目录 Python实现双链表 单链表与双链表比较 双链表的实现 定义链表节点 初始化双链表 ...

  6. c语言数据类型int的用法,C语言基本数据类型:整型(int)用法详解|C语言学习

    C语言基本数据类型:整型(int)用法详解 1. 整型 int C 语言提供了很多整数类型(整型),这些整型的区别在于它们的取值范围的大小,以及是否可以为负.int 是整型之一,一般被称为整型.以后, ...

  7. php单链表检测有没有环,PHP找出链表中环入口节点步骤详解

    这次给大家带来PHP找出链表中环入口节点步骤详解,PHP找出链表中环入口节点的注意事项有哪些,下面就是实战案例,一起来看一下. 问题 一个链表中包含环,请找出该链表的环的入口结点. 解决思路 第一步, ...

  8. C语言求最大公约数三种方法详解

    C语言求最大公约数三种方法详解 题目要求 常用写法(穷举法) 辗转相减法 辗转相除法 main函数 整体代码 题目要求 运行最大公约数的常用算法,并进行程序的调式与测试. 常用写法(穷举法) 从两个数 ...

  9. go语言字符串换行_Go语言中的字符串处理方法示例详解

    1 概述 字符串,string,一串固定长度的字符连接起来的字符集合.Go语言的字符串是使用UTF-8编码的.UTF-8是Unicode的实现方式之一. Go语言原生支持字符串.使用双引号(" ...

  10. java jstack使用_JAVA语言之JVM 中jstack命令使用详解

    本文主要向大家介绍了JAVA语言之JVM 中jstack命令使用详解,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. Java程序问题定位时线程栈信息是一个重要线索,如下: " ...

最新文章

  1. windows7/8 安装mysql5.7
  2. 网站真分页js代码该怎么写?
  3. SAMBA的一些特殊设置
  4. javascript等待异步线程完成_JavaScript 中的异步原理
  5. 【转】SAP技术趋势及建议
  6. Keepalived 做负载均衡(简单实例)
  7. 2013下半年(11月)信息系统项目管理师考试题型分析(综合知识、案例分析、论文)...
  8. 同时安装CUDA8.0和CUDA9.0
  9. 再战图形,一图一世界
  10. 3.4 主存储器与CPU的连接———存储器容量的扩充
  11. c语言无输出如何表示,c语言中的格式输出
  12. VMware ESXi Server 许可证注册方式
  13. 【大数据】大数据-实时统计分析-方案选型
  14. 【饭谈】领导叫你搞个自动化平台,你要怎么入手?不会上来就开始新建项目写代码吧?
  15. 电脑文件夹怎么批量重命名
  16. 自动柜员机是不是微型计算机,第三章微型计算机基础知识.pptx
  17. CentOS命令之一
  18. 【概念】权限管理模型(RBAC、ABAC、ACL)
  19. BZOJ 1933 [Shoi2007]Bookcase 书柜的尺寸 ——动态规划
  20. html 弹出固定大小的页面,html弹出固定大小的窗口(HTML pops up a fixed size window).doc...

热门文章

  1. 64位 atol c linux_Linux下c++中的atoi、atol、atoll、atof函数调用实例
  2. java ipv6 转换_Java中Ipv4与Ipv6的转换
  3. YOLOv2论文中英文对照翻译
  4. linux安装ps2键盘驱动程序,VoodooPS2Controller v1.8.25 黑苹果键盘鼠标触摸板万能驱动 _ 黑苹果乐园...
  5. Mac环境下使用XMAPP 安装testlink
  6. OpenCV学习 之 IplImage*遍历每个像素点
  7. 那些买了来客推商城V3多用户uni-app商城源码的客户体验怎么样?
  8. 机载激光雷达原理与应用科普(七)
  9. 微信获取粉丝信息php,1.2 微信粉丝用户及粉丝标签管理
  10. 常犇_武汉大学管理学院2019年工商管理硕士(MBA)第三批复试通知