第5章 数组解析.ppt

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 数组 田秀霞 上海电力学院计信学院 本章主要内容 §5.1 一维数组 §5.2 二维数组 §5.3 字符数组 §5.4 字符串类和字符串变量 §5.1 数组 数组是一些具有相同数据类型(如int,float)或相同属性(如10个学生的个人信息)的元素集合。 数组共同特点: 数组必须在创建时将其大小确定下来,不能在以后改变大小。 数组的类型就是这组元素的数据类型。 构成数组的这组元素在内存中占用一组连续的存储单元。 可以用一个统一的数组名标识这一组数据,而用下标来指明数组中各元素的序号。 根据数组的维数将数组分为: 一维数组 二维数组 多维数组 §5.2 一维数组 一维数组定义格式: 数据类型 数组名[常量表达式]; 类型:是数组类型,即数组中各元素的数据类型,可以是整型(int)、浮点型(float,double)、字符型(char),自定义类类型等类型。 数组名:是一个标识符,代表着数组元素在内存中的起始地址。 常量表达式:又称下标表达式,表示一维数组中元素的个数,即数组长度(数组大小),用一对方括号“[ ]”括起来。方括号“[ ]”的个数代表数组的维数,一个方括号表示一维数组。 在编译时,常量也占用空间,甚至涉及内存访问,因为数据确定,所以可以被编译用常数替代。 例:int a[5]; int a[‘a’]; int n=100; int a[n];//错 但是const int n=100; int a[n]; §5.2.2 一维数组元素的引用 数组元素是组成数组的基本单元。数组元素也是一种变量,其标识方法为数组名后跟一个下标。 下标表示了元素在数组中的顺序号。数组元素的一般形式为: 数组名[下标] 下标:只能为整型常量或整型表达式。 下标的范围:从0开始到数组的长度-1。 例如,int a[10]; a[5],a[i+j],a[i++]都是合法的数组元素。 数组元素通常也称为下标变量。必须先定义数组,才能使用下标变量。 int a[5];定义一个数组后,其各个元素的存放形式: 一维数组元素的引用 在C++中只能逐个地使用下标变量,而不能一次引用整个数组。 例如,输出有10 个元素的数组必须使用循环语句逐个输出各下标变量: for(i=0; i10; i++)  couta[i]; 而不能用一个语句输出整个数组, couta;写法是错误的。 §5.2.3 一维数组初始化 对数组元素的初始化可以用以下方法实现: 数据类型 数组名[常量表达式]={初值表}; 初值表外面的花括号“{}”不可以省略 每个数据之间用“,”隔开 在定义数组的同时,为所有数组元素赋初值 例如: int a[10]={ 0,1,2,3,4,5,6,7,8,9 }; 经过上面的定义和初始化之后,相当于a[0]=0,a[1]=1,[2]=2,a[3]=3,a[4]=4,a[5]=5,a[6]=6,a[7]=7,a[8]=8,a[9]=9。 对于指定元素个数的数组,可以只给一部分元素赋值 例如: int a[10]={0,1,2,3,4}; 表示只给a[0]~a[4] 5个元素赋值,而后5个元素自动赋0值。 对全部数组元素赋初值时,可以不指定数组长度. double c[2]={1.5,2.8}; 等价于 double c[]={1.5,2.8}; 注意:当数组长度与提供的初值个数不相同时,数组长度不能省略。 注意: 花括号中的初始值个数不能多于数组定义的元素个数 初始值不能通过逗号的方式省略 初始值不能为空 一维数组初始化 例:int a[5]={1,2,3,4,5,6}; int a[5]={1,,2,3,4}; int a[5]={1,2,3,}; int a[5]={}; 正确的定义形式: int a[5]={1,2,3,4,5}; int a[5]={1,2,3}; int a[5]={0}; int a[]={1,2,3,4,5,6,7}; 默认值 全局数组(在函数外部定义的数组)和静态数组(加上static修饰的数组定义)其元素总是被清0。 局部数组(在函数内部定义的数组)它们的值是不确定的。 数组的赋值 用“=”赋值 与数组的初始化不同,在给数组元素进行赋值时,必须逐一赋值。 例如:对于下述的数组初始化: int a[3]={1,2,3}; 其等价的赋值形式如下: int a[3]; a[0]=1; a[1]=2; a[2]=3; 数组的赋值 若要在数组之间进行赋值,也只能一个一个元素地赋值。 例 int b[3]; 要将数组a赋值给数组b,不能直接写成b=a; 而应写成下列格式即

文档评论(0)

2299972 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档