- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]c6th
* 第六章 数 组 §6.1 一维数组的定义和引用 数祖是指一组同类型数据组成的序列,用一个统一的数组名标识这一组数据,用下标来指示数组中元素的序号。 应该强调:同一数组中的所有元素必须属于同一数据类型。 6.1.1 一维数组的定义 定义一个一维数组的一般方式为: 类型标识符 数组名[常量表达式] 例如 int a[12]; char num[100]; double dat[10]; 说明: 1、数组名定名规则和变量名相同,遵循标识符定名规则。 2、数组名后是用方括弧括起来的常量表达式,不能圆括弧。 3、常量表达式表示元素的个数,即数组长度。注意:数组元素的序号(即下标)是从0开始的。例如: int a[4]; 定义了一个名为a的数组,它包含4个元素,每个元素都是整形的。这4个元素是 :a[0],a[1],a[2],a[3]。注意不能使用数组元素a[4]。 4、常量表达式中可以包括常量和符号常量,不能包含变量。也就是说,C不允许对数组的大小作动态定义,即数组的大小不依赖于程序运行过程中变量的值。 6.1.2 一维数组的初始化 对数组元素的初始化可以用一下方法实现: 1、在定义数组时对数组元素赋以初值。 例如: static int a[10]={0,1,2,3,4,5,6,7,8,9}; 注意 :在int的前面有一个关键字static,它是“静态存储”的意思(有关静态存储将在第七章中详细说明)。C语言规定只有静态存储(static)数组合外部存储(extern)数组才能初始化。 2、可以只给一部分元素赋值。 例如: static int a[10]={0,1,2,3}; 3、如果像是一个数组中全部元素值为0,可以写成 static int b[4]={0,0,0,0}; 不能写成 static int a[10]={0*10}; 4、在对全部数组元素赋初值时,可以不指定数组长度。 例如 static int b[4]={1,2,3,4}; 可以写成 static int b[ ]={1,2,3,4}; 6.1.3 数组元素的引用 数组在定义后即可引用。 其元素的引用形式为: 数组名[下标] 6.1.4 一维数组应用举例 例如:6。2 用数组来处理求Fibonacci数列问题。 例:6。3用起泡法对10个数排序(由小到大)。 1 3 7 5 8 10 a[5] a[4] a[3] a[2] a[1] a[0] 1 3 7 5 10 8 1 3 7 10 5 8 1 3 10 7 5 8 1 10 3 7 5 8 10 1 3 7 5 8 其基本思想是:将相邻两个数a[0]与a[1]比较,按要求将这两个数排序;再将a[1]与a[2]比较,…;依此处理,直到将最后两个数比较并处理完毕。(这是第一轮的比较和处理) “起泡法”排序 § 6.2 二维数组的定义和引用 数组是用于按顺序存储同类型数据的数据结构。 如果有一个一维数组,它的每一个元素是类型相同的一维数组(注意,数组的类型相同包括两个含义:其大小相同并且各个元素的类型相同)时,就形成一个二维数组。 6.2.1 二维数组的定义 二维数组定义的一般形式为: 类型说明符 数组名[常量表达式][常量表达式] 例如: float a[3][4], b[5][10]; 定义a为3x4(3行4列)的数组,b 为5x10(5行10列)的数组。 注意不能写成 float a[3,4], b[5,10]; C语言对二维数组采用这样的定义方式,使我们可以把二维数组看作是一种特殊的一维数组:它的元素又是一个一维数组。 a a[0] a00 a01 a02 a03 a[1] a10 a11 a12 a13 a[2] a20 a21 a22 a23 可以把a[0]、a[1]、a[2]看作是三个一维数组的名字。上面定义的二维数组可以理解为定义了三个一维数组,即相当于 float a[0][4],a[1][4],a[2][4] 此处把a[0]、a[1]、a[2]看作一维数组名。 C语言的这种处理方法在数组初始化和用指针表示时显得很方便。 例如,可以把a看作是一个一维数组,它有3个元素:a[0]、a[1]、a[2],每个元素又是一个包含4个元素的一维数组。见下图: float a[3][4] C语言中,二维数组中元素排列的顺序是:按行存放,即在内存中先顺序存放第一行的元素,再存放第二行的元素。 a00 a01 a02 a03 a10 a11 a12
您可能关注的文档
- [理学]3热力学第一定律.ppt
- [理学]3点的复合运动08.pdf
- [理学]3正交偏光镜下晶体的光学性质.ppt
- [理学]3热第一定律.ppt
- [理学]3直线的投影.ppt
- [理学]3胶粘剂.ppt
- [理学]3第 十章三相异步电动机的机械特性及各种运转状态讲稿.ppt
- [理学]3静定结构内力分析.ppt
- [理学]3行列式递归定义.ppt
- [理学]4 环烃 脂环烃.ppt
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)