chap8_结构(精品)

上传人:仙*** 文档编号:250186462 上传时间:2024-11-01 格式:PPT 页数:22 大小:355.50KB
返回 下载 相关 举报
chap8_结构(精品)_第1页
第1页 / 共22页
chap8_结构(精品)_第2页
第2页 / 共22页
chap8_结构(精品)_第3页
第3页 / 共22页
点击查看更多>>
资源描述
单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,Chap,8 结 构,本章要点,什么是,结构,(,struct,),?,如何定义,结构类型,?,什么是,结构变量,?什么是,结构成员变量,?,结构变量如何赋值?,什么是结构的嵌套?,什么是,结构数组,?,num,name,score,101,Xi,Yangyang,95,102,Mei,Yangyang,100,103,Lan,Yangyang,74.5,104,Hui,Tailang,53,学生信息,?如何表示?,自定义,结构类型,:,struct,student,struct,student,int,num;,char name20;,float score;,;,8.1 用结构表示学生信息,结构,(,struct,),:,若干不同类型变量的集合,结构名:,sutdent,结构是一种,构造,数据类型,由程序员自行定义,数据类型名,:,struct,student,学号、姓名、成绩,struct,student,int,num,;,/*,学号,整型,*/,char,name20,;,/*,姓名,字符数组,*/,float,score,;,/,*,课程成绩,整型,*/,;,结构中,各分量,:,结构成员变量,用结构类型表示学生信息,自定义的数据类型,struct,结构名,类型名 结构成员名1;,类型名 结构成员名2;,类型名 结构成员名,n,;,;,定义结构类型,结构类型名,结构成员表,struct,student,int,num;,char name20;,float score;,;,数组,:,相同,类型数据的集合,结构,:,不同,类型数据的集合,定义平面上的任意一点,struct,point,float x,y;,;,定义复数,struct,complex,double real;,/,实部,double,imag,;,/,虚部,;,定义,结构类型,示例,结构类型名:,struct,point,结构类型名:,struct,complex,定义,结构变量,形式,1,1,、,先,定义结构类型:,struct,student,int,num;,char name20;,float score;,;,再,定义结构变量:,struct,student,s1,s2,s3,s4,;,结构变量,结构类型,2,、,结构类型、结构变量,同时,定义,struct,student,int,num;,char name20;,float score;,s1,s2,s3,s4,;,定义,结构变量,形式,2,3、,省略结构名,,直接定义结构变量,:,struct,student,int,num;,char name20;,float score;,s1,s2,s3,s4,;,定义,结构变量,形式,3,引用,结构变量,引用结构成员,结构变量名,.,成员变量,如:,s1,.,name,s1,.,score,struct,student,int,num;,char name20;,float score;,s1,;,s1,.,num=101;,strcpy,(s1,.,name,“Xi,Yangyang,);,s1,.,score=95;,scanf(%d,%s,%f,&s1,.,num,s1,.,name,&s1,.,score);,printf(%d,%s,%f n,s1,.,num,s1,.,name,s1,.,score);,结构变量的赋值,1,、,赋初值,struct,student,s1=,101,Xi,Yangyang,95,;,2,、,赋值,struct,student,s1=,101,Xi,Yangyang,95,s2;,s2=s1;,结构的嵌套定义,struct,student,int,num;,char name20;,struct,address,addr,;,float score;,s,;,城市,成绩,家庭住址,姓名,学号,街道,门牌号,s,.,addr,.,number,=86,city,score,addr,name,num,street,number,struct,address,char city20;,char street20;,int,number;,;,【,例,8-5】,建立有10个学生成绩的结构记录,输出平均分,并按照成绩,从高到低,输出学生记录。,任务解析:,定义存放学生信息的结构类型,struct,student,定义,结构数组,s10:,一个元素对应一个学生,统计数组,s,中每个元素(学生)的成绩分量。,针对成绩分量,将,s,进行选择法排序,8.2 按成绩降序输出学生信息,关键技术,如何定义,结构数组,s10,?,struct,student,s10,;,如何引用数组元素的成员变量?,si,.,score,如何交换结构数组元素是,si,与,sk,?,设置临时的,结构类型变量,temp,temp=,si,;,si,=,sk,;,sk,=temp;,si,sj,#include,struct,student,int,num;char name20;,int,score;,;,void main(),int,i,j,k,sum=0;,struct,student,s10,temp,;,for(,i=0;i 10;i+,),/,输入,10,个元素,,统计总分,scanf(%d%s%f,&,si.num,si.name,&,si.score,);,sum+=,si.score,;,printf(“,A,verage,:%,dn,”,sum/10,);,/,输出,平均分,for(,i=0;i 9;i+,),k=i;,for(,j=i+1;j,sk,.,score,)k=,j,;,temp=,s,i,;,s,i,=,s,k,;,s,k,=temp;,for(,i=0;i10;i+,),printf(“%d,%s%,dn”,si,.,num,si,.,name,si,.,score,);,/,选择排序,8.2.2 结构数组,struct,student,s1,;,struct,student,s,10,;,结构数组,:其中每个元素均为,结构变量,struct,student,int,num;,char name20;,float score;,;,s0,101,“Xi,Yangyang,9,5,s1,102,“Mei,Yangyang,100,s 9,110,“Hong,Tailang,80,num,name,score,si,i=09,结构数组的初始化,struct,student,s10,=,101,“Xi,Yangyang,95,102,“Mei,Yangyang,100,;,struct,student,int,num;,char name20;,float score;,;,s0,101,“Xi,Yangyang,9,5,s1,102,“Mei,Yangyang,100,s 9,num,name,score,结构数组编程,for(sum,=0,i=0;i 10;i+),scanf(%,d,%,s,%,f,&,si,.,num,si,.,name,&,si,.,score,);,sum+=,si,.,score,;,for(i=0;i 10;i+),printf(“%d,%,s,%,fn”,si,.,num,si,.,name,si,.,score,);,struct,student,int,num;,char name20;,float score;,s10,;,s0,101,“Xi,Yangyang,9,5,s1,102,“Mei,Yangyang,100,s 9,110,“Hong,Tailang,80,num,name,score,选择排序,for(i=0;i 9;i+),k=i;,for(j=i+1;j,sk,.,score,)k=j;,temp=,s,i,;,s,i,=,s,k,;,s,k,=temp;,struct,student,int,num;,char name20;,int,score;,s10,;,s0,101,“Xi,Yangyang,9,5,s1,102,“Mei,Yangyang,100,s 9,110,“Hong,Tailang,80,num,name,score,注意事项,1,不能对结构变量直接赋值,如:,struct,student,s,;,s,=103,“,Lan,Yangyang,”,74.5;,s,.num=103;,s,.name,=“,Lan,Yangyang,”;,s,.score,=74.5;,注意事项,2,结构类型的长度问题:,struct,s1,char c1,c2;,int,n;,;,6,B?,struct,s2,char c1;,int,n;char c2;,;,6,B?,字节对齐,:在成员间插入空字节,使总字节数成为最长成员长度的,N,倍,c1,c2,struct,s1,n,8B,c1,c2,struct,s2,n,12B,本讲小结与作业,小结:,结构类型、结构变量的定义方法,如何为结构变量赋值?,如何引用结构变量成员(分量)赋值?,如何定义和使用结构数组?,作业:,1,,,2,,,4,上机实验十一,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!