第08章 结构、联合及枚举类型.ppt

第08章 结构、联合及枚举类型.ppt

ID:48753369

大小:303.50 KB

页数:65页

时间:2020-01-21

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

《第08章 结构、联合及枚举类型.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第8章结构、联合及枚举类型*重点与难点8.1结构体类型和结构变量的定义8.2结构体变量的引用和初始化8.3结构体数组8.4结构体类型的指针变量8.5结构体与函数8.6用typedef定义类型8.7用指针处理链表8.8共用体8.9枚举类型*本章小结*作业重点与难点重点:结构体、共用体和枚举类型。难点:链表的操作。二维表(关系)学号姓名性别年龄成绩地址10001ZhangXinM1990.5Shanghai10002WangLiF2098Beijing10010LiFunM1887.5Guangzhou8.1结构体类型和结构体变量的定义8.1.1结构体类型的定义8.1.2结构体变量的定义8.1.

2、1结构体类型的定义struct结构体名{数据类型成员名1;数据类型成员名2;……数据类型成员名n;};点坐标yx.(x,y)二维坐标的点structpoint{floatx;floaty;};点的结构体类型圆的结构体r(x,y)structcircle{structpoint{floatx;floaty;}dot;floatr;}structpointdot;8.1.2结构体变量的定义1、先定义结构体类型,再定义结构体变量2、定义结构体类型的同时定义结构体变量3、直接定义结构体类型变量1、先定义结构体类型,再定义结构体变量structcircle{structpointdot;floatr;

3、};structcirclegraph1,graph2;2、定义结构体类型的同时定义结构体变量structstudent{intnum;charname[20];charsex;intagefloatscore;charaddr[30];}stu1,stu2;3、直接定义结构体类型变量struct{intmonth;intday;intyear;}date1,date2;8.2结构体变量引用和初始化1、结构体变量的引用2、结构体变量的初始化1、结构体变量的引用在ANSI中除了允许具有相同类型的结构体变量相互赋值外,一般对结构体变量的引用是通过其成员来实现。成员引用形式:结构体变量名.成员名举

4、例:graph1.rgraph1.dot.x例8.1求两个同心圆的面积差main(){structpoint{floatx;floaty;};structcircle{structpointdot;floatr;};structcirclegraph1,graph2;floatarea;graph1.dot.x=2;graph1.dot.y=3;graph1.r=4;graph2.dot=graph1.dot;printf("Graph2.r=");scanf("%f",&graph2.r);area=3.14*(graph2.r*graph2.r-graph1.r*graph1.r);pr

5、intf("Dotis(%-4.1f,%-4.1f)",graph1.dot.x,graph1.dot.y);printf("Radiusis%-4.1fand%-4.1f",graph1.r,graph2.r);printf("Area(r2-r1)=%-6.1f",area);}2、结构体变量的初始化初始化形式结构体类型结构体变量={初始化数据};举例structcirclegraph1={{2,3},4};即x=2,y=3,r=4;其中内层{}可省。8.3结构体数组structcirclecir[3];structcredit{intnum;char*name;charse

6、x;floatscore[3]}stu[5];结构体数组举例structcredit{intnum;char*name;charsex;floatscore[3];}stu[5]={{101,"ZhaoHua",'M',45,80,78},{102,"XianJiang",'M',62.5,76,80},{103,"SunJun",'F',92.5,92,89},{104,"LiWei",'F',87,88,91},{105,"ZhouLi",'M',58,60,77}};例8.2计算学生的总分,按总分排名次及输出名次表stu[i].total+=stu[i].score[j];排序:选择法

7、for(i=0;istu[k].total)k=j;if(k!=i){temp=stu[i];stu[i]=stu[k];stu[k]=temp;}}8.4结构体类型的指针变量结构体变量可以由不同类型的成员构成,各个成员所占空间字节数之和是结构体变量所占的内存空间。结构体的指针是结构体变量在内存中得首地址。结构体类

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

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

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