数组

来源:互联网 发布:淘宝客服成功案例 编辑:程序博客网 时间:2024/06/07 09:36

一、一维数组

1.一维数组的定义格式为:

类型说明符 数组名[常量表达式];  例如 int a10它表示定义了一个整形数组,数组名为a,有10个元素。

2.在定义数组时,需要指定数组中元素的个数,方括弧中的常量表达式用来表示元素的个数,即数组长度。

3.常量表达式中可以包括常量和符号常量,但不能包含变量。

注意:

C语言不允许对数组的大小作动态定义,即数组的大小不依赖于程序运行过程中变量的值。

数组说明中其他常见的错误:

float a[0];     /* 数组大小为0没有意义 */

int b(2)(3);  /* 不能使用圆括号 */

int k, a[k];  /* 不能用变量说明数组大小*/     

一维数组: float mark[100];每个数据元素占用的字节数,就是基类型的字节数一个元素占4个字节

1.在定义数组时对数组元素赋以初值。

例如:int a10={0,1,2,3,4,5,6,7,8,9};

2. 可以只给一部分元素赋值。例如:

int a10={01234};   

定义a数组有10个元素,但花括弧内只提供5个初值,这表示只给前面5个元素赋初值,后5个元素值为0

3. 如果想使一个数组中全部元素值为0,可以写成:

 int  a10={0,0,0,0,0,0,0,0,0,0};  

int a10={0};

能写成int a10={0*10};

4. 在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度。

例如:int a5={12345};

也可以写成 int a[]={12345}; 

int a10={12345}; 只初始化前5个元素,后5个元素为0

二、二维数组

二维数组定义的一般形式为:

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

例如:

定义a3×4(34)的数组,b5×10(510)的数组。如下:float  a[3][4]b[5][10]

例如:

可以a看作是一个一维数组,它有3个元素:a0]、a1]、a2],每个元素又是一个包含4个元素的一维数组

注意:我们可以把二维数组看作是一种特殊的一维数组:它的元素又是一个一维数组

4种方法对二维数组初始化:

.分行给二维数组赋初值。

例如: int a[3][4]={{1234}{5678}, {9,10,11,12}};

.可以将所有数据写在一个花括号内,按数组排列的顺序对各元素赋初值。

例如:

int a[3][4]={123456789101112};

.可以对部分元素赋初值。

例如: int a[3][4]={{1}, {5}, {9}};也可以对各行中的某一元素赋初值,如int a[3][4]={{1}, {0,6}, {0, 0, 0, 11}};

.如果对全部元素都赋初值,则定义数组时对第一维的长度可以不指定,但第二维的长度不能省。

例如:

int a[3][4]={1,2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};等价:、int a[ ][4]={1,2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};


0 0