第七章电机学.pptVIP

  1. 1、本文档共79页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章电机学

第七章 结构 数组是多个数据成员的聚合,但所有的成员都必须具有相同的数据类型,这是数组的局限性。 主要内容: 重点: 7.1 结构类型的基本概念 1. 什么叫结构体 (2)设备数据 2.结构类型 同其它类型一样,结构类型描述存储要求、定义值域以及操作集。 7. 2 结构类型和结构数据对象 1. 定义结构类型 2)解释 struct :保留字,是结构类型的专用标识; 形式2: 3)注意 类型名可以省略,也即可以定义无类型名的结构类型。 3. 结构类型的作用域 可以用sizeof运算符来计算结构数据类型的长度 。 3. 结构类型数据对象的声明 我们可以在说明语句中用自定义的结构类型声明结构数据对象,也即声明(定义)结构变量,有以下两种方式: 变量名表:列出n个结构数据对象名,可以是一般变量、指针变量、数组等,对应的称呼为:结构变量、结构指针、结构数组。 (2)在定义结构类型的同时声明结构数据对象 语法: 这种方式同时定义了数据类型和数据对象,有些时候甚至可以省略类型名。 分析: 设类型名为Employee,因为该数据包含描述职工基本情况的五个成员,所以应定义成结构类型,对应的程序如下: 说明: ps1={123,“chen”,2000,“福建泉州”, “2699999”};定义ps1并给其成员赋初值。 4.访问结构成员 如同定义了数组就可以访问每一个数组元素一样,定义了结构,也就可以访问其中的每一个成员 。 1)结构成员的表示: “.”和“-”都称为成员运算符; 程序: 7.3 结构与数组 对应的程序段如下: 对于上面的职工花名册,我们可以先定义一个表示职工数据的结构类型,该类型包含八个成员,分别代表八个列; 1)什么叫结构数组: 结构是一种数据类型,我们可以用它来声明数组,这样的数组称为结构数组,结构数组的每一个元素都是一个结构体 。 2)语法 2.结构数组元素中结构成员的访问 例如: 注意:结构数组元素成员可以像基本变量那样使用,例如赋值、输出、计算等等,统称为结构数组元素成员的访问。 3.结构数组应用举例 (1)算法 程序: (2) 函数的类型为结构类型(可以返回特定的结构值)。 (2)解释 函数WriteEmplo(EMPLOYEE employee),定义了一个结构形参,调用该函数时对应的实参必须是结构 ,例如: 函数Total sum(EMPLOYEE employee[]),其类型是结构类型,调用结果返回一个结构,该结构可以被主调函数访问,例如: 7.5 结构类型指针 此时EmpPtr存放的是employee的地址,也即指向employee。 2) 用来实现结构类型数据对象内存空间的动态分配和释放; 3.用结构指针访问成员 成员运算符:- 4. 指向结构数组的指针 我们知道结构数组名本身就是一个指向结构的指针,它指向该数组的第一个元素。因此我们也可以用结构数组名的地址偏移来访问结构数组元素。 (2)实例 分析: 2.链表的种类 链表通常以头指针命名,头指针指示了链表中第一个结点的存储位置,通过它能实现整个链表的存取。 2)循环链表 若修改单链表,使最后一个元素的指针又指向第一个元素,则这种单链表的改进形式称为循环链表,其逻辑结构如下图所示。 3. 链表的描述 通常在链表的第一个结点前附设一个结点,称为头结点,并让链表的头指针指向头结点,如下图所示。 链表结构类型和结点定义如下: 显然链表结点的数据类型应该是结构类型,其前n-1个成员组成数据域,第n个成员是一个和链表结点同类型的指针,用来指向下一个结点,所有结点的指针就构成链表的链。 注意:指针域(指针成员)的类型一定和包含该指针的结构同类型,也即链表结点数据类型的定义是递归的。 4.链表的用途 链表的用途非常广泛,以下两个用途对数据处理是极其有用的: 以上两种方法的共同点是: 在建立该数组前,数组的成员个数是确定的,在无法准确地确定成员个数时,必须考虑最大成员数,这样可能会造成内存空间的极大浪费。 (2)在增减成员时可以减少数据的移动量 假如有一个具有n个元素的结构数组,如果我们删除了第 i 个元素,那么必须向上移动n-i个元素,参见下图: 如果用链表来存放同样的数据,情况将会大有改善: 当删除第i个记录时,只须改

文档评论(0)

zilaiye + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档