数组学习总结


1.数组

   数组本身是一种构造数据类型,主要将相同类型的变量集合起来,用一个名称来代表。

   数组也是一种自定义类型,使用之前要先定义,以便编译程序能分配内存空间供程序使用。

 

 

2.一维数组定义的一般形式

    类型名 数组名[数组长度];

 1)类型名指定数组中每个元素的类型;

 2)数组名是数组变量的名称,是一个合法的标识符;

 3)数组长度是一个整型常量表达式,设定数组的大小。

 

3.一维数组的引用:

 一维数组的引用方式:

  数组名[下标表达式]

  这里下表表达式可以是任何非负表达式,包括整型变量,整型常量,含有运算符的整型表达式,以及返回值为整数的函数调用。

  引用数组元素时应注意以下几点:

 1)由于数组元素与同一类型的简单变量具有相同的地位和作用,因此对变量的任何操作都适用于数组元素。

 2)在引用数组元素时下表可以是整型常数或表达式,表达式内允许变量存在。

 3)引用数组元素时下表最大值不能越界。

 4)C语言中一般与逐个地使用下表变量来引用数组元素。

 5)数组是用下标访问的,数组的起始位置为0。

 6)数组的长度可以计算。

 

4.一维数组的初始化

一维数组的初始化形式:

类型名 数组名[数组长度]={初值表}

初值表中依次放着数组元素的初值。


1)完全初始化:定义时给所有元素赋值

int a[5] = {1, 2, 3, 4, 5};

2)不完全初始化:定义时只给部分的元素赋值

int a[5] = {1,2};

这种方法只给部分的元素赋值,未赋初值的系统会为默认为其赋初值为0。

注意:定义数组一定要为其赋初值,不能a[5] = {};,只有一个大括号,系统会随机为其赋垃圾值,会导致程序出现不必要的错误。

大括号中最少要写一个数。比如:int a[5]={0};此时系统默认全部赋0值

如果定义数组时就给数组中所有元素赋初值,那么就可以不指定数组的长度,因为此时元素的个数已经确定了。

 

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

类型名数组名[行长度][列长度];

说明:

(1)与一位数组相同,下标只能是整数,并且从0开始

(2)计算机中二维数组是按行优先存储的。

 

6.二维数组的引用:

C语言中规定不能引用整个数组,只能逐个引用数组元素。

二维数组的引用形式:

数组名 [行下标][列下标];

 

7.二维数组的初始化:

二维数组元素初始化的四种形式:

1)按行对二维数组赋初值,将每一行元素的初值用一对花括号括起来。

int x[3][3]={{1,2,3},{2,3,4},{3,4,5}}

2) 根据该数组的元素个数,吧初始化数据全部扩在一个花括号内,由二维数组按行存储的规则一次赋值给数组对应的元素。

int x[3][3]={1,2,3,2,3,4,3,4,5};

3) 对部分数组元素赋初值

int x[3][3]={{1,2,3},{2,3,4},{3,4,5}};

4) 在二维数组元素初始化是可以省略第一维的长度,但必须制定第二维的长度。第一维的长度有系统根据初始值表中的初值个数来确定。

int x[][3]={1,2,3,2,3,4,3,4,5};


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM