7、二维数组

二维数组
#include <stdio.h>

int main(int argc, char const *argv[])
{
	//1.有多少[]就有多少维
	//2.内存中没有多为,都只有一维,多维数组是特殊的一维数组
	//3.定义了一个一维数组a[3],这个一维数组有3个元素,每个元素int[4]
	//4.a[0],a[1],a[2]就是第0、1、2元素的数组
	//5.二维数组,用户可以理解为m行n列
	int a[3][4]; 
	int i,j;

	for(i=0; i<3; i++)
	{
		for (int j = 0; j < 4; j++)
		{
			a[i][j] = num;
			num++;
		}
	}

	//看方便,写不方便
	int a1[3][4] = 
					{
						{0, 1, 2, 3},
						{4, 5, 6, 7},
						{8, 9, 10 , 11}
					};


	int a1[3][4] = {0, 1, 2, 3,4, 5, 6, 7, 8, 9, 10, 11};

	//如果定义时,同时初始化,第一个[]可以不写内容
	int a2[][4] = {0, 1, 2, 3,4, 5, 6, 7, 8, 9, 10, 11};

	//如果第一个[]不写,必须初始化
	//int a3[][4];//err
	int a3[3][4] = {0, 1, 2, 3};//没有初始化的元素赋值为0
	int a4[3][4] = {0};//所有元素初始化为0

	return 0;
}
#include <stdio.h>

int main(int argc, char const *argv[])
{
	int a[5][10];
	//1.数组名是常量,不能修改
	//ar = 10;//err

	//2.sizeof(数组名),测数组的总大小:int[10] = 5 * 4 * 10 = 200
	printf("sizeof(a) = %lu\n", sizeof(a));

	//3.sizeof(a[0]),测的是第0个元素的大小: int [10] = 4 * 10 = 40
	printf("sizeof(a[0]) = %lu\n", sizeof(a[0]));

	//4.sizeof(a[0][0]),测的是第0行第0列元素的大小,int = 4
	printf("sizeof(a[0][0]) = %lu\n", sizeof(a[0][0]));

	//5.求行数(元素个数):总大小/每个元素的大小
	int n = sizeof(a)/sizeof(a[0]);

	//6.求列数
	n = sizeof(a[0])/sizeof(int);
	printf("n1 = %d\n", n);

	//7.行*列
	n = sizeof(a)/ sizeof(int);
	printf("n2 = %d\n", n);
	
	return 0;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值