首页 > 编程语言 > 详细

C++——多维数组

时间:2020-04-09 16:22:27      阅读:58      评论:0      收藏:0      [点我收藏+]

二维数组

我们先来看二维数组,所谓二维数组,就是一维数组里面的各个元素分别是一个一维数组。二维数组可以用来表示表或者矩阵。

 

声明二维数组

语法如下:

//声明二维数组
elementType arrayName[ROW_SIZE][COLUMN_SIZE];

//elementType是返回值类型
//arrayName是二维数组名字
//ROW_SIZE和COLUMN_SIZE分别表示行和列的大小

一个二维数组可以分为两部分看。

第一部分:elementType arrayName[ROW_SIZE]

这一部分看以先看成一个一维数组,它的大小为ROW_SIZE,也就是说,里面将要放ROW_SIZE个数组。

第二部分:[COLUMN_SIZE]

这一部分说明了,在一维数组elementType arrayName[ROW_SIZE]中的小数组的大小

 

假如我声明了一个二维数组int array[2][3],在内存中的表示应该是:[[0, 0, 0], [0, 0, 0]],即

0       0       0       0       0       0      

 

用人易理解的表格或者矩阵表示应该为:

0        0        0
0 0 0        

 

为二维数组赋值

二维数组的赋值语法同一维数组一样,确认要赋值元素的位置,然后赋值即可。

 

arrayName[a][b] = value;
//0 <= a <= ROW_SIZE-1
//0 <= b <= COLUMN_SIZE-1

 

初始化的二维数组:

 

int m[4][3] = 
    {{1, 2, 3}, 
     {4, 5, 6}, 
     {7, 8, 9}, 
     {10, 11, 12}
    };

在初始化二维数组时,行号可以省略,但是列号一定不可以省略。

同样要注意的是,数组的第一个下标是0。所以赋值语句array[1][2] = 1;执行后,上述表格会变为:

0        0        0       
0        0        1      

 

操作二维数组

二维数组的操作也同一维数组类似。不过一维数组一般使用一层循环语句

 

for (int i = 0; i < SIZE; i++) {
    //body
}

 

而二维数组一般使用两层嵌套循环语句

for (int i = 0; i < ROW_SIZE; i++) {
    for (int j = 0; j < COLUMN_SIZE; j ++) {
        //body
    }
}

如下面的打印数组元素:

#include <iostream>

using namespace std;

const int COLUMN_SIZE = 5;

int main()
{
//行号可以省略,但是列号一定不能省略
int list[][COLUMN_SIZE] = {{1, 2, 3, 4, 5},{6, 7, 8, 9, 10}}; for (int i = 0; i < 2; i++) { for (int j = 0; j < COLUMN_SIZE; j ++) { cout << list[i][j] << endl; } } return 0; }

运行结果:

技术分享图片

 

 二维数组作为函数参数

同一维数组,但是必须要指明列的大小。

 

多维数组

多维数组就是多层的数组。比如三维数组就是一个一维数组,里面的元素是二维数组。更高维的数组也是同理。

多维数组与二维数组很类似,这里就不过多赘述。

注:不论几维数组,在内存中均是线性排列的。

 

C++——多维数组

原文:https://www.cnblogs.com/bwjblogs/p/12659118.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!