您的位置:首页 > 其它

定义一维、二维、三维数组

2016-12-24 20:10 381 查看
 
                                                                             定义一维、二维、三维数组

数组:

数组是一组数据类型相同的元素。数组元素按顺序储存在内存中,通过整数下表(或索引)可以访问各元素。数组首元素下标是0

一维数组

声明一个简单一维数组形式如下:

type name [size];

type:数组数据类型

name:数组名

size:数组元素个数

数组名是该数组首元素的地址

不能把整个数组作为参数传递给函数,但是可以传递数组的地址。

初始化数组:如int a[3] = {0,1,2};
以逗号分隔的值列表(用花括号括起来)来初始化数组,在逗号和值之间可以使用空格


当初始化列表中的值少于数组元素个数时,编译器会把剩余的元素都初始化为0.如果不初始化数组,数组元素和未初始化的普通变量一样,其中储存的都是垃圾值,但是,如果部分初始化数组,剩余的元素就会被初始化为0;如果初始化列表的项数多余数组元素个数,编译器会认为其错误。可以省略方括号中的数字,让编译器自动匹配数组大小和初始化列表中的项数。

声明数组后,可以借助数组下标(或索引)给元素赋值

在使用数组时,要防止数组下标越界。

要创建只读数组,用const声明和初始化数组

const int a[3]={0,1,2};

二维数组:

二维数组是数组的数组。例如:

double sales[2][4]

初始化二维数组:

int sales[2][4] =

{

    {1,2,3,4},

    {5,6,7,8}

}

每个数值列表都用花括号括起来。第一个列表数据用于初始化数组第一行,第二个列表数据用于初始化数组第二行。如果第一个列表只有2个数,则只会初始化数组第一行前2个数,而最后两个元素将被默认初始化为0.如果某列表中的数值个数超出了数组每行的元素个数,则会出错,但这并不会影响其他行的初始化。

初始化也可以省略内部的花括号,只保留最外面的一对花括号。只要保证初始化的数值个数正确,初始化效果与上面相同。但如果初始化的数值不够,则按照先后顺序逐行初始化,直到用完所有的值。后面没有值初始化的元素被统一初始化为0.

三维数组:

Int box [2][2][2];

通常处理三维数组需要使用3重循环。

可以把三维数组数组理解为:box含有2个元素,这2个元素是含有2个元素的数组,里面每个元素又是含有2个元素的数组。

                                                                  

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: