数组

开发工具与关键技术: Visual Studio / C++
作者:何文涛
撰写时间:2019-5-2

数组,是有序的元素序列,是由元素组成,组成数组的各个变量称为数组的分量
作用于储存多个相同类型数据的集合。
数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是
基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组
、字符数组、指针数组、结构数组等各种类别

一维数组
定义:
一维数组是最简单的数组,其逻辑结构是线性表。要使用一维数组,需经过定义、初始化和应用等过程。

数组的定义以及赋值:
如图所示

在这里插入图片描述

以上定义了数组 a,b,c,d。
数组a
定义了一个int类型长度为6位的数组,并且赋值了数据。
数组b
定义了一个int类型的数组,如果定义数组时就给数组中所有元素赋初值,那么就可
以不指定数组的长度,因为此时元素的个数已经确定了。
数组c
定义了一个int类型的数组,长度为5位,这里给了个默认值为0。就是接下来五位
数组的元素都是0。

数组d
定义了一个int类型的数组,长度为6位,虽然长度为6,元素确只有3个,那么这
种情况编译器会把后面缺少的2位用0来补上,这叫做不完全初始化。
数组x
定义了int类型的数组,长度为6但并没有赋值,称为完全不初始化。

注意事项
下标要紧跟在数组名后,而且用圆括号括起来(不能用其他括号)。
下标可以是常量,变量,或表达式,但其值必须是整数(如果是小数将四舍五入为整
数)。
下标必须为一段连续的整数,其最小值成为下界,其最大值成为上界。不加说明时下
界值默认为1。

数组的输出:

在这里插入图片描述

以上面的图所示,定义了一个int类型长度为6的数组并且赋值了数据,
后定义了一个i作为循环结束条件。
然后通过循环来吧数组a的值一个个的输出。

在这里插入图片描述

以上就是输出结果;

如图所示,数组内全部数据已经输出了。

二维数组
定义:
前面介绍的数组只有一个下标,称为一维数组, 其数组元素也称为单下标变量。在实际问题中有很多量是二维的或多维的, 因此C语言允许构造多维数组。多维数组元素有多个下标, 以标识它在数组中的位置,所以也称为多下标变量,多维数组可由二维数组类推而得到。

类型说明符数组名[常量表达式1][常量表达式2]

在这里插入图片描述

二维数组的元素也称为双下标变量,其表示的形式为:数组名[下标][下标]
上图所示,声明了四个二维数组。

数组a;
定义了int类型的数组,表示是一个四行五列的二维数组

数组b
定义了int类型的二维数组,并且对此赋值,由于是两行三列所以就用花括号区分开
来,区分为两行三列,三列就是每行三个元素

数组c
定义了一个int类型两行三列的二维数组,并且赋值,与数组b不同的是把元素赋值
写在了一起编译器就自动识别为两行三列的二维数组。

数组d
定义了一个int类型0行三列的二维数组,仅仅对0行元素赋值

二维数组在概念上是二维的,即是说其下标在两个方向上变化, 下标变量在数组中
的位置也处于一个平面之中, 而不是象一维数组只是一个向量。但是,实际的硬件
存储器却是连续编址的, 也就是说存储器单元是按一维线性排列的。如何在一维存
储器中存放二维数组,可有两种方式:一种是按行排列, 即放完一行之后顺次放入第
二行。另一种是按列排列, 即放完一列之后再顺次放入第二列。

内存分部:
同一行的二维数组是顺序排序,下一行就按行来排序。

当然也可以多维数组。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值