![[理学]计算机软件基础自考本科.ppt_第1页](http://file.renrendoc.com/FileRoot1/2018-12/23/6922eafe-1bb5-49ea-9e7b-56582e6011af/6922eafe-1bb5-49ea-9e7b-56582e6011af1.gif)
![[理学]计算机软件基础自考本科.ppt_第2页](http://file.renrendoc.com/FileRoot1/2018-12/23/6922eafe-1bb5-49ea-9e7b-56582e6011af/6922eafe-1bb5-49ea-9e7b-56582e6011af2.gif)
![[理学]计算机软件基础自考本科.ppt_第3页](http://file.renrendoc.com/FileRoot1/2018-12/23/6922eafe-1bb5-49ea-9e7b-56582e6011af/6922eafe-1bb5-49ea-9e7b-56582e6011af3.gif)
![[理学]计算机软件基础自考本科.ppt_第4页](http://file.renrendoc.com/FileRoot1/2018-12/23/6922eafe-1bb5-49ea-9e7b-56582e6011af/6922eafe-1bb5-49ea-9e7b-56582e6011af4.gif)
![[理学]计算机软件基础自考本科.ppt_第5页](http://file.renrendoc.com/FileRoot1/2018-12/23/6922eafe-1bb5-49ea-9e7b-56582e6011af/6922eafe-1bb5-49ea-9e7b-56582e6011af5.gif)
已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机 软件基础,第一篇 C语言程序设计基础,第六章 结构类型,一、结构类型的概念,1.结构类型,是指由用户自行定义的不同数据类型的组合体。,学生的基本数据:,学号 长整型 姓名 字符型数组 年龄 整形 性别 字符型 成绩 实型数组,一、结构类型的概念,2.结构类型的构建,结构类型一般形式为:,struct 结构类型名 类型1 成员1; 类型2 成员2; 类型n 成员n; ;,一、结构类型的概念,2.结构类型的构建,示例,struct stu1 /定义一个stu1数据类型 long Num; /成员1:长整型 学号 char Name; /成员2:字符型 姓名 char Sex; /成员3:字符型 性别 int Age; /成员4: 整 型 年龄 float Scorce3; /成员5:实型数组 成绩 ;,二、结构类型变量,1.结构类型变量的定义,方法1:先定义结构类型,再定义结构变量,step1:构建结构类型,如:,struct stu1 long Num; char Name; char Sex; float Score3; ;,step2:定义相应变量,如:,struct stu1 a,b,c;,二、结构类型变量,1.结构类型变量的定义,方法2:定构建结构类型的同时定义相应变量,如:,struct stu1 long Num; char Name; char Sex; float Score3; a,b,c;,二、结构类型变量,2.结构类型变量的引用,引用规则如下:,(1)结构变量和结构体中成员,都不能单独引用;,(2)只能将结构变量与结构体成员合起来引用。,引用格式:结构变量 . 结构体成员,如:a . age,二、结构类型变量,3.结构类型变量的初始化,(1)定义结构变量同时进行初始化。如:,struct student long Num; char Name20; float Score3; a=520,”WangXin”,78.5,49.5,90;,二、结构类型变量,(2)也可以先定义结构变量,再进行初始化。如:,struct student long Num; char Name20; float Score3; ; main( ) struct student a; a=520,”WangXin”,78.5,49.5,90; ,二、结构类型变量,例6-1 分析程序,写出运行结果,main() struct stu1 long Num; char Name20; char sex; int age; float Score3; a=99123L,“Wang Xin“,F,23,78.5,49.5,90.0; int i; printf(“num:%1d name:%s sex:%c age: %dn“, a.Num,a.Name,a.sex,a.age); for (i=0;i3;i+) printf (“%8.1f“,a.Scorei); ,二、结构类型变量,例6-2 编写求两复数之和的程序,struct stu3 int x; int y; ; main( ) struct stu3 a,b,c; scanf(“%d,%d,%d,%d“, ,二、结构类型变量,(3)结构变量占用的存储空间(size):是结构体中所有成员所占空间之和。如:,struct student long Num; char Name20; float Score3; ; main( ) struct student a; printf(“%dn“,sizeof(a); ,三、结构数组,1.结构类型数组的定义,(1)在构建结构类型的同时定义相应的数组。,三、结构数组,(2)先构建结构类型,再定义相应的数组。,三、结构数组,2.结构数组的初始化,在构建结构类型的同时对数组初始化。如:,struct stu4 long Num; char Name20; float Score3; a2= 520 , “WanXin”, 78.5,49.5,90 , 240, “LiMing” , 66.5,72.5,88 ;,三、结构数组,上例中的存储关系:,二、结构类型变量,例6-3输入50个学生的基本信息(如图6-1所示),计算各个学生的平均分,并输出各人的学号、姓名及平均。,main( ) int i,j; float s; struct stu5 /*定义名为stu5的结构类型*/ long num; /*学号*/ char name20; /*姓名*/ float score3; /*三门课成绩*/ float ave; /*平均分*/ a50; /*50个学生,各个学生具有以上信息*/,二、结构类型变量,for(i=0;i50;i+) printf(“请输入第%d个同学的学号,姓名“,(i+1); scanf(“%Ld,%s“, ,四、指向结构类型的指针,1.指向结构变量的指针,二、结构类型变量,例6-4指向结构体变量指针的实例。,main( ) struct stu6 long num; char name10; int age; float score; a=2014L,“An Feng“,20,78.5,*p= ,四、指向结构类型的指针,2.指向结构数组的指针,指针变量也可以指向结构数组,其定义方法和指向一般 数组一样。如:,struct student long Num; char Name20; float Score3; a2,*p=a;,struct student long Num; char Name20; float Score3; ; struct student a2,*p=a;,四、指向结构类型的指针,结构体成员的引用的形式:,二、结构类型变量,例6-5 指向结构数组的指针示例。,main ( ) struct stu7 int x; float y; char z; a3=2,1.5,x,3,4.6,y,4,7.8,z; struct stu7 *p; /*定义指向结构类型指针*/ int i; /*定义变量i*/ p=a; /*P指针指向结构数组a*/ for(i=0;i3;i+) printf(“i=%d,x=%d,y=%f,z=%cn“,i,ai.x,(*(p+i).y,(*(p+i).z); ,历年真题演练,1.(2009.4单选)已知:,A a.age B p.age C (*p).age D p - age,struct person char name20; int age; a“Li “,20,*p=,则对结构体变量a中成员age错误的引用是( )。,历年真题演练,2.(2010.4单选)已知:,A s - num B *pp -num C (*pp) - num D (*pp).num,Struct person char name15; long num; float score; s , *pp=,则对结构变量成员正确的引用是( )。,同步跟踪测评,1. 已知 如下程 序代码, 分析并 写出它 的运算 结果。,#include struct queueT int iPiece 2; int iBlock 2; ; main() struct queueT queue_t 2=1,2,3,4,5,6,7,8; printf(“%dn“,queue_t 1.iPiece1); ,同步跟踪测评,题1分析,同步跟踪测评,2. 下列哪个是正确的结构变量的定义?,A struct AAA int a;int b; int c; int d; a , b , c; B struct BBB int a;int b; int c; int d; struct BBB a , b , c; C struct CCC int a;int b; int c; int d; struct CCC a ; b ; c; D struct DDD int a;int b; int c; int d; DDD a , b , c;,同步跟踪测评,3. 已知有如下结构类型的定义:,A a=1; B a.a=2; C a.a.a=3; D a.a.a.a=4;,struct T1 int a; struct T2 T1 a; struct T3 T2 a; a;,下列哪个是正确的对结构类型变量a的赋值?( ),同步跟踪测评,4. 下列哪个是正确的对结构类型变量的赋值( )。,A struct T1 int a;T1 a=1 ; B struct T1 int a;T1=1 ; C struct T1 int a;struct t1 a ; a.a=1; D struct T1 int a;T1.a=1 ;,同步跟踪测评,5. 已知有如下定义:,A 1 B 2 C 3 D 4,那么printf(“%d“,sizeof(a);的输出结果是( )。,struct T1 char a; char b; char c2;a;,同步跟踪测评,6. 已知有如下定义:,A 1 B team2 C 3 D team4,那么printf(“%d“,*(p+2);的输出结果是( )。,struct team int iID; char szName20; a4=1,“team1“,2,“team2“,3,“team3“,4,“team4“,*p=a;,同步跟踪测评,7. 下列程序的功能是将输入学生的信息打印出来,试填写完整代码:,#include struct student long Num; char Name20; ; int main(int argc,char *argv) struct student std1,*p= ,同步跟踪测评,8. 程序设计:,利用结构类型,编写一个程序,当输入五组长方体的长、宽、高后,可以输出体积最大的长方体的体积及其长、宽、高。,同步跟踪测评,8. 程序设计:,#include struct box i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 拉脱维亚语中的舞蹈词汇分析论文
- 巴利语中的语言与大数据分析论文
- 2025-2030中国高级聚合物螺钉行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国高压氧舱行业发展分析及发展趋势预测与投资风险研究报告
- 2025-2030中国食品级醋酸钠行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国预测性维护软件行业市场发展趋势与前景展望战略研究报告
- 模块化与组件化-全面剖析
- 生物浸出技术在硫化矿处理中的优化-全面剖析
- 知识竞赛选择题
- 智能门店技术应用-全面剖析
- 软件代码审计与测试作业指导书
- 上消化道出血护理疑难病例讨论记
- 城市轨道交通自动售票机
- 环境设计专业考察课程教学大纲
- 2024版互联网企业股东合作协议书范本3篇
- 企业环保知识培训课件
- 110kV立塔架线安全施工方案
- 完形填空-2025年安徽中考英语总复习专项训练(含解析)
- 《岁末年初重点行业领域安全生产提示》专题培训
- 商混站(商品混凝土公司)安全风险分级管控和隐患排查治理双体系方案全套资料汇编完整版
- GB/T 16288-2024塑料制品的标志
评论
0/150
提交评论