程序设计基础 张杰敏第六章 结构.ppt

程序设计基础 张杰敏第六章 结构.ppt

ID:51964194

大小:1.22 MB

页数:65页

时间:2020-03-26

程序设计基础 张杰敏第六章 结构.ppt_第1页
程序设计基础 张杰敏第六章 结构.ppt_第2页
程序设计基础 张杰敏第六章 结构.ppt_第3页
程序设计基础 张杰敏第六章 结构.ppt_第4页
程序设计基础 张杰敏第六章 结构.ppt_第5页
资源描述:

《程序设计基础 张杰敏第六章 结构.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、程序设计基础主编:张杰敏第六章结构6.0程序设计的用户自定义结构6.1结构基本概念与成员访问6.2结构数组6.3结构指针6.4结构与函数参数6.5线性链表6.6联合6.7位字段26.0程序设计的用户自定义结构C数据类型指针类型空类型void定义类型typedef构造类型枚举类型enum数组结构体struct共用体union基本类型字符类型char实型单精度型float双精度型double整型短整型short长整型long整型int只能定义单一的数据类型,反映事物单一属性如定义学生成绩:floatscore;能定

2、义复杂的数据类型,反映事物多个属性如定义学生信息:structSTU{charno[9];//学号charname[12];//姓名charsex;//性别floatscore;//成绩}student;复杂数据类型丰富了C语言对数据信息的处理能力。离开了复杂数据类型,很多信息的描述是无法进行定义,更无法进行处理的。计算机中的信息表示更多是由复杂数据类型来定义的,象《数据结构》课程中的链表、树、图等可以更好地理解数据库中的记录的含义,为C++语言中类的概念的理解提供了帮助。36.1结构的基本概念与成员访问结构体

3、是一种构造数据类型用途:把不同类型的数据组合成一个整体-------自定义数据类型引入结构体的好处:加强数据项之间的联系如学生的基本信息,包括学号、姓名、性别、年龄、班级、成绩等数据项。这些数据项描述了一个学生的几个不同侧面。nonamesexageclassnograde独立的变量表示:数据项之间无关联nonamesexageclassnograde结构体变量表示:数据项为一个整体charno[9];//学号charname[20];//姓名charsex;//性别unsignedintage;//年龄uns

4、ignedintclassno;//班级floatgrade;//成绩41、结构体类型的定义struct[结构体类型名]{数据类型名1成员名1;数据类型名2成员名2;……数据类型名n成员名n;};struct是关键字,不能省略合法标识符可省:无名结构体成员类型可以是基本型或构造型以分号;结尾例1:structStudent_Info{charno[9];//学号charname[20];//姓名charsex;//性别unsignedintage;//年龄unsignedintclassno;//班级float

5、grade;//成绩};例2:structDate{intyear;//年intmonth;//月intday;//日};5在结构体中数据类型相同的成员,既可逐个、逐行分别定义,也可合并成一行定义,就象一次定义多个变量一样。structStudent_Info{charno[9];//学号charname[20];//姓名charsex;//性别unsignedintage;//年龄unsignedintclassno;//班级floatgrade;//成绩};structStudent_Info{charno

6、[9],name[20],sex;unsignedintage,classno;floatgrade;};structDate{intyear;//年intmonth;//月intday;//日};structDate{intyear,month,day;};注意:结构类型只是用户自定义的一种数据类型,用来定义描述结构的组织形式,不分配内存,只有用它来定义某个变量时,才会为该变量分配结构类型所需要大小的内存单元。所占内存的大小是它所包含的成员所占内存大小之和。6structStudent_Info{charno

7、[9],name[20],sex;unsignedintage,classno;floatgrade;};structStudent_Infostudent;例:2、结构体变量的定义和访问结构体变量的定义间接定义法:先定义结构类型,再定义结构变量……9字节20字节1字节2字节2字节4字节nonamesexageclassnograde内存映像(BC下)struct结构体类型名{数据类型名1成员名1;……数据类型名n成员名n;};struct结构体类型名变量名列表;7structstudent;structStu

8、dent_Infostudent1,student2;一次定义多个结构体类型变量定义指向结构体类型的指针变量structStudent_Info*pstu;间接定义法中几种错误的结构体变量的定义方法没有结构体类型名Student_Infostudent;缺省struct关键字structPointp;structPoint{intx,y;};结构类型Point定义在后82、结构体变量的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。