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


*/

相关推荐
Neteen7 小时前
【数据结构-思维导图】第二章:线性表
数据结构·c++·算法
礼拜天没时间.7 小时前
力扣热题100实战 | 第25期:K个一组翻转链表——从两两交换到K路翻转的进阶之路
java·算法·leetcode·链表·递归·链表反转·k个一组翻转链表
Swift社区7 小时前
LeetCode 400 第 N 位数字
算法·leetcode·职场和发展
再难也得平7 小时前
力扣239. 滑动窗口最大值(Java解法)
算法·leetcode·职场和发展
摩尔曼斯克的海7 小时前
力扣面试题--双指针类
python·算法·leetcode
灰色小旋风8 小时前
力扣——第7题(C++)
c++·算法·leetcode
程序猿编码8 小时前
探秘 SSL/TLS 服务密码套件检测:原理、实现与核心设计(C/C++代码实现)
c语言·网络·c++·ssl·密码套件
故事和你918 小时前
sdut-程序设计基础Ⅰ-实验二选择结构(1-8)
大数据·开发语言·数据结构·c++·算法·优化·编译原理
努力学算法的蒟蒻9 小时前
day106(3.7)——leetcode面试经典150
算法·leetcode·面试
Σίσυφος19009 小时前
PCL聚类 之 欧式聚类(最常用)
算法·机器学习·聚类