C大学基础教程第五章zhou.pptVIP

  • 10
  • 0
  • 约 63页
  • 2017-05-02 发布于四川
  • 举报
C大学基础教程第五章zhou

C++大学基础教程 第5章 数组 北京科技大学 计算机系 数组基本概念 数组是具有一定顺序关系的若干相同类型变量的集合。 组成数组的变量称为该数组的元素。 数组元素都有相同的变量名(数组名),但是有不同的下标。 数组属于构造类型 一个人N门课的成绩怎样存储和处理? 一个班N门课的成绩怎样存储和处理?...... 一维数组的定义与引用 一维数组的定义 类型说明符 数组名[ 常量表达式 ]; 例如: int a[10]; 1) a 为整型数组名; 2)a数组有10个元素,每个元素都是整数数据:a[0]...a[9] 数 组 上C++课程的学生成绩(120个学生) float scoresCPlus[120]; scoresCPlus[0] scoresCPlus[119] 一维数组的存储顺序 数组元素在内存中顺次存放,它们的地址是连续的。 Eg.int a[10]; 具有10个元素的数组 a,在内存中的存放次序如下: 数组名字是数组首元素的内存地址。 数组名是一个常量,不能被赋值。 数 组 一维数组的定义与引用 引用 数组必须先定义,后使用。 只能逐个引用数组元素,而不能一次引用整个数组 数组元素的引用是通过下标变量实现的。 元素的引用形式为: 数组名[下标表达式] 例如1:int a[10]; a[0]=a[5]+a[7]-a[2*3] 2: int salaries [6]; int a=5; salaries[a]=900; 数 组 注意 在使用数组元素时需要注意: ►数组元素的下标表达式其结果必须正整数(≥0)。 ►数组元素的下标值从0开始,不得超过声明时所定义的上界。 数组的下标 数组元素的下标是数组元素到数组开始地址的偏移量。 第1个元素的下标为0,其地址是数组的首地址,第2个元素的下标为1,偏移量距离首地址是1个数组元素大小,依次类推。 因此,数组元素是一系列大小相同的连续项,每项到公共基点(数组起始地址)的偏移量是固定的。 错误的数组定义语句 void VoidArray[10]; //void不可以做数组类型 int a=9; float floatArray[a]; //数组的长度不可以是变量 char charArray[1.5+1.5]; //3.0不是整数 例5.1 定义一个10个整数的数组 解:以ARRAY命名的数组,用100至109对数组元素赋值,并对其求和。需要在一个循环中使用数组。这是使用数组最经常的方式。 void main() { int ARRAY [10]; int sum=0; for (int i=0;i10;i++) { ARRAY[i]=100+i; sum+= ARRAY[i]; } } 注意 不能直接把一个数组赋给另一个数组。假设要将数组total_sales的值拷贝到数组saved_sales中,使用下面的赋值方法就是错误的: saved_sales =total_sales; //error 应使用一个循环语句将total_sales中的元素的值逐个赋给数组saved_sales中的每个元素。如下面的代码所示: for (int i=0;iARRAY_SIZE;i++) saved_sales[i] =total_sales[i]; 一维数组的初始化 可以使数组得到初值: 在声明数组时对数组元素赋以初值。 例如:int a[10]={0,1,2,3,4,5,6,7,8,9}; 可以只给一部分元素赋初值。其他元素自动赋值为0 例如:int a[10]={0,1,2,3,4}; 在对全部数组元素赋初值时,可以不指定数组长度。长度为初值的个数。 例如:int a[ ]={1,2,3,4,5} 等价于 int a[5]={1,2,3,4,5} 数 组 大括号的使用 通过使用大括号,可初始化任何一种类型的数组。 例如,要记录前三年的销售总额,则可以如下定义并初始化一个数组: double sales[]= {4323.43,122355.32,343324.96} 注意:上面这种使用大括号来初始化数组的方法只能在定义数组时使用。在数组定义之后,就不能用这种方法了,而只能逐个元素地赋值。 double sales[3]; sales= {4323.43,122355.32,343324.96} × 全局数组初始化 C++自动将全局数组变量中的所有元素初始化为0或null。 如果未赋初值,

文档评论(0)

1亿VIP精品文档

相关文档