1.8 数组

一、一维数组
(一)、定义

int a[5];

定义一个有5个int型元素的数组:系统在内存分配连续的5个int空间给此数组。数组元素下标为0-4
直接对a的访问,就是访问此数组的首地址。注意:数组名表示数组首地址,常量,值不可改变
数组大小必须是值为正的常量。

#define SIZE 5//建议
int a[SIZE];

(二)、初始化
数组定义后的初值是随机数

  int a[5] = {12, 34, 56 ,78 ,9};//定义了有5个元素的数组a并初始化
  int a[5] = {0};定义了有5个元素的数组a并初始化了第一个元素
  int a[] = {11, 22, 33, 44};//定义了数组a并初始化了4个元素,于是数组a有4个元素。

(三)、引用
数组名 [下标]
数组下标都是从0开始
下标既可是常量,也可是整型表达式,允许快速随机访问,如a[i]。和普通变量一样。
如何使2个数组值相等?

//方法1:逐个元素赋值
    b[0]=a[0];
    b[1]=a[1];
    b[2]=a[2];
    b[3]=a[3];
    b[4]=a[4];
//方法2:通过循环赋值
    int i;
    for (i=0;i<5;i++)
        b[i] = a[i];

· 下标不可越界

(四)、向函数传递一维数组

传递整个数组给另一个函数,可将数组的首地址作为参数传过去,用数组名作函数参数。
只复制一个地址自然比复制全部数据效率高
由于首地址相同,故实参数组与形参数组占用同一段内存
该函数内,这个数组的元素可读可修改

二、二维数组

···比较
1)一维数组

int a[5]; //用一个下标确定各元素在数组中的顺序,可用排列成一行的元素组来表示

2)二维数组

int a[233][233];//两个下标,可用排列成i行,j列的元素组来表示

3)n维数组
用n个下标来确定各元素在数组中的顺序

 int c[3][2][4];//3维数组

n≥3时,无法在平面上表示其各元素的位置

三、数组的数据类型和存储类型

根据数组的数据类型,为每一元素安排相同长度的存储单元
根据数组的存储类型,将其安排在内存的动态存储区、静态存储区或寄存器区
用sizeof(a)来获得数组a所占字节数
1、二维数组的存放顺序:按行存放

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

延7488

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

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

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

打赏作者

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

抵扣说明:

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

余额充值