初识C语言——用指针数组实现二维数组

1.指针数组的定义

2.二维数组的定义

3..实现二维数组的代码


1.指针数组

类比生活中的“好小孩”,在这个词中小孩便是主语,所以同理指针数组的主语便是数组 

即指针数组是用来存放指针(地址)的数组。

2.二维数组

 一维数组是建立在一维空间上的,那么二维数组便是建立在二维空间上,即建立在平面中。

#include 
int main()
{
	int arr1[] = { 1,2,3,4,5 };
	int arr2[3][2] = { 1,2,3,4,5,6 }; //在二维数组中行数可以省略,但是列数一定不能省!
	int i = 0;
	printf("一维数组:\n");
	for (i = 0; i < 5; i++)
	{
		printf("%d ", arr1[i]);

	}
	printf("\n");
	printf("二维数组:\n");
	for (i = 0; i < 3; i++)
	{

		int j = 0;
		for (j = 0; j < 2; j++)
		{
			printf("%d ", arr2[i][j]);
		}
		printf("\n");
	}
	return 0;
}

 运行结果

初识C语言——用指针数组实现二维数组_第1张图片

 3.用指针数组实现二维数组

#include
int main()
{
	int a[] = { 1,2,3,4,5 };
	int b[] = { 2,3,4,5,7 };
	int c[] = { 1,6,8,5,4 };
	int* arr[3] = { a,b,c };
	int i = 0;
	printf("二维数组:\n");
	for (i = 0; i < 3; i++)
	{
		int j = 0;
		for (j = 0; j < 5; j++)
		{
			printf("%d ", arr[i][j]);   //printf("%d ",*(arr[i]+j)也可以
		}
		printf("\n");
	}
	return 0;
}

目前本人正在学习C语言,所以如果有什么不对的地方,请在评论区指点一下,谢谢观看,同时创作不易,点个赞再走吧! 

你可能感兴趣的