首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >C语言入门指南:数组(二)

C语言入门指南:数组(二)

作者头像
给东岸来杯冷咖啡
发布2026-01-12 14:28:10
发布2026-01-12 14:28:10
730
举报

二维数组

一、二维数组的创建

1.二维数组的概念

前⾯学习的数组被称为⼀维数组,数组的元素都是内置类型的,如果我们把⼀维数组做为数组的元

素,这时候就是⼆维数组,⼆维数组作为数组元素的数组被称为三维数组,⼆维数组以上的数组统称为多维数组。

2.二维数组的创建

那么,我们如何定义二维数组呢?基础语法如下:

解释:上述代码中出现的信息

•   3表⽰数组有3⾏

•   5表⽰每⼀⾏有5个元素

•   int 表⽰数组的每个元素是整型类型

•   arr 是数组名,可以根据自己的需要指定名字

二、二维数组的初始化

在创建变量或者数组的时候,给定⼀些初始值,被称为初始化。

那⼆维数组如何初始化呢?像⼀维数组⼀样,也是使⽤⼤括号初始化的。

1.不完全初始化

2.完全初始化

3.按行初始化

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

                                                                       arr6数组

三、二维数组的使用

1.二维数组的下标

当我们掌握了⼆维数组的创建和初始化,那我们怎么使⽤⼆维数组呢?其实⼆维数组访问也是使⽤下标的形式的,⼆维数组是有⾏和列的,只要锁定了⾏和列就能唯⼀锁定数组中的⼀个元素。

C语⾔规定,⼆维数组的⾏是从0开始的,列也是从0开始的,如下所⽰:

其中,黄色方框内的数字代表行数,红色方框内代表列数,都是从0开始的。

⽐如,我们说:第2⾏,第4列,快速就能定位出7。

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

访问⼆维数组的单个元素我们知道了,那如何访问整个⼆维数组呢?

其实我们只要能够按照⼀定的规律产⽣所有的⾏和列的数字就⾏;以上⼀段代码中的arr数组为例,⾏的选择范围是0~2,列的取值范围是0~4,所以我们可以借助循环实现⽣成所有的下标。

输入和输出结果:

四、二维数组在内存中的储存

像⼀维数组⼀样,我们如果想研究⼆维数组在内存中的存储⽅式,我们也是可以打印出数组所有元素 的地址的。代码如下:

输出结果:

从输出的结果来看,每⼀⾏内部的每个元素都是相邻的,地址之间相差4个字节,跨⾏位置处的两个元素(如:arr[0][4]和arr[1][0])之间也是差4个字节,所以⼆维数组中的每个元素都是连续存放的。

如下图所示:


了解清楚⼆维数组在内存中的布局,有利于我们后期使⽤指针来访问数组的学习。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-10-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、二维数组的创建
    • 1.二维数组的概念
    • 2.二维数组的创建
  • 二、二维数组的初始化
    • 1.不完全初始化
    • 2.完全初始化
    • 3.按行初始化
    • 4.初始化可以省略行,但是不可以省略列
  • 三、二维数组的使用
    • 1.二维数组的下标
    • 2.二维数组的输入与输出
  • 四、二维数组在内存中的储存
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档