【从零开始的 C 语言笔记】第十六篇-二维Array

不怎么重要的前言

上一篇介绍了跟处理字串有关的String函式库,也使用了很多例子来介绍函式的使用,不晓得这样有没有清楚一些?

趁不久前介绍的第十三篇Array,今天我们来介绍二维array!


一维array、二维array?

大家对于一维、二维的概念大概来自于数学,一维是线、二维是平面而三维空间,但阵列的一、二维可能会有点像,但跟大家想的不太一样,还记得在第十三篇介绍的阵列吗,那种类型的阵列就是一维的单一排列,而阵列的二维、多维则是有点像巢状的结构。

下面我们来举个二维阵列的例子:

int arr[3][2] = {{1,2},{3,4},{5,6}};

可以看到这样子阵列中又包着阵列的形式会称为多维,而多维就是这样延伸下去。


正式使用二维阵列

介绍
二维阵列基本上如同一维阵列的使用方式。

(1) 宣告:不可以只有赋值。
a. 只宣告阵列大小

int arr[2][3];

b. 宣告阵列大小同时赋值

int arr[3][2] = {{1,2},{3,4},{5,6}};

(2) index:二维阵列的index仍是由0开始,而「阵列名称[index1][index2]」由左而右,对应阵列结构则是由外而内,各自的index则是分开计算像是下图。
http://img2.58codes.com/2024/201425650nytV8MwbW.png

可以参考以下程式码。

#include <stdio.h>#include <string.h>int main(void) {    int arr[3][2] = {{1,2},{3,4},{5,6}};    printf("arr[0][0]: %d\n",arr[0][0]);    printf("arr[0][1]: %d\n",arr[0][1]);    printf("arr[1][0]: %d\n",arr[1][0]);    printf("arr[1][1]: %d\n",arr[1][1]);    printf("arr[2][0]: %d\n",arr[2][0]);    printf("arr[2][1]: %d\n",arr[2][1]); }

http://img2.58codes.com/2024/20142565nbig5m9aY8.png

实际应用
#include <stdio.h>#include <string.h>int main(void) {    int arr[3][2] = {{1,2},{3,4},{5,6}};    printf("arr[0][0]: %d\n",arr[0][0]);    printf("arr[0][1]: %d\n",arr[0][1]);    printf("arr[1][0]: %d\n",arr[1][0]);    printf("arr[1][1]: %d\n",arr[1][1]);    printf("arr[2][0]: %d\n",arr[2][0]);    printf("arr[2][1]: %d\n",arr[2][1]);    printf("---\n");    arr[1][0] = 0;    printf("arr[0][0]: %d\n",arr[0][0]);    printf("arr[0][1]: %d\n",arr[0][1]);    printf("arr[1][0]: %d\n",arr[1][0]);    printf("arr[1][1]: %d\n",arr[1][1]);    printf("arr[2][0]: %d\n",arr[2][0]);    printf("arr[2][1]: %d\n",arr[2][1]); }

http://img2.58codes.com/2024/20142565DBMZlnCM7g.png


看到这里就大概介绍完多维阵列的概念啦,可以多多尝试方便熟悉操作!

下一章我们来介绍if条件式!


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章