C语言程序设计 - 结构体和共用体-样本教案.doc

C语言程序设计 - 结构体和共用体-样本教案.doc

ID:56825532

大小:100.00 KB

页数:12页

时间:2020-07-15

C语言程序设计 - 结构体和共用体-样本教案.doc_第1页
C语言程序设计 - 结构体和共用体-样本教案.doc_第2页
C语言程序设计 - 结构体和共用体-样本教案.doc_第3页
C语言程序设计 - 结构体和共用体-样本教案.doc_第4页
C语言程序设计 - 结构体和共用体-样本教案.doc_第5页
资源描述:

《C语言程序设计 - 结构体和共用体-样本教案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、结构体与共用体第一讲内容说明主要内容重点难点问题提出1.结构体的概念及其基本操作2.结构体变量的引用方法3.结构体数组的使用例子:inta[5];通过举例说明定义结构体类型的必要性。和基本类型变量进行比较分析,进一步说明必须定义结构体类型。强调注意与以往变量应用的区别1.对结构体类型的理解2.结构体类型的使用结构体变量的引用前面已经介绍了基本数据类型──整型、浮点型、字符型,也介绍了一种构造类型──数组,数组中各元素是属于同一种类型的。例如:一个学生的学号、姓名、性别、年龄、成绩、家庭地址等项,各项的数据类型并不相同(如下图)numnamesexagesc

2、oreaddr10010LiFanm1888chengde如果将num、name、sex、age、score、addr分别定义为互相独立的简单变量,难以反映它们之间的内在联系,如何解决此类问题呢?一、结构体类型引入处理这样的二维表数据时,通常以记录为单位进行处理,而每条记录中包含多种数据类型,按以前所讲的数据类型没有办法处理。故引入了结构类型。即将多个基本类型作为一个集体定义成一种新的用户自定义类型。例:Structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];};说明

3、:1.Struct是一个关键字,标志着这是一个结构体类型。2.Structstudent是一个类型名。二、结构类型的使用步骤step1:说明所定义的结构类型的结构形式,成员构成;à相当于建立数据库二维表的表结构.step2:用所定义的结构类型定义结构变量(记录变量);à相当于为数据库二维表的各记录定义一个记录名.step3:通过所定义结构变量(记录变量)访问对应记录中的成员.à相当于编辑数据库二维表的记录中的各项.(1)结构类型的说明:在TurboC中,结构也是一种数据类型,但不同二维表所对应的结构不同,故在使用前需要对结构情况进行说明,即结构类型的说明.

4、结构类型说明的一般格式为:比较举例struct结构名{类型名1成员变量名1;类型名2成员变量名2;...类型名n成员变量名n;}说明:1)"struct"是关键字,是结构类型的标志;2)"结构名"是用户所说明的结构类型的名称的标识符,而不是变量名,以后可用它来定义结构变量.3)"类型名"为以前所讲的各种数据类型(int,char等),也可以是已说明的结构类型。4)"成员变量名"是构成结构的每一个成员变量的名称,相当于数据库二维表中的各字段名.例1:structdate{intyear;intmonth;intday;};例2:structstudent{c

5、harname[12];charsex;sturctdatebirthday;floatsc[4];}在C语言中,结构类型可以嵌套定义,所以以上两例可以合并为:structstudent{charname[12];charsex;structdate{intyear;intmonth;intday;}birthday;floatsc[4];}(2)结构变量的定义及结构变量的内存分配:1)结构变量的定义象其它类型的变量一样,在使用结构变量时要先对其定义。结构变量可以是普通结构变量,结构数组,和结构指针等形式.定义结构变量有三种格式,现分别举例说明:先声明一个

6、Structdate类型,然后在定义Structstudent类型时,将成员Birthday定义为Structdate类型。格式一:先说明结构类型,再单独进行结构变量定义.例:structstudent{charname[12];charsex;sturctdatebirthday;floatsc[4];};structstudentstd,pers[3],*pstd;说明:这个例子定义了三个结构类型名为student的结构变量:普通结构变量:std;结构数组变量:pers[3];指向该结构类型的指针变量:*pstd.格式二:紧跟在结构类型说明之后进行结构

7、变量定义:例:structstudent{charname[12];charsex;sturctdatebirthday;floatsc[4];}std,pers[3],*pstd;说明:如果省略变量名std,pers[3],*pstd,则变成对结构的说明.可以省略结构名,用一个无名结构类型直接定义结构类型变量。例:struct{charname[12];charsex;sturctdatebirthday;floatsc[4];}std,pers[3],*pstd;这种结构类型变量定义的方式与不省略"结构名"的方式相比,不同之处在于:这种格式定义结构变量

8、以后无法再定义此结构类型的其它结构变量,而带有"结构名"的格式则可

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

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

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