C语言| 二维数字的定义

【二维数组】

二维数组的本质就是一维数组,表现形式上是二维的。

定义一般形式为

类型说明符 数组名[常量表达式][常量表达式];

举例 int a[2][3]; 定义了一个2行3列的二维数组a,共有6个元素。

元素名字依次是:a[0][0],a[0][1],a[0][2];a[1][0],a[1][1],a[1][2]

1 行号和列号的下标都是从0开始的。

2 元素a[i][j]表示第i+1行、第j+1行元素

3 数组int a[m][n]最大范围处的元素是a[m-1][n-1].

4 引用数组元素时,要注意下标值不能超出数组大小范围。

5 int a[2][3]; 表示定义一个数组+数组的维数+各维的大小

a[1][2] 则对应一个具体的元素,下标指明它具体的位置

C语言中,二维数组==特殊的一维数组(它的元素是一维数组)

举例 int a[2][3];

看作数组a中有2个元素,每个元素长度是3的一维数组,

a[0]和a[1]分别是这2个一维数组的数组名。

【程序代码】

include <stdio.h>

int main(void)

{

//二维数组的定义

int a[2][3] = {{11, 22, 33}, {44, 55, 66}};

//输出第一个元素的占据内容大小,int占4个字节,有三个数字,输出为12.

printf("%d\n", sizeof(a[0]));

return 0;

}

/*

在VC++6.0中的输出结果为


12


*/

相关推荐
Dlrb12118 小时前
C语言-指针三
c语言·算法·指针·const·命令行参数
kkeeper~8 小时前
0基础C语言积跬步之深入理解指针(5下)
c语言·开发语言
Tisfy8 小时前
LeetCode 2540.最小公共值:双指针(O(m+n))
算法·leetcode·题解·双指针
IronMurphy8 小时前
【算法四十七】152. 乘积最大子数组
算法
淘矿人9 小时前
Claude辅助DevOps实践
java·大数据·运维·人工智能·算法·bug·devops
Cosolar10 小时前
万字详解:RAG 向量索引算法与向量数据库架构及实战
数据库·人工智能·算法·数据库架构·milvus
小江的记录本10 小时前
【Java基础】泛型:泛型擦除、通配符、上下界限定(附《思维导图》+《面试高频考点清单》)
java·数据结构·后端·mysql·spring·面试·职场和发展
三品吉他手会点灯10 小时前
C语言学习笔记 - 40.数据类型 - scanf函数的编程规范与非法输入处理
c语言·开发语言·笔记·学习
落羽的落羽11 小时前
【算法札记】练习 | Week4
linux·服务器·数据结构·c++·人工智能·算法·动态规划