C语言——(二维数组)

一.二维数组的概念

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

二.二维数组的创建

如何创建二维数组,如下

1.type arr_name常量值1常量值2

例子:

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

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

3.35 ,表示有3行5列,每一行有5个元素

三.二维数组的初始化

1.不完全初始化

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

2.完全初始化

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

3.按照行初始化

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

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

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

四.二维数组的使用

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

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

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

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

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

六.二维数组的存储

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

结尾:

感谢大家的阅读!!!

相关推荐
毕竟是shy哥几秒前
PromptHash:基于亲和提示协同学习的自适应哈希检索跨模态算法
学习·算法·哈希算法
甄心爱学习几秒前
【项目实训(个人12)】
人工智能·python·算法
玖玥拾13 分钟前
C/C++ 基础笔记(八)
c语言·c++
团象科技25 分钟前
走访近百支出海技术团队后的海外云计算资源选型实操观察
大数据·人工智能·算法
勤自省41 分钟前
吴恩达机器学习课程实验:线性回归模型入门(课后实验)
人工智能·算法·机器学习·回归·线性回归
ChillCoding1 小时前
更新中:C++ STL库,查找排序(基础算法),数据结构,数学算法,竞赛相关基础
数据结构·c++·算法
智者知已应修善业1 小时前
【51单片机使用IO组赋值方法实现无源蜂鸣器响时LED12亮不响时34亮】2024-3-7
c++·经验分享·笔记·算法·51单片机
珊瑚里的鱼1 小时前
【动态规划】按摩师
算法·动态规划
Fms_Sa1 小时前
贪心算法-背包问题
算法·贪心算法·c#
大雨淅淅1 小时前
【机器人】ROS2 机械臂控制(MoveIt2)从入门到实战
人工智能·python·神经网络·学习·算法·机器学习·机器人