内容正文:
YCF
(中职)编程语言基础——C语言模块6教学课件
1
第6章结构体
任务1 结构体
任务2 结构体变量的定量
任务3 结构体变量的引用与初始化
任务4 结构体数组
任务1结构体
数组只能将相同类型的数据组合成一个有机整体,但有时候需要将不同类型的数据组合成一个整体,这时候数组就无能为力了,只能依靠结构体这种类型才能实现。例如,关于学生的信息:学号、姓名、性别和一门课的成绩,它们反映的是同一学生的信息,如果把它们定义成互相独立的简单变量,虽然问题也能解决,但不能很好地反映它们之间的内在联系。为了能更好地反映它们之间的内在联系,应该将它们组合成一个整体,但由于它们是不同类型的数据,所以不能把它们定义成数组,只能把它们定义成结构体。定义成结一构体后,这些数据就组成了一个整体,其中的每个数据称为结构体的一个成员。
下一页
返回
任务1结构体
结构体这种数据类型在使用时要先进行定义。定义结构体类型的语句格式是:
上一页
返回
任务2结构体变量的定义
定义结构体类型的变量有三种方法,以上面提到的学生信息为例来介绍这三种方法。
(1)先定义结构体类型,后定义变量。
首先定义了一个结构体类型struct student,然后说明变量x和y是这种结构体类型的变量。x和y结构相同,都包含4个成员,其结构如图6-1所示。
返回
下一页
任务2结构体变量的定义
(2)定义结构体类型的同时定义变量。
(3)直接定义变量。
上一页
返回
下一页
任务2结构体变量的定义
在定义结构体类型时,允许将已经定义过的结构体类型名用于另一个结构体类型的定义中,如:
以上定义的结构体类型struct student,其结构如图6-2所示。
上一页
返回
任务3结构体变量的引用与初始化
6.3.1 结构体变量的初始化
结构体变量的初始化与其他变量的初始化类似。
【例6-1】结构体变量x有 4个成员,按图6-3所示将变量x初始化。
返回
下一页
任务3结构体变量的引用与初始化
6.3.2 结构体变量的引用
结构体类型的变量在定义之后就可以使用了,但在使用时要遵循以下规则。
(1)结构体变量不能像简单变量那样直接使用其名进行操作,而只能使用它的成员名进行操作,即不能引用结构体变量本身,只能引用它的成员。结构体变量成员的引用方式是:
结构体变量名.成员名
其中,”.”是结构体成员运算符,其优先级最高。
上一页
返回
下一页
任务3结构体变量的引用与初始化
(2)像普通变量一样,结构体变量的成员可以用来进行各种操作,所能进行的操作取决于结构体成员的类型,例如:
(3)如果结构体变量的成员又是结构体类型,则要用若干个成员运算符,一级一级地表示到最低一级成员为止,只能对最低级的成员进行操作。例如:
上一页
返回
任务4结构体数组
结构体类型的数组与普通数组类似,没有什么本质的区别,只是这种数组中的每个元素都是一个结构体类型的数据。例如,图6 -4中用于存放学生信息的stu数组就是一个结构体数组,它共有3个元素,每个元素都是一个结构体类型的数据,每个元素中都包含学号、姓名和性别3项信息。
返回
下一页
任务4结构体数组
【例6-2】按图6-4将stu数组初始化并输出。
上一页
返回
下一页
任务4结构体数组
上一页
返回
图6-1变量x, y的结构
返回
图6-2结构体类型struct student
返回
图6-3结构体变量x
返回
图6-4结构体数组stu
返回
$