二维数组的使用

简介: 这篇内容介绍了二维数组的概念,它是将一维数组作为元素构成的数组,也称为多维数组。文章详细讲解了如何创建二维数组,包括指定行数和列数,并展示了不同类型的初始化方式:不完全初始化(剩余元素设为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,};



二维数组的访问


如下:



结果为:




二维数组在内存中的存储


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


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


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


如下:



结果为:



输出数组中的所有元素


如下:



结果为:


目录
相关文章
|
Java Maven
maven篇4:pom文件详解
maven篇4:pom文件详解
864 3
|
Web App开发
如何搭建 Scratch 官方网页版?真正意义上的一键安装部署
功能介绍 Scratch 是一款由麻省理工学院(MIT) 设计开发的一款面向少年的简易编程工具,Scratch 已经是少儿编程行业的基础软件。使用 Scratch,你可以编写属于你的互动媒体,像是故事、游戏、动画,然后你可以将你的创意分享给全世界。
9031 0
|
Kubernetes 监控 网络协议
在K8S中,Pod有几种探针?
在K8S中,Pod有几种探针?
|
12月前
|
算法 容器
【算法】——双指针算法合集(力扣)
移动零,复写零,快乐数,盛最多水的容器,有效三角形的个数,和为s的两个数(查找总价格为目标值的两个商品 ),三数之和,四数之和
|
存储 SQL 关系型数据库
mysql 的ReLog和BinLog区别
MySQL中的重做日志(Redo Log)和二进制日志(Binary Log)是两种重要的日志系统。重做日志主要用于保证事务的持久性和原子性,通过记录数据页的物理修改信息来恢复未提交的事务更改。二进制日志则记录了数据库的所有逻辑变化操作,用于数据的复制、恢复和审计。两者在写入时机、存储方式、配置参数和使用范围上有所不同,共同确保了数据库的稳定性和可靠性。
315 2
|
机器学习/深度学习 PyTorch API
|
存储 JavaScript 安全
Web中的C/S架构
Web中的C/S架构
862 0
|
分布式计算 MaxCompute
如何绕过ODPS不支持的笛卡尔积的限制
`` select * from pn_tablename a join pn_tablename b; `` odps不支持无 on 的 join 会报 ODPS-0130252 Cartesian product is not allowed without map join 的错误 可以.
12894 0
|
机器学习/深度学习 人工智能 自然语言处理
深入理解TF-IDF、BM25算法与BM25变种:揭秘信息检索的核心原理与应用
深入理解TF-IDF、BM25算法与BM25变种:揭秘信息检索的核心原理与应用
|
消息中间件 测试技术
RabbitMQ消费端并发和限流设置
RabbitMQ消费端并发和限流设置
2350 0