【数组】立体感——二维数组

二维数组

定义与初始化

一、定义二维数组
使用连续的两个[ ],type name[n1][n2],其中n1,n2可以是常量也可以是变量。但如果是变量,在定义数组前一定已经赋值过。如:

int a[3][4];

相当于3行4列的二维表,共12个元素。
而如果 i , j 有被赋值过,下面的也可以:

int a[i][j];

二维数组一般与嵌套的两层循环结合使用,外层循环变化行标,内层循环变化列标。
二维数组是怎么存放的呢?盗老师课件的图

二、初始化
1.所有元素初始化:

int a[2][3]={
   
   1,2,3,4,5,6};//第0行为1,2,3;第1行为4,5,6
int a[2][3]={
   
   {
   
   1,2,3},{
   
   4,5,6}};//第0行为1,2,3;第1行为4,5,6

2.部分元素初始化
优先为行号小的元素赋值,因为二维数组是这样存放的(盗老师课件的图
在这里插入图片描述
ps:初值个数少于数组元素个数时系统将自动补0;
初值个数多于数组元素个数时则发生错误。
举个栗子:

int a[3][3]={
   
   {
   
   0,1},{
   
   2}};
/*第0行为0,1,0;第1行为2,0,0;第2行为0,0,0*/

3.全部元素赋值的省略定义法
当为所有元素赋值时,初始化时数组的行数可以省略不写,其个数由后面初始化的元素个数与数组的列数确定。

注意:只能行数省略,列数不可省略。
e.g.

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

4.字符二维数组的初始化的特殊方式(利用字符串常量初始化

char name
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值