结构、联合和枚举类型.ppt

结构、联合和枚举类型.ppt

ID:62000118

大小:124.00 KB

页数:14页

时间:2021-04-10

结构、联合和枚举类型.ppt_第1页
结构、联合和枚举类型.ppt_第2页
结构、联合和枚举类型.ppt_第3页
结构、联合和枚举类型.ppt_第4页
结构、联合和枚举类型.ppt_第5页
资源描述:

《结构、联合和枚举类型.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四节结构、联合和枚举类型[本节任务]学会组织大量的不同类型的但又有关联的数据用于编程。掌握用结构、联合这些结构类型构造一个记录,直接使用枚举这种结构类型表示的数据进行运算。[学习要点]理解结构、联合和枚举类型,熟练地用于程序设计解决实际问题。4·1结构类型[本段任务]通过一个工人工资管理系统的程序,学会结构类型的定义和使用,体会使用结构类型解决组织大量的具不同性质的、又有关联的数据参与编程的问题。4·1·1结构类型以及结构变量【引例】4_4_1一个工人工资管理系统,其内容包括:编号,姓名,性别,年龄,班组,基本工资,奖金,保险。求某一个工人的实发工资

2、,并打印该名工人的全部信息。结构类型和结构变量同时定义的标准形式是:struct结构类型名{类型名1成员名表1;类型名2成员名表2;……类型名n成员名表n;}结构变量表列;对引例4_4_1可以定义一个包含有9个不同类型数据的结构类型并同时定义该类型的变量w。structWORKER{intiNum,iAge;charcName[20],cSex,cBranch[20];floatfJbgz,fJj,fBx,fSfgz;}w;4·1·2使用结构类型变量如果在定义结构变量的同时赋值(也称为结构变量的初始化),那么可以整体赋值。例如:structWORKER

3、{intiNum,iAge;charcName[20],cSex,cBranch[20];floatfJbgz,fJj,fBx,fSfgz;}w={1001,35,”Zhang”,’M’,”jsj”,1000,200,100};/*实发工资fSfgz未赋初值,由程序计算*/或者可以分开定义时初始化(类型定义不重复列出):structWORKERw={1001,35,”Zhang”,’M’,”jsj”,1000,200,100};只能对每一个结构的最底层成员逐个输入输出。结构变量的成员的引用方法是:结构变量名.成员名其中的“.”称为成员运算符。例如对上面

4、定义的结构变量w:w.iNum表示结构变量w的iNum编号成员,w.cName表示结构变量w的cName姓名成员……/*4_4L1.C*/main(){structWORKER/*定义结构类型WORKER*/{intiNum;charcName[20],cSex;intiAge;charcBranch[20];floatfJbgz,fJj,fBx,fSfgz;}w;/*同时定义结构变量w*/scanf(“%d%s%c%d%s%f%f%f”,&w.iNum,w.cName,&w.cSex,&w.iAge,w.cBranch,&w.fJbgz,&w.fJj

5、,&w.fBx);w.fSfgz=w.fJbgz+w.fJj-w.fBx;/*键盘输入8个成员,计算第9个成员*/printf(“%dt%st%ct%dt%st%ft%ft%ft%f”,w.iNum,w.cName,w.cSex,w.iAge,w.cBranch,w.fJbgz,w.fJj,w.fBx,w.fSfgz);/*打印结构变量w的所有成员*/}例4_4_2计算一个学生的平均成绩。关于学生的信息包括:学号、姓名、出生日期、3门考试成绩,计算平均成绩并输出所有信息。分析:这道题与引例4_4_1非常相似,只是把计算第9个成员实发

6、工资改成计算三门课的平均成绩。定义结构时,出生日期要定义成另一个结构类型。3门成绩定义成含有3个元素的float型数组。由于太相似了。故而这里只列出变量表、NS图,程序只列出计算三门课的平均成绩的那两句。for(i=0;i<3;i++)fSum=fSum+stud.fScore[i];stud.fAve=fSum/3;4·1·3结构数组一个结构变量将若干个主要是不同类型的数据组织在一起,对于若干个属同一个类型的结构变量可以用数组组织在一起,叫做结构数组。结构数组的元素都是结构变量。定义结构数组的方法与定义普通结构变量的方法相同,结构数组的初始化与普通结

7、构变量的初始化方法也相同。在初始化结构数组时,象普通数组一样,也可以不指定数组元素的个数。系统会根据初值的情况来确定数组元素的个数。对结构数组成员的引用格式也与对普通结构变量成员的引用格式相同:结构数组名[下标].成员名要逐级书写,只能对最底层的成员进行引用。例4_4_3对候选人得票进行统计的程序。假设有3个候选人,每次输入一个得票的候选人的名字,最后输出各人的得票结果。假设共有10人投票。分析:定义一个结构数组,包含3个元素,表示有3个候选人。每个元素有2个成员,一个是名字,一个是得票数,得票数要初始化为0。根据输入的名字进行判断,输入是谁的名字,就

8、给哪个元素的得票数成员加1。全部输入完成后,输出结构数组的每个元素的每个成员。/*4_4L3.

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

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

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