C语言——(二维数组)

一.二维数组的概念

1.前⾯学习的数组被称为⼀维数组,数组的元素都是内置类型的,如果我们把⼀维数组做为数组的元素,这时候就是⼆维数组,⼆维数组作为数组元素的数组被称为三维数组,⼆维数组以上的数组统称为多维数组。

C语言——(二维数组)_第1张图片

二.二维数组的创建

如何创建二维数组,如下 

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

例子: 

1. int 表示数组中的每个元素为整型

2. arr1表示为数组名字,名字可以根据实际情况起,有意义即可

3.[3][5] ,表示有3行5列,每一行有5个元素

C语言——(二维数组)_第2张图片

三.二维数组的初始化 

1.不完全初始化 

1.arr1第一行元素为1和2,其他元素默认为0 , arr2第一行元素为0,其他元素默认为0     

C语言——(二维数组)_第3张图片

C语言——(二维数组)_第4张图片

2.完全初始化

3行5列,每一行存放满5个元素 

C语言——(二维数组)_第5张图片

C语言——(二维数组)_第6张图片

3.按照行初始化 

二维数组可以按照行进行初始化,但是必须加上{ } ,{ }指定了该行存放的元素,{1,2}第一行,{3,4}第二行,{5,6}第三行,其余的默认为0

C语言——(二维数组)_第7张图片

C语言——(二维数组)_第8张图片

4.初始化可以省略行,但不能省略列

为什么二维数组的行可以省略,但列不能省略,因为[5]规定了这一行只能存放5个元素,那么如果我这一行放不满元素,我就只需要一行就可以。如,arr5我只放了{1,2,3}这3个元素,那么列为5,所以我第一行能放5个元素,但只放了3个,那么只需要1行。arr6为7个元素,我第一行放不完,就会接着存放到第二行,arr7花括号{ },就指定了存放的行数。

C语言——(二维数组)_第9张图片

C语言——(二维数组)_第10张图片

四.二维数组的使用

二维数组与一维数组的元素访问一样,都是使用下标来进行访问。

二维数组的下标与一维数组的下标一样,都是0下标开始的。二维数组分为行与列,行的下标开始为0,列的下标开始为0,只要我们知道了二维数组的行与列的下标,就可以访问到该二维数组下标的元素。

如下,我想访问第二行的元素5,那么我们知道行与列的下标开始为0,那么行就是0,1,2这三行,列就是0,1,2,3,4这五行,访问第二行第3列,就是arr[1][3]也就是元素5。

C语言——(二维数组)_第11张图片

五.二维数组的输入与输出 

第一个for为产生行,那么我们下标从0开始为0,1,2所以i<3,第二个for为产生列,列的下标为0开始0,1,2,3,4所以,j<5 。

C语言——(二维数组)_第12张图片

六.二维数组的存储 

二维数组的存放我们可以看到,因为是int整型所以他们之间是相差4个字节,所以二维数组的每个元素是连续存放的

C语言——(二维数组)_第13张图片

结尾:


感谢大家的阅读!!!

你可能感兴趣的:(c语言,算法)