全套课件-C语言程序设计案例教程 高璐.ppt

全套课件-C语言程序设计案例教程 高璐.ppt

  1. 1、本文档共784页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
10.4.2 结构体数组指针 例如,定义一个结构体类型worker和结构体数组class: ? struct worker { char name[20]; float salary; int age; int num[12]; }; struct worker class[10]; struct worker *pa; pa=&class[0]; 相关概念 10.4.2 结构体数组指针 使用结构体数组指针pa时应注意如下几点: 1.当执行pa=&class语句后,指针pa指向class数组的第一个元素;当执行pa++后,表示指针pa指向下一个元素的起始地址。(++pa)->age先将pa增1,然后取得它指向的元素中age的成员的值;若原来pa指向class[0],则表达式返回class[1].age的值,之后pa指向class[1]。(pa++)->age先取得pa->age的值,然后再使pa自增1。若原来pa指向class[0],则该表达式返回class[0].age的值,之后pa指向class[1] 2.pa只能指向该结构体数组中的一个元素,然后再用指向运算符->取其成员之值,而不是直接指向一个成员。 注意 10.5 链 表 链表是将若干数据项按一定规则连接起来的表,链表中的每个数据称为一个结点,即链表是由称为结点的元素组成的,结点的多少根据需要确定。链表连接的规则是:前一个结点指向下一个结点;只有通过前一个结点才能找到下一个结点,因此,每个结点都应包括两个方面的内容: 1.数据部分,该部分可以根据需要由多少个成员组成,它存放的是需要处理的数据。 2.指针部分,该部分存放的是一个结点的地址,链表中的每个结点通过指针连接在一起。 相关概念 10.5 链 表 说明: (1) 头指针变量head指向链表的首结点; (2) 每个结点由两部分组成,即数据和指针; (3) 尾结点的指针域为空NULL,作为链表结束的标志 链表与结构数组的区别 (1) 结构数组中各元素是连续存放的,而链表中的结点可以是不连续存放的 (2) 结构数组元素可通过下标或相应的指针变量的移动进行顺序或随机的访问; (3) 结构数组在定义时就确定其元素的个数,不能动态增长;而链表的长度往往是不确定的,根据问题求解过程中的实际需要动态地创建结点并为其分配存储空间 相关概念 10.5 链 表 1.建立链表是指从无到有建立一个链表,即往空链表中依次插入一 个结点,并保持结点间的前驱和后继的关系。 2.查找操作是指在给定的链表中,查找具有检索条件的结点。 3.插入操作是指在某两个结点间插入一个新的结点。 4.删除操作是指在给定的链表中,删除某个特定的结点,也就是插入的逆过程。 5.修改操作是指在给定的链表中,首先根据某已知的条件查找到该结点,再修改数据域中的某些数据项 Struct node { int data; /*数据部分*/ Struct node *next; /*指针部分*/ }; 链表的基本操作 10.6 共用体 在编程时,有时会碰到这样的情况,需要把不同数据类型的变量放在同一存储区域。例如,在编制程序的符号表中,常量可以是整常量、浮点常量或指向字符的指针,它们的类型及大小不同,为了便于管理,可把它们放在足够大的同一存储区域,这就用到共用类型,它也是一种数据类型。 相关概念 10.6 共用体 与结构体类型定义相似,共用体一般定义格式为: union 共用类型名 {数据类型 成员名1; 数据类型 成员名2; … 数据类型 成员名n; }; 同样在定义共用体变量时,也可将类型定义和变量定义分开,或直接定义共用变量。其常用形式为: Union共用体类型名 共用体变量; 定义结构体 10.6 共用体 定义好共用体后,对其中成员的引用与结构体一样,满足三种方式: 1.共用体变量名.成员名;如 x.ch、stu1.age 2.共用体指针变量名->成员名;如 pa->f 3.(*共用体指针变量名).成员名;如(*pa).c 使用共用体的注意事项如下: 1.由于共用体变量中的所有成员共享存储空间,因此变量中的所有成员的首地址相同。 2.由于共用体变量中的所有成员共享存储空间,所以在任意时刻,只能有一种类型的数据存放在共用体变量中。 3.共用体变量不能作为函数参数,在定义共用体变量时不能进行初始化。 共用体成员的引用 10.7 枚举类型   所谓“枚举”是指将变量的值一一列举出来,变量的值只限于列举出来的值范围内。枚举类型是一种用户自定义的数

文档评论(0)

喜宝 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

认证主体王**

1亿VIP精品文档

相关文档

相关课程推荐