一、数组的定义
(1)变量:内存中的一块空间
a |
(2)数组:内存中一串连续的空间,数组是指同类型变量或对象的集合。
a[0] | a[1] | a[2] | a[3] | a[4] | a[5] | a[6] | a[7] | a[8] | a[9] |
(3)定义方式: 标识符 数组名[元素个数];
数组里面元素的个数可以是常量或常量表达式
变量名:a 数组名:a
定义:double a=3.14; 定义:double a[5];
【注意】
(1)数组中的变量称为数组元素,由于数组中每个元素都有下标,因此数组元素也称为下标变量。
(2)数组下标取值从0开始,使用数组时下标不能越界,同一数组的所有数组元素在 内存中占用一片连续的存储单元。
如:int num[10];定义了一个名字为 num 的数组,它有 10 个元素; 每个元素都是一个 int 型变量,下标变量为 num[0]--num[9]。
num 数组占用了一片连续的、 大小为 10*sizeof(int)字节的空间。、
二、数组的引用(通过下标来随意调用数组中的元素。)
(1)每个数组元素都是一个变量,数组元素可以表示为 数组名 [下标];
(2)下标可以是任何值为整型的表达式,该表达式里可以包含变量和函数调用。引用时,下标值应在数组定义的下标值范围内。
如:若 i、j 都是 int 型变量,
则 num[5]、num[i+j]、num[i++]都是合法的元素。
(3)数组的下标是从0开始取的。(相当于士兵的编号)
如int a[7];
那么该数组的五个元素分别为:
a[0],a[1],a[2],a[3],a[4],a[5],a[6];
注意:没有a[7]这个元素。
三、数组的引用
(1)在定义数组是可以对数组进行初始化,既对数组进行事先的赋值。
如 int a[5]={0,1,2,3,4};
相当于a[0]=0,a[1]=1,a[2]=2,a[3]=3,a[4]=4
(2)当初始化的个数少于元素个数时,没有被初始化的部分默认为0。
(3)对于没有赋值的数组:
全局变量的默认值为0,局部变量的默认值为随机数
全局数组的默认值为0,局部数组的默认值为随机数
全局变量 | 局部变量 |
默认初始化为 0 | ①如果没有初始化,默认值随机 ②如果初始化了部分,那么其余未初始化部分初始化为 0 |
|
|
|
【例1】输入n,读入n个整数,将其正向输出(n<=1000) 。
【例2】输入n,读入n个整数,将其反向输出(n<=1000) 。