【c语言】二维数组

创作不易,本篇文章如果帮助到了你,还请点赞支持一下♡>𖥦<)!! 

主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步!

给大家跳段街舞感谢支持!ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ

目录

一维数组知识:

一、二维数组的特性

二、二维数组的基本用法 

三、二维数组的初始化定义

 1)完全初始化

 2)不完全初始化

​ 3)初始化成员个数

四、注意事项

五、循环遍历


 二维数组是对一维数组的延申,学习二维数组前需要对一维数组的知识理解哦~

一维数组知识:

  一维数组详解icon-default.png?t=N2N8https://blog.csdn.net/TiSg0/article/details/130053302?spm=1001.2014.3001.5501

一、二维数组的特性

长度固定 、 同类型、 有编号(先行后列),逻辑造型:表格矩阵状

二维数组声明生成: 类型 数组名[行数][列数]

int arr[3][4];

二、二维数组的基本用法 

 数组元素(成员)的使用:数组名[先行][后列] 

	arr[0][0] = 1;
	arr[0][3] = 2;
	arr[2][1] = 3;

二维数组也称为一维数组的一维数组。先找行、再找列

 

三、二维数组的初始化定义

 1)完全初始化

形式1:一维模样      形式2:{}行方式

#include <stdio.h>
int main()
{
	/* 二维数组 在 声明的同时 直接初始化赋值  */

	/* 1  完全初始化:形式1:一维摸样 形式2:{}行方式  */
	int arr1[2][3] = { 1,2,3,4,5,6 };
	int arr2[2][3] = { {1,2,3},{4,5,6} };
	for (int i = 0; i < 2; i++) //行
	{
		for (int j = 0; j < 3; j++)  //列
		{
			printf("%d ", arr1[i][j]);
		}
		printf("\n");
	}
    return 0;
}

 一维模样在内存中的表现:

 

 2)不完全初始化

不完全初始化、其它成员默认 0

#include <stdio.h>
int main()
{
	int arr3[2][3] = { 1,2 };
	int arr4[2][3] = { {1},{5,6} };
	for (int i = 0; i < 2; i++) //行
	{
		for (int j = 0; j < 3; j++)  //列
		{
			printf("%d ", arr4[i][j]);
		}
		printf("\n");
	}
    return 0;
}

 3)初始化成员个数

初始化成员个数时与一维数组不同点:列数不能省略!!!根据列数自动决定行数。

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

四、注意事项

不要下标越界使用 

五、循环遍历

二维数组分行和列,行中有列,通过双层循环遍历二维数组。 

#include <stdio.h>
int main()
{
	int arr[3][4];
	arr[0][0] = 1;
	arr[0][3] = 2;
	arr[2][1] = 3;
for (int i = 0; i < 3; i++) //行
	{
		for (int j = 0; j < 4; j++)  //列
		{
			printf("%d ", arr[i][j]);
		}
		printf("\n");
	}

	printf("\narr大小:%d arr[0]大小:%d\n", sizeof(arr), sizeof(arr[0]));
	int hs = sizeof(arr) / sizeof(arr[0]);        //有几行:数组空间/行空间
	int ls = sizeof(arr[0]) / sizeof(arr[0][0]);  //有几列:行 总空间/行 单个空间
	printf("行:%d\n", hs);
	printf("列:%d\n", ls);
    return 0;
}

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天喜Studio

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值