数据结构之:多维数组

1:二维数组

      二维数组是“数组的数组”,也即二维数组是由一维数组构成的!

1.1: 【例如】:int a[3][4];

  1:二维数组是数组的数组,也即二维数组a是3个一维数组组成的!
  2:相当于定义了3个一维数组:int a[0][4], a[1][4], a[2][4],每个一维数组有4个元素
  3:此处是把a[0], a[1], a[2]看作是一维数组的名字。
  4:则二维数组就转换成一维数组了,就可以在一维数组的领域内解决问题了

  5:且在二维数组中存在以下等式关系:

        *(&a[i][j]) == *(a[i]+j) == *(*(a+i)+j)  ----->取各元素值

        a[i]+j === *(a+i)+j === &a[i][j] //这是各元素地址

1.2 : 二维数组看作是一维数组的矩阵

        int arr[3][4]={{1,2,3,4},{5,6},{9,10}} ,矩阵表示为:

                                                        1   2   3   4

                                                        5   6   0   0

                                                        9  10   0  0

2:三维数组

    三维数组是“数组的数组的数组”,也就是说三维数组是由二维数组构成的,而二维数组是由一维数组构成的

2.1 :例如: int a[2][3][4]

1:  可以把三维数组看成是2个二维数组构成的,而二维数组又是由一维数组构成的!也即本题定义了2个二维数组 int a[0][3][4]和a[1][3][4](此处是把a[0], a[1]看作是二维数组的名字)

2: 而二维数组又是由一维数组构成的,所以此处的二维数组又是由3个一维数组构成的。也即一维数组

    a[0][0][4], a[0][1][4], a[0][2][4], a[1][0][4],a[1][1][4],a[1][2][4]

    int a[0][0][4]        //此处是把a[0][0]看做是一维数组的名字,它包含4个元素
    int a[0][1][4]        //此处是把a[0][1]看做是一维数组的名字,它包含4个元素
    int a[0][2][4]        //此处是把a[0][2]看做是一维数组的名字,它包含4个元素
    int a[1][0][4]        //此处是把a[1][0]看做是一维数组的名字,它包含4个元素
    int a[1][1][4]        //此处是把a[1][1]看做是一维数组的名字,它包含4个元素
    int a[1][2][4]        //此处是把a[1][2]看做是一维数组的名字,它包含4个元素

 

2.2 : 二维数组看作是二维数组的矩阵

3:参考文献

 C语言之三维数组_风赢十三水的博客-CSDN博客_c语言三维数组

C语言数组——二维数组_C语言中文社区的博客-CSDN博客_c 二维数组 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值