- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
尚辅网 尚辅网 第7章数组 本书前面已经讨论了C语言中基本数据类型,但是这些数据类型还远远满足不了解决实际问题的需要。为了解决较复杂的问题,C语言提供了构造类型的数据,它们是:数组类型、结构类型、共用类型。构造类型数据是由基本类型数据按一定规则组成的。 本章介绍数组。数组是数目固定、类型相同的若干个变量的有序集合,这些变量在内存中占用连续的存储单元,在程序中具有相同的名字,但具有不同的下标,因此称这些变量为“下标变量”或数组元素。 数组是一种很有用的数据结构,许多问题,不用数组几乎难以解决。例如:对一个班的学生成绩进行处理,计算个人平均分、学科平均分、名次排序等就算法而言是十分简单的,但不用数组将全班的学生成绩保存起来,解决起来将是十分烦琐的。如:一个班50名学生,若不用数组就需要有50不同个变量,这种程序无法让人接受。如果用数组元素a[0]、a[1]、a[2]……a[49]只需用for循环就能很容易的完成。 当程序中需要使用数组时,必须先定义,后使用数组。数组中的每个成员成为数组元素,数组元素如同其他基本变量一样可以被赋值和在表达式中使用。 7.1 一维数组的定义和引用 7.1.1定义方式: 数据类型 数组名1 [常量表达式][, 数组名2 [常量表达式2]……]; 1.“数据类型”是指数组元素的数据类型。 2.数组名,与变量名一样,必须遵循标识符命名规则。 3.“常量表达式”必须用方括号括起来,指的是数组的元素个数(又称数组长度),它是一个整型值,其中可以包含常数和符号常量,但不能包含变量。 例如:int a[10] ;10表示a数组有10个元素,它们为: a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9] 例如:下面的定义是错误的。 int n; scanf(“%d”,n); int a[n]; 4.数组元素的下标,是元素相对于数组起始地址的偏移量,所以从0开始顺序编号。 5.数组名中存放的是一个地址常量,它代表整个数组的首地址。同一数组中的所有元素,按其下标的顺序占用一段连续的存储单元。 例:int a[10],b[5];表示定义了两个数组,一个a数组10元素,每个元素都是整型的。一个b数组5元素,每个元素都是整型的。数组定义后内存就留好相应个数的存储空间。 7.1.2 一维数组元素的引用 数组元素的表示形式: 数组名[下标表达式] 1.“下标表达式”可以是任何非负整型数据,取值范围是0~(元素个数-1)。 特别强调:在运行C语言程序过程中,系统并不自动检验数组元素的下标是否越界。因此在编写程序时,保证数组下标不越界是十分重要的。 2.1个数组元素,实质上就是1个变量,它具有和相同类型单个变量一样的属性,可以对它进行赋值和参与各种运算。 3.在C语言中,数组作为1个整体,不能参加数据运算,只能对单个的元素进行处理。 [例题7.1] 建立一个a数组10个元素,a[0]到a[9]的值为0~9,然后按逆序输出。 /*例题源代码文件名:LT7_1.C*/ main( ) { int i,a[10]; for(i=0;i10;i++) a[i]=i; for(i=9;i=0;i--) printf(“%d□” ,a[i]); } 7.1.3 一维数组元素的初始化 初始化格式: 数据类型 数组名[常量表达式]={初值表} 如:int a[6]={0,1,2,3,4,5}; 1.定义数组时,对元素初始化 例如:int a[5]={1,2,3,4,5}; 经过上面定义和初始后: a[0]=1, a[1]=2, a[2]=3, a[3]=4, a[4]=5 2.“初值表”中的初值个数,可以少于元素个数,即允许只给部分元素赋初值,后几个元素值为0。 例如:int a[6]={1,2,3}; a[0]=1, a[1]=2, a[2]=3, a[3]=0, a[4]=0,a[5]=0 3.如果想使一个数组中全部元素值为0,可以写成: int a[5]={0,0,0,0,0}; 不能写成: int a[5]={0*5}; 4.如果对数组的全部元素赋以初值,定义时可以不指定数组长度(系统根据初值个数自动确定)。 例如:int a[ ]={1,2,3,4,5}; 等价于int a[5]={1,2,3,4,5}; 如果被定义数组的长度,与初值个数不同,则数组长度不能省略。 例如:int a[10]={1,2,3,4,5}; 只初始化前5个元素,后5个元素为0。 5.根据存储类型的不同,数组有静态数组(static)和动态数组(auto)之分;根据定义的位置不同,数组有内部数组(在函数内部定义的数组)和外部数组(在函数外部定义的数组)之分。(这将在后面章节会介绍) (1)
您可能关注的文档
- C语言程序设计(第二版)电子教案任正云 第3章顺序程序设计.ppt
- C语言程序设计(第二版)电子教案任正云 第4章选择结构程序设计.ppt
- C语言程序设计(第二版)电子教案任正云 第5章循环结构.ppt
- C语言程序设计(第二版)电子教案任正云 第6章 函数.ppt
- C语言程序设计(第二版)电子教案任正云 第7章数组.ppt
- C语言程序设计(第二版)电子教案任正云 第8章 指针.ppt
- C语言程序设计(第二版)电子教案任正云 第9章结构体和共用体.ppt
- C语言程序设计(第二版)电子教案任正云 第10章文件.ppt
- C语言程序设计(第二版)电子教案王伟 第1章.ppt
- C语言程序设计(第二版)电子教案王伟 第2章.ppt
- c语言程序设计(徐贞如) 第8章 函数和编译预处理.ppt
- c语言程序设计(徐贞如) 第9章指针.ppt
- c语言程序设计(徐贞如) 第10章 结构共用型和.ppt
- c语言程序设计(徐贞如) 第11章 位运算.ppt
- c语言程序设计(徐贞如) 第12章 文件.ppt
- C语言程序设计案例教程 第2版 教学课件 作者 廖湖生 叶乃文 周珺 C语言入门.ppt
- C语言程序设计案例教程 第2版 教学课件 作者 廖湖生 叶乃文 周珺 函数.ppt
- C语言程序设计案例教程 第2版 教学课件 作者 廖湖生 叶乃文 周珺 函数复习5.ppt
- C语言程序设计案例教程 第2版 教学课件 作者 廖湖生 叶乃文 周珺 计算机基础知识.ppt
- C语言程序设计案例教程 第2版 教学课件 作者 廖湖生 叶乃文 周珺 结构化实例7.ppt
最近下载
- 151页-【低空经济】低空无人机公共测试场与验证基地设计方案.pdf
- 理想 RISO 9050 7050 3050 7010 3010 闪彩印王中文技术维修手册 后面可以参考理想闪彩印王 EX7200 EX9050 EX9000 EX7250 系列中文维修手册 .pdf VIP
- 生物酶解技术.pptx VIP
- “素养导向”初中物理大单元教学策略及案例.docx VIP
- 小学四年级综合实践活动《衣服巧收纳》公开课课件.pptx VIP
- 公司建设项目全过程造价咨询工作规范.doc VIP
- 教学进度计划表.pdf VIP
- 直肠癌放射治疗靶区勾画.ppt
- 软件工程项目造价技术规范.pdf VIP
- 2025年左玉辉-环境学.pptx VIP
文档评论(0)