课件第7章结构和链表a.pptxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 结构和链表 本章内容结构结构类型的定义类型定义结构变量的定义结构变量的初始化结构成员的引用结构数组结构指针动态内存分配动态内存申请动态内存释放链表链表的建立链表的操作●要求: 1.掌握结构数据类型、结构变量和结构指针 的定义,结构成分的引用方法; 2.掌握结构数组的定义和使用方法; 3.掌握编写有结构形参、结构指针形参, 以及返回结构的函数的方法; 4.掌握链接存储线性表的概念和基本操作; 5.掌握类型定义和变量定义的方法。回顾: 在前面的课程中,我们学习了一些基本类型:(整型,实型、字符型)的定义和应用,还学习了构造类型:例如:数组(一维、二维)的定义和应用,这些数据类型的特点是: 当定义某一特定的数据类型,就限定了该类型变量的存储特性和取值范围。对简单数据类型来说,既可以定义单个的变量,也可以定义数组。而数组的全部元素都具有相同的数据类型,或者说是相同数据类型的一个集合。7.1 结构类型和结构变量 在日常生活中,我们常会遇到一些需要填写的登记表,如住宿表、成绩表、通讯地址等。在这些表中,填写的数据是不能用同一种数据类型描述的,在住宿表中我们通常会登记上姓名、性别、身份证号码等项目;在通讯地址表中我们会写下姓名、邮编、邮箱地址、电话号码、E - mail等项目。这些表中集合了各种数据,无法用前面学过的任一种数据类型完全描述,因此C引入一种能集中不同数据类型于一体的数据类型—结构体类型。结构体类型的变量可以拥有不同数据类型的成员,是不同数据类型成员的集合。让我们仔细观察一下住宿表、成绩表、通讯地址等。住宿表由下面的项目构成:一个学生信息表班级学号姓名操作系统数据结构计算机网络以前的解决方案: 描述某个班的学生信息,则可用数描述一个学生信息#define N 50int grade [N];char name[N][10]; float os[N] float datastru[N];float compnet[N]; int grade; /* 班级*/int number; /* 学号*/char name[10]; / *姓名*/float os; / *操作系统*/float datastru; /*数据结构*/float compnet; /*计算机网络*/ 从中看出,这个表中集合了各种标准类型数据,我们还无法用前面学过的任一种数据类型对其进行整体描述,因此,C语言引入一种能集不同数据类型于一体的数据类型---结构类型(structure)。。结构类型的变量可以拥有不同数据类型的成员,是不同数据类型成员的集合。 它相当于其它高级语言中的记录。“结构”是一种构造类型,它是由若干“成员”组成的。每一个成员可以是一个基本数据类型或者又是一个构造类型。结构既然是一种“构造”而成的数据类型,那么在说明和使用之前必须先定义它,也就是要构造它。如同在调用函数之前要先定义函数一样。 上面的这些描述可用C提供的结构体类型描述如下:一个同学的成绩表:struct score{ char grade[20]; / * 班级* / long number; / * 学号* / char name[20]; / *姓名* / float os; / *操作系统* / float datastru; / * 数据结构* / float compnet; / * 计算机网络* /} ; 这一系列对不同登记表的数据结构的描述类型称为结构体类型。由于不同的问题有不同的数据成员,也就是说有不同描述的结构体类型。我们也可以理解为结构体类型根据所针对的问题其成员是不同的,可以有任意多的结构体类型描述。下面给出C对结构体类型的定义形式:定义结构类型的一般形式为:struct 结构类型名 { 类型 成员名1; 类型 成员名2; ……};关键字成员说明表: 花括弧内是该结构类型中的各个成员(或称分量),是一组变量类型,由它们组成一个结构类型。每个成员都是该结构的一个组成部分。对每个成员也必须作类型说明。成员的命名规则与标准变量命名规则相同。有了结构体类型,我们就可以定义结构体类型变量,以对不同变量的各成员进行引用。例如:学生数据结构类型为:引出结构类型的定义。struct student{ int num; char name[20]; char sex; int score[3];};结构名:整个结构类型的名称。学号姓名只是定义类型,没有定义变量。性别成员说明表:指明组成此种结构类型的全部成员。成绩 在这个结构定义中,结构名为student,该结构由4个成员组成。第一个成员为num,整型变量;第二个成员为name,字符数组;第三个成员为sex,字符变量;第四个成员为score数组,整型变量。应注意在括号后

文档评论(0)

158****9376 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档