




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
全 国 高 职 高 专 计 算 机 技 能 型 人 才 培 养 系 列 规 划 教 材 第 3章 数 组 主要内容 维数组 维数组 概述 数组是一组具有相同类型的有序数据的集合。数组中的一个数据成员称为数组元素,每个数组元素用相同的数组名和不同的下标来唯一确定,每个数组元素是一个变量,可以用来保存数据,所以数组是有序变量的集合。 可以是类类型。 一个数组的创建一般需要三个步骤: 1数组的声明 数组元素类型 数组名 ; 或 数组元素类型 数组名; 2创建数组空间 数组名 =组元素类型 数组长度 ; 3初始化数组 初始化数组就是要使数组中的各个元素有确定的数值。 一维数组的声明 数据类型 数组名 ; 或 数据类型 数组名; 数据类型指明数组元素的数据类型,可以是 组名是一个合法的标识符; 表示定义的变量是一个数组变量,并且是一维的。 例如: a; (或 a;) /声明一个一维整型的数组 a b; (或 b;) /声明一个一维字符型的数组 b c; (或 c;) /声明一个一维双精度实型的数组 c 若数组的类型一样,可以一次定义多个数组,如: x,y,z; 或 x,y,z; 注意: 不会为数组分配存储空间。 因此,数组声明时,是不指明长度的,而且声明后的数组,必须要通过分配存储空间来创建数组对象后,才可以访问数组中的元素。在仅有数组的声明时,数组变量只是一个空指针( 一维数组的声明 一维数组的空间分配 为数组分配存储空间的方法有两种: ( 1)用 ( 2)通过初始化分配内存。 1用 数组名 =数据类型 例如: a=; b=0; c=; 整型数组 ,即有 5个整型数组元素: a0、a1、 a2、 a3、 a4,每一个元素都可以存放一个整型的数据,相当于 5个整型变量。 当用 统将为每个数组元素都赋予一个初值,这个初值取决于数组的类型。 数值型数组元素的初值为 0,字符型数组元素的初值为一个不可见的控制符( 布尔型数组元素的初值为 符串数组和所有其他对象数组在创建时元素的初值为 实际应用中,用户可根据具体情况来对数组元素重新赋值。 一维数组的空间分配 注意: 当数组的存储空间分配以后,数组的长度就固定下来不能变化,除非用 此可以随时为数组重新分配空间,但是该数组原来存储的数据将丢失。如: a=3,5,9; a=0;/此时 , 5, 9将丢失 数组初始化就是为数组元素指定初始值 ,同时为数组分配相应的内存空间。 格式: 类型名 数组名 =表达式 1,表达式 2,表达式3, 一维数组的空间分配 例如: a =1, 2, 3, 4; 上述语句声明并创建了数组 a,并且为数组中的每个元素赋值,使得 a0=1, a1=2, a2=3, a3=4。系统将根据所给初值的个数计算出数组的长度并分配相应的存储空间,因此 。 注意: “ ”里的每一个表达式值的数据类型必须是相同的。 不要再指定长度了。 一维数组的空间分配 3. 复合类型数组元素分配内存空间(类类型) 复合类型数组分配内存空间时,还需对每个数组元素再进行空间分配,如: s ; s=; s0=; /为第一个元素分配空间 s1=; /为第二个元素分配空间 s2=; /为第三个元素分配空间 一维数组的空间分配 一维数组的使用 (1) 数组元素的使用 数组在分配好内存空间后,就可以在程序中像普通数据类型的变量一样使用,即可以在任何允许使用变量的地方使用数组元素。数组元素的识别方式为: 数组名 下标 下标为非负的整型常数或表达式,数据类型只能是 注意:数组的下标是从 0开始,到数组长度减 1。 例 :元素的赋值与输出。 a=; /声明数组并进行存储空间的分配 +(i=0;i0; ”+fj); /输出每个元素 ); 程序的运行结果为: 55 34 21 13 8 5 3 2 1 1 注意:此处定义了一个长度为 11的数组,使用时下标是从 1开始到 10,没有使用 f0,这样数组的下标就和数列的序号相同,符合人们的使用习惯。 (2)数组的使用 当数组创建后, 数组名就存储了数组存储空间的起始地址 ,也可以使用这个数组名给其他的同类数组名赋值,这样使得多个数组共享一组内存空间和数据。如下图所示: 如: a=; b,c; b=c=a; a b c 2000H 2000H 2000H 2000H 堆内存 栈内存 一维数组的使用 例 :数组的使用示例 ) a=0,1,2,3,4; b; b=a; j=0;jci)ci; ci; s0= s1= s2=c0=0; s; 主要内容 维数组 维数组 维数组 在 维数组被看成是一维数组的数组,例如,二维数组看作是特殊的一维数组,二维数组的每一个元素又是一个一维数组。下面主要以二维数组为例说明更多维数组的使用情况。 利用二维数组可以更方便地处理表格形式的数据。 二维数组的声明 数据类型 数组名 ; 或 数据类型 数组名; 或 数据类型 数组名 ; 例如: a; /声明一个二维整型的数组 a b; /声明一个二维字符型的数组 b c; /声明一个二维双精度实型的数组 c 注意:对二维数组的声明也不分配存储空间。 二维数组的空间分配 (1) 用运算符 对二维数组用 方法 1:直接为二维数组的每一维分配存储空间。 数组名 =数据类型 例如: a; a=6;/给数组 行 6列共 30个整型数据空间 b=3;/数组 行 3列 6个 方法 2: 从最高维开始,分别为每一维分配空间 格式: 数组名 =数据类型 ; 数组名 0=数据类型 数组名 1=数据类型 例如: =; =; =; =; 二维数组的空间分配 可见,此种定义方法得到的二维数组,数组空间不是连续分配的,所以低维的长度可以是不等长的,通常用在字符串数组中。 注意: 此方法必须 先分配高维数组 的大小,然后 再分配低维数组的大小 。即不允许出现下面的定义形式, a=3; 二维数组初始化 &分配内存 与一位数组相似,也可以在初始化的同时为二维数组分配内存空间。 格式: 类型名 数组名 =数据 11,数据 12, , 数据 21,数据 22, , 例如: a =1, 2, 3, 4, 5, 6, 7, 8; 系统将根据所给初值的个数计算出数组的长度并分配相应的存储空间,得到 ,第二维长度分别为 2,3, 3。 注意:“ ”里的每一个表达式值的数据类型必须相同。 引用 a02是错误的。 二维数组的使用 二维数组在分配好内存空间后,可以像一维数组元素一样使用,每个数组元素的识别方式都为: 数组名 下标 1 下标 2 下标 1和下标 2与一维数组的下标要求是一样的。 对二维数组元素的操作通常使用的是,嵌套的循环结构。 程序如下: ) =1,2,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东中学考试试题及答案
- 2024国际商业美术设计师考试内容更新试题及答案
- 2024年纺织工程师考试知识点分析试题及答案
- 加强纺织工程师证书考试能力的试题及答案选择
- it基础考试试题及答案
- 助理广告师考试广告运行流程试题及答案
- jsp考试笔试题及答案
- 了解纺织行业人才流动与变动试题及答案
- 2024年纺织品检验实务技巧试题及答案
- 禾望电气笔试题及答案
- 系统解剖学-肝脏、胰腺
- 2023年第四届北京市大学生模拟法庭竞赛第一轮赛题A
- GB/T 6109.1-2008漆包圆绕组线第1部分:一般规定
- GB/T 20721-2006自动导引车通用技术条件
- GB/T 12704.2-2009纺织品织物透湿性试验方法第2部分:蒸发法
- 公众责任险、财产一切险培训课件
- 2022山东高考语文答题卡(新高考I卷)word版3
- lovo操作手册中文翻译版-professorgong
- 有限空间作业气体检测记录表
- 重力式降落救生艇的降落和释放装置课件
- 土地集约利用教学课件
评论
0/150
提交评论