二维数组的使用

简介: 这篇内容介绍了二维数组的概念,它是将一维数组作为元素构成的数组,也称为多维数组。文章详细讲解了如何创建二维数组,包括指定行数和列数,并展示了不同类型的初始化方式:不完全初始化(剩余元素设为0)和完全初始化。此外,还提到了按照行初始化的语法。内容中强调了C语言中二维数组的行和列都从0开始计数,并通过示例解释了如何访问和输出数组元素。最后,讨论了二维数组在内存中的存储方式,它是一维数组数组,元素在内存中是连续存放的。

二维数组


如果把一维数组作为数组的元素,这时候就是二维数组,二维数组以上的数组统称为多维数组。



二维数组的创建


type arr_name[常量值1][常量值2];


例如:


int arr[3][5];


(3表示数组有3行,5表示每行有5个元素,int表示数组里的每个元素都是整型类型,arr是数组名,可以根据实际情况起名字。)


double date[2][8];


二维数组的初始化


在创建变量或者数组的时候,给定一些初始值,被称为初始化,二维数组的初始化和一维数组一样,也是使用大括号初始化的


不完全初始化


依次初始化每一行,当不够的时候,剩余的元素初始化为0


例如:


int arr1[3][5]={1,2};

int arr2[3][5]={0};


完全初始化


例如:


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



按照行初始化


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



初始化时可以省略行,但是不可以省略列


int arr5[ ][5]={1,2,3};

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

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




二维数组的下标


二维数组的访问也是使用下标的形式,二维数组是有行和列的,只要锁定了行和列就能唯一锁定二维数组里的一个元素


C语言规定,二维数组的行是从0开始的,列也是从0开始的


如下:


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



二维数组的访问


如下:



结果为:




二维数组在内存中的存储


二维数组在内存中也是连续存放的


二维数组是一个存放一维数组的数组,二维数组的每个元素是一维数组


和一维数组一样,我们可以打印出二维数组中所有元素的地址


如下:



结果为:



输出数组中的所有元素


如下:



结果为:


目录
相关文章
|
7月前
|
存储 算法 搜索推荐
15一维数组
15一维数组
65 0
【一维数组和二维数组】
【一维数组和二维数组】
62 0
|
2月前
|
存储
如何通过指针数组来实现二维数组?
介绍了二维数组和指针数组的概念及其区别,详细讲解了如何使用指针数组模拟二维数组,包括定义与分配内存、访问和赋值元素、以及正确释放内存的步骤,适用于需要动态处理二维数据的场景。
|
7月前
|
存储 编译器 C语言
认识一维数组和使用
**数组概念与特性:**数组是一组相同类型元素的集合,包含至少一个元素。数组可分为一维和多维(如二维数组)。在创建时需指定大小和元素类型,如`int arr[5]`表示一个包含5个整数的数组。数组元素通过下标访问,下标从0开始。数组在内存中连续存放,可以通过`sizeof`计算数组占用的字节数以间接获取元素个数。
56 1
|
7月前
|
存储 算法 搜索推荐
16二维数组
16二维数组
48 0
|
7月前
|
存储 算法 C++
C++013-C++二维数组
C++013-C++二维数组
C++013-C++二维数组
|
7月前
|
算法 C++
C++012-C++一维数组
C++012-C++一维数组
C++012-C++一维数组
|
7月前
|
JavaScript 前端开发 索引
如何对实现一维数组转化为二维数组
本文章实现了数组之间的转换
|
存储
二维数组剖析
二维数组剖析
58 0
|
7月前
|
C语言
二维数组的知识
二维数组的知识