13.5.【C语言】二维数组

接第13篇(http://t.csdnimg.cn/TioJH)

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

01.创建

格式:

数据类型 数组名[常量值1][常量值2]
//常量值1代表行,常量值2代表每行的元素个数

数组名[][]

如 int arr[3][5]

02.初始化

*不初始化 int arr[3][5]={0};

*不完全初始化

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

未初始化的默认为0

类比二维坐标(行和列从0开始

默认情况数据存储的顺序:(0,0),(1,0),(2,0) ……

*按行初始化

由于一行是一个一维数组

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

*初始化时可以省略行,但是不能省略列

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

由{{1,2},{3,4,5,6},{7,8}}可知是三行

03.使用

*访问:arr[i][j],指定i和j后可以访问(即下标访问)

*打印:嵌套循环

#define  _CRT_SECURE_NO_WARNINGS 1 
#include <stdio.h>
int main()
{
	int arr[3][5] = {1,2,32,5,3,7,8,5,13,6,8,42,5,73,45};
	for (int i = 0; i <= 2; i++)//i是行
	{
		for (int j = 0; j <= 4; j++)//j是列
		{
			printf("%d ", arr[i][j]);
		}
		printf("\n");
	}
	return 0;
}

 

*存储

#define  _CRT_SECURE_NO_WARNINGS 1 
#include <stdio.h>
int main()
{
	int arr[3][5] = {1,2,32,5,3,7,8,5,13,6,8,42,5,73,45};
	for (int i = 0; i <= 2; i++)//i是行
	{
		for (int j = 0; j <= 4; j++)//j是列
		{
			printf("%p ", &arr[i][j]);
		}
		printf("\n");
	}
	return 0;
}

 

相邻地址间差四(整型4字节)

二维数组中的每个元素都是按行连续存放的

04.本质理解

把一维数组做为数组的元素,这时候就是二维数组

对比arr[i]和arr[i][j]

二维数组的一行就是一维数组.显然arr[i]等同于arr[1][i]

因此对于arr[i][j]数组元素,该行的数组名是arr[i]

 

相关推荐

  1. C语言数组

    2024-07-22 10:40:07       62 阅读
  2. C# —— 数组

    2024-07-22 10:40:07       22 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 10:40:07       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 10:40:07       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 10:40:07       45 阅读
  4. Python语言-面向对象

    2024-07-22 10:40:07       55 阅读

热门阅读

  1. DM数据库导出excel表结构

    2024-07-22 10:40:07       14 阅读
  2. 探索Python元类的奥秘:定义与实用应用

    2024-07-22 10:40:07       15 阅读
  3. 经常进行工作总结,有何重要作用呢?

    2024-07-22 10:40:07       15 阅读
  4. C++:istream、ostream和fstream类

    2024-07-22 10:40:07       18 阅读
  5. 4 DAY

    2024-07-22 10:40:07       14 阅读
  6. 数仓中主题域还是数据域?

    2024-07-22 10:40:07       16 阅读
  7. (day21)leecode hot100字母异位词分组

    2024-07-22 10:40:07       17 阅读
  8. WireGuard 编译安装

    2024-07-22 10:40:07       16 阅读