- 1、本文档共130页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序设计04章-数组和结构
第四章 小结 1. 数组是一个顺序排列的有相同类型的若干个数据的组合; 2. 数组的所有元素均按行主序方式存放在一个连续的存储空间中 数组名就是这个存储空间的首地址(即第一个元素的存放地址)的符号地址; 3. 数组元素采用下标变量形式表示; 4. 定义数组时需要有确定的空间大小,因此,在定义时必须用常量表达式来定义数组元素的个数;不得更改; 5. 在C语言中,数组的下标从0开始,最后一个下标是数组的长度减1; C的编译器不检查数组下标越界错误; 10 .结构是一个顺序排列的相同或不同类型的若干个数据的组合; 11. 先定义结构类型,再用这个类型来定义和初始化结构变量; 12.结构变量的每个成员都有自己独立的存储空间,所有成员连续存放。 13. 结构变量只能直接赋给同类型另一个结构变量; 使用成员访问运算符“.” 访问结构的成员 14.元素类型为结构的数组称为结构数组; 一般使用结构数组来描述顺序存储的包含多种信息的序列,如多个学生的信息等。 2层含义 * 1.2.1-4 =的区别 * 伊拉特斯提尼斯 1和0既非素数也非合数。 * 筛去与否 做标记 所有的数都在数组中 1—200 下标从0开始 数组大小为201 * jn?i * =的区别 * 不同类型结构变量 不能够直接赋值 除赋值操作外 结构变量不能够整体使用 * 如果结构类型的成员也是结构类型,则需使用成员访问运算符逐级地找到最低级的成员变量 struct student stu ; stu.birthday.month=7; 4.4.3 结构变量的初始化 在定义结构变量的同时可以给其各个成员赋初值,这称为结构变量的初始化 结构变量初始化的一般形式是: struct 结构类型 结构变量名={初值表}; 花括号中的初值赋予结构变量各成员,其数据类型、顺序要与对应成员相匹配 struct weather today ={32.5, 2}; 结构的初始化也可以在类型定义的后面使用初值表进行 struct point{ int x; int y; } pt={32,20}; 完成了3个工作 定义了结构类型 定义了结构变量 变量成员赋初值 结构变量初始化和赋值 struct person { char name[20]; unsigned long id; float salary; }; struct person pr1={“Li ming”, 1082422, 5300.0}; void main( ) { struct person pr2; pr2=pr1; /*结构变量赋值*/ printf(”%s\t%ul\t%f”, pr2.name,pr2.id,pr2.salary); } 注意 只有相同类型的结构变量之间才允许相互赋值 4.5 结构数组 如果一个数组的元素是同一种结构类型的变量,那么这种数组称为结构数组 定义一个结构数组:必须先定义一个结构类型,然后再定义具有结构类型数据作为数组元素的数组 即 一个数组的数组元素全是结构变量 struct person { char name[20]; unsigned long id; float salary; }; struct person allone[100]; 例4.8 假设同学录中共有40位同学 编写程序 输入这些同学的信息 按身高从低到高的顺序40位同学排序 按高低顺序输出这些同学的姓名和身高 算法分析 顺序输入这40位同学的信息 使用冒泡排序法按身高从低到高排序 输出 需要使用结构数组;注意需要按数组元素的height成员的值从小到大排序 4.6 程序举例 例4.9 顺序查找 有n个数存放在一个数组中 输入1个数,查找这个数是否在数组中 如果在,输出其位置, 如果不在,输出0。 数组大小为n+1;数组的下标i表示第i个元 素,数组的下标0处不存储数。 算法思路 依次将数组元素与输入的数进行比较,如果相等则终止循环。 如果元素比较完还未找到输入的数,则输出0。 方法1 从第1个元素到第n个元素依次比较 若不相同,则继续比较下一个元素 若相等则退出循环。 循环结束后,需根据i的值的不同来判断查找是否成功。 scanf(%d, x); for
您可能关注的文档
最近下载
- 2024年广西高考化学试卷真题(含答案解析).pdf
- 初中英语单词及短语分类速记表中考1600词.docx
- 条码技术与应用真题单选题100道及答案解析.docx VIP
- 《直升机空气动力学与飞行原理》课件——模块九:直升机特殊飞行(双语).pptx VIP
- 《直升机空气动力学与飞行原理》课件——模块七:直升机的操纵性(双语).pptx VIP
- 《电力工程技术》600MW发电机过激磁保护与VHz限制的配合分析.doc
- 《直升机空气动力学与飞行原理》课件——模块六:直升机的稳定性(双语).pptx VIP
- 云南二级建造师机考真题及答案.pdf VIP
- 《直升机空气动力学与飞行原理》课件——模块五:旋翼挥舞(双语).pptx VIP
- 提高患者口服药服用的准确率品管圈成果汇报ppt模板 - 副本.pptx
文档评论(0)