- 1、本文档共85页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 数 组 7.1 一 维 数 组7.1.1 数组概述 通过前面的学习,我们知道,如果在程序中需要暂时存放几个数据,就需要定义几个变量。但是,这种方法在处理大批量的同类型的数据的时候,就显得不是很方便了。例如,某个班级有45名同学,在“程序设计基础”这门课程考试结束后,要编写一个程序,统计一下成绩高于平均分的人数。针对这个问题,可以设计出如下算法: ① 依次接受并暂存45个成绩; ② 计算总分和平均分; ③ 置计数器为0; ④ 对每一个成绩,若它大于平均分,则计数器累加1; ⑤ 输出计数器的值。 按照以上算法的要求,如果在程序中定义45个变量去暂存这45个成绩,显然是一种比较笨拙的办法。 那么,有没有更好的办法呢?其实,针对这种大批量数据的存储问题,C语言中提供了数组这种数据类型来解决。 数组的实质是内存中一段连续的存储空间,例如内存中连续的20个字节的存储空间就可以称为一个数组。这个数组如果用来存放int型的数据,则可以存放10个(若每个int型的数据需要两个字节的存储空间)。此时每两个字节构成数组中一个存储单元,称为数组元素或数组分量;当然,这个数组也可以用于存放5个float型的数据(若每个float型的数据需要4个字节的存储空间),此时,每4个字节构成一个数组分量。在程序中,数组用一个名字来表示,数组中分量用编号来区分。采用这种方式,不但解决了大批量同类型数据的存储问题,而且方便用循环的方式来对这些数据进行运算和处理。 存放在数组中的多个数据,从逻辑上可以看做是按一个方向排列的,也可以看做是按两个方向排列的。例如20个整数可以看做是按一个方向排列的,在C语言中称为一维数组;这20个整数也可以分为4组,每组5个,在C语言中就称为二维数组。这种情况下,通常仿照数学中行列式的形式,称这20个数构成4行5列的二维数组。当然,一组数也可以看做是按多个方向排列的,这在C语言中就称为多维数组了。 7.1.2 一维数组的定义和初始化 一维数组的定义形式如下: 数据类型 数组名[分量个数]; 数组名和变量名一样,是C语言中的标识符,必须符合标示符的命名规则。分量个数必须是一个整型数,通常是常量或常量表达式。分量个数表示的数组中存储单元的个数,也就是这个数组中可以最多存放的数据的个数。数据类型用来指定数组中可以存放的数据的类型。例如: int array[10]; 以上语句,定义array是一个数组,这个数组是用来存放int型数据的,最多可以存放10个int型的数据。 定义了数组之后,如果这个数组是外部数组,则数组中每个分量中存放的都是0,也就是说,每个数组元素的值都是0;如果这个数组是内部数组,则数组中元素的值是随机值。定义数组时,可以把特定的值存放在数组中,这种情况称为数组的初始化,例如: int array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; 以上语句,定义array是一个有10个元素的int型数组,同时把1,2,3,…,10这10个数依次存放在数组的10个元素中。当然,也可以对数组进行部分初始化,例如: int array[10] = {1, 2, 3}; 以上语句,在定义数组的同时,把1、2、3依次存放在数组的第1、第2和第3个元素中,此时,数组中其余元素自动被初始化为0。 7.1.3 一维数组元素的引用 数组在使用中,通常不会做整体的引用,更多的是引用数组中某一个分量中存放的数据。一维数组中的每一个分量都对应一个编号。需要特别注意的是分量的编号是从0开始的,即数组中第一个分量的编号为0,第二个分量的编号为1,依此类推。在程序中,引用数组分量的形式为“数组名[编号]”,这里的编号为一个取值为int型的表达式。例如,对如下定义的数组: int array[10]; 如果要将其中的第1个分量赋值为5,则表达为如下语句: array[0] = 5; 再例如要将数组array中第3个分量和第4个分量中存放的值求和后,存放在数组的第5个分量中,可使用如下语句: array[4] = array[2] + array[3]; 在对数组中存放的数据进行运算和处理时,通常采用循环的方式,例如对于前面提到的成绩统计的问题,可以编写出如下的源程序: /*源程序7-1*/#includestdio.hmain(){ float score[45], sum, avg; int i, counter; for(i=0; i45; i++){ printf(Palease input score[%d]:, i); s
您可能关注的文档
- 城市轨道交通客运组织 教学课件 作者 裴瑞江 项目五.ppt
- 常用工具软件 教学课件 作者 邹祖银 康志亮 宋勤 第7章 图形图像工具.ppt
- 城市轨道交通客运组织 教学课件 作者 裴瑞江 项目一.ppt
- 操作系统( 第二版) 高职计算机应用技术专业 第2章 作业管理.ppt
- 城市轨道交通通信与信号 教学课件 作者 贾毓杰 B20100104121108275.ppt
- 操作系统( 第二版) 高职计算机应用技术专业 第3章 进程管理.ppt
- 城市轨道交通通信与信号 教学课件 作者 贾毓杰 B20100104121203993.ppt
- 城市轨道交通通信与信号 教学课件 作者 贾毓杰 B20100104121618637.ppt
- 常用工具软件 教学课件 作者 邹祖银 康志亮 宋勤 第8章 音频工具.ppt
- 仓储管理实务课件 宋雷修改后 仓储管理实务 大连理工大学出版社课件 宋雷 单元1仓储认知.ppt
最近下载
- 规范汉字书写 标点符号用法举例 标点符号用法举例.pptx VIP
- 职业院校技能大赛--Z-30“工程测量”赛项理论考试题库.doc VIP
- 安全员C证考试题库(精练).docx VIP
- 2018年四川省职业院校技能大赛工程测量赛项中职组理论考试题库.docx VIP
- 2020年山东省职业院校技能大赛中职组工程测量赛项理论试题.doc VIP
- 第十六届山东省职业院校技能大赛中职工程测量赛(教师组)理论试题.docx VIP
- 中央八项规定精神专题党课讲座PPT模板.pptx VIP
- 第十六届山东省职业院校技能大赛中职工程测量赛项(学生组)理论试题.docx VIP
- 全频带阻塞干扰刘慈欣小说读书分享PPT.pptx VIP
- 作子女生命的教练.PPT
文档评论(0)