作者

C++二维数组

C++的二维数组是指具有两个下标的数组,有些数据要依赖于两个因素才能惟一地确定,因此才会引入二维数组。 C++二维数组的定义

C++中定义二维数组的一般格式:

类型标识符 数组名[常量表达式] [常量表达式]

例如:

int array[3][4];

表示数组名为array,类型为整型数组,有3行4列,12个元素。 在C++中,我们可以把二维数组看作是一种特殊的一维数组:它的元素又是一个一维数组。 C++中二维数组中元素排列的顺序是:按行存放,即在内存中先顺序存放第一行的元素,再存放第二行的元素。 和C语言一样,C++同样允许使用多维数组,但是开发中很少用到。 C++二维数组的引用

上一节一维数组中小林已经讲过,在C++中数组必须先定义,然后才能使用,而且只能逐个引用数组元素的值而不能一次引用整个数组中的全部元素的值。  二维数组元素的表示形式为 

数组名[下标] [下标]

下标可以是整型表达式,数组元素是左值,可以出现在表达式中,也可以被赋值。 C++使用数组元素时,应该注意下标值应在已定义的 数组大小的范围内。 C++二维数组的初始化

分行给二维数组赋初值:

int array[2][3]={{1,2,3},{4,5.6}};

可以将所有数据写在一个花括号内,按数组排列的顺序对各元素赋初值:

int array[2][3]={1,2,3,4,5,6};

可以对部分元素赋初值,它的作用是只对各行第1列的元素赋初值,其余元 素值自动置为0。

int array[2][3]={{1},{2}};

可以对各行中的某一元素赋初值: 

int array[2][3]={{1},{4,5,6}}

如果对全部元素都赋初值,则定义数组时对第一维的长度可以不指定, 但第二维的长度不能省:

int array[][3]={{1,2,3},{4,5.6}};

C++在定义数组和引用数组元素时采用:数组名[][],这种两个方括号的方式,对数组初始化时十分有 用,它使概念清楚,使用方便不易出错。 经典案例:C++实现用二数组输出1-6。

#include//预处理using namespace std;//命名空间 int main()//主函数 {int array[2][3]={{1,2,3},{4,5,6}};//定义二维数组且赋初值 int i,j;//定义整型变量 for(i=0;i<2;i++)//外层for循环限制行数 
  {for(j=0;j<3;j++)//内层for循环限制列数 
    {cout<<array[i][j]<<" ";//输出这个数 
    }cout<<endl;//一行结束换行 
  }return 0;//函数返回值为0 
}

执行本程序之后,会输出:

1 2 34 5 6
--------------------------------
Process exited after 2.068 seconds with return value 0
请按任意键继续. . .