C语言程序设计 教学课件 作者 柴世红_第10章.ppt

C语言程序设计 教学课件 作者 柴世红_第10章.ppt

ID:50351394

大小:407.00 KB

页数:54页

时间:2020-03-08

C语言程序设计 教学课件 作者 柴世红_第10章.ppt_第1页
C语言程序设计 教学课件 作者 柴世红_第10章.ppt_第2页
C语言程序设计 教学课件 作者 柴世红_第10章.ppt_第3页
C语言程序设计 教学课件 作者 柴世红_第10章.ppt_第4页
C语言程序设计 教学课件 作者 柴世红_第10章.ppt_第5页
资源描述:

《C语言程序设计 教学课件 作者 柴世红_第10章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章结构体与共用体10.1结构体类型10.2共用体10.3用typedef定义已有类型的别名10.4案例学习10.1结 构 体 类 型10.1.1结构体类型的定义结构体类型定义的一般形式是:例如学生类型的定义:这样就定义了一种结构体数据类型structstudent。采用同样的方法可以定义日期结构体类型:10.1.2结构体变量1.定义结构体类型的变量定义结构体变量有三种方法:(1)利用已定义的结构体类型名定义变量。struct结构体名变量名表;   例如:structstudentstu1,stu2,s

2、tu3;(2)在定义结构体类型的同时定义结构体变量。struct结构体名{成员定义表;}变量名表;   例如:(3)直接定义结构体类型变量。struct{成员定义表;}变量名表;例如:2.结构体变量的初始化结构体变量的初始化与一维数组类似,一般形式为:    结构体变量名={初值表};   例如:structstudentstu1={1002021,“Liming”,‘M’,19,95.5};   如果初值个数少于结构体成员个数,则将无初值对应的成员赋以0值;如果初值个数多于结构体成员个数,则编译出错。3.

3、结构体变量成员的引用结构体变量成员引用的一般形式如下:    结构体变量名.成员名 其中的“.”是成员运算符,运算优先级别最高。   例如:stu1.num=1002032将把1002032赋值给结构体变量stu1的num成员。另外,也可以用指针来引用结构体变量的成员。例如:4.结构体变量的运算(1)同类型结构体变量之间可以相互赋值。(2)用sizeof运算符计算结构体变量所占的内存空间。(3)可以用取地址运算符&对结构体变量进行取址运算。【例10-1】结构体变量的运算。图10.1例10-1运行结果10.1

4、.3特殊的结构体成员——位段1.位段的定义在结构体中可以以位为单位来指定其成员所占的内存长度,这种以位为单位的成员称为位段。一个位段由一位或若干位组成。在定义位段的时候,位段名后面加冒号,冒号后指出位段的位数。例如:图10.2位段的图示2.位段的使用【例10-2】输入一个学生信息再将其输出。学生信息包括学号(num)、姓名(name)、性别(sex)、出生日期(birthday)、成绩(score),要求性别和出生日期用位段表示。图10.3例10-2运行结果10.1.4结构体数组1.结构体数组的定义定义结构

5、体数组和定义普通数组方法相同,只要用一个方括号指明是数组,并且给出数组的大小即可。和定义结构体变量一样,定义结构体数组也有三种方法:(1)利用已定义的结构体类型名定义结构体数组。(2)在定义结构体类型的同时定义结构体数组。(3)直接定义结构体类型变量。例如:2.结构体数组的初始化【例10-3】结构体数组。图10.4例10-3运行结果10.1.5结构体与函数【例10-4】编制一个复数加法函数,采用值传递的方法传送数据。图10.5例10-4运行结果10.2共用体10.2.1共用体类型的定义共用体类型定义的一般形

6、式如下:下面是对共用体类型定义的一些说明:(1)union是定义共用体类型的关键字,共用体名是用户定义的类型标识。(2)共用体名和成员名的命名规则和变量名的命名规则相同。(3)成员的数据类型可以是C语言所允许的任何数据类型。例如:10.2.2共用体变量1.定义共用体类型的变量共用体变量的定义与结构体变量的定义相似,也有三种方法:利用已定义的共用体类型名定义变量、在定义共用体类型的同时定义变量、直接定义共用体类型变量。定义共用体变量之后,系统按照共用体类型的组成,为定义的共用体变量分配内存单元。共用体变量所占

7、内存大小等于共用体中占用内存的长度最长的成员的内存大小。例如:2.共用体变量成员的引用例如:3.共用体变量的运算(1)同类型共用体变量之间可以相互赋值。(2)用sizeof运算符计算共用体变量所占内存空间。(3)可以用取地址运算符&对共用体变量进行取址运算。【例10-5】共用体变量的运算。图10.6例10-5运行结果4.共用体变量赋初值共用体类型变量在定义时只能对第一个成员进行初始化。【例10-6】对共用体类型变量第一个成员进行初始化。图10.7例10-6运行结果10.2.3共用体变量的用途(1)处理部分成

8、员类型相同,部分成员类型不同的结构体数据。【例10-7】某校要建立一个教师和学生的人员登记表,信息包括编号、姓名、性别、职业、教师所在部门和学生所在班级号。编程输入人员数据并输出。图10.8例10-7运行结果【例10-8】浮点数的存储误差。图10.9例10-8运行结果【例10-9】验证浮点数的存储格式。图10.10例10-9运行结果10.3用typedef定义已有类型的别名10.3.1用typedef为类型名定义

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

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

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