C语言基础课堂总结——数组

数组就是变量的集合,是一个批量定义变量的方法。

一维数组

一维数组的定义方式如下:

类型 数组[数量]//[]里的整数表示变量的数量

int arr[5] <=> int n1,n2,n3,n4,n5;
数组的变量值也是不确定的,为了安全需要初始化

使用方法:

数组名[编号]//[]里的整数表示的是编号

arr[0],arr[1],arr[2],arr[3],arr[4];
编号也叫下标,范围:0~数量-1
遍历:
配合循环语句,使用循环变量当做数组的编号

for(int i = 0;i < 5;i++)
{
	printf("%d",arr[i]);
}

*初始化:

类型 数组[数量] = {v0,v2,v3,...}

数组越界:

1、C语言中数组可以越界,没有语法错误(不能检查,也不想检查)。
2、 数组越界使用时访问的是它之后的内存(可能是其它变量,也可能是其它数组,也可能是无主的,也可能属于操作系统)
数组越界的后果:
1、产生脏数据。
2、一切正常。
3、段错误|(核心已转储)。

二维数组:

把变量排成一个方阵

定义:
类型 数组名[行数][列数];

int arr[3][4] = {
    [][][][],
    [][][][],
    [][][][]
    }

使用:
数组名[行编号][列编号];
编号从零开始
遍历:
配合双层for,外层循环负责遍历行,内层循环负责遍历列

for(int i =0;i<3;i++){
   for(int j=0;i<4;j++){
    printf("%d ",arr[i][j]);
    
   }
   printf("\n");
  }

初始化:

数组名[行编号][列编号] = {{v0,v1,v2},{v0,v1,v2},{v0,v1,v2}};

变长数组:

数组的长度在编译时可以不确定在运行期间根据实际情况进行计算,当执行到数组定义语句是,就必须确定下来,不能再改变。

  • 优点:可以根据实际情况确定数组的长度,达到节约内存的目的

  • 缺点:不能初始化

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值