维数组在内存的存储形式: num就是数组存储区域的首地址,即num=200。 num 200 num[O]2004035012 204 num[12004035013 组变量 num[21204035014208 212 num320035015 216 num4]2004035016
一维数组在内存的存储形式: num 就是数组存储区域的首地址,即 num=200 。 一组变量 num 200 num[0] num[1] num[2] num[3] num[4] 204 208 212 216 2004035012 2004035013 2004035014 2004035015 2004035016
2、一维数组的引用 心数组必须先定义。后使用 心只能逐个引用数组元素,不能一次引用整个数组 数组元素表示形式:数组名[下标] 其中:下标可以是常量、变量或表达式。 例inta[01 scanf(“%d”y,a);(×) 必须inta10l; for(j=0:j<10j++) scanf(“d”,&ali); 例如:intk=5; a[l、a1.5]、alk]、a[10-k]都是合法的
2、一维数组的引用 ❖数组必须先定义,后使用 ❖只能逐个引用数组元素,不能一次引用整个数组 ❖数组元素表示形式: 数组名[下标] 其中:下标可以是常量、变量或表达式。 例 int a[10]; scanf(“%d”,a) ; () 必须 int a[10]; for(j=0;j<10;j++) scanf(“%d”, &a[j]); 例如: int k=5 ; a[1]、a[1.5] 、a[k]、a[10-k] 都是合法的
3、一维数组元素值的输入与输出 例如: main 一维数组元素的输入 Rint i, a 10l for(i=0;i<10;i+) scanf(“%d”,&a[i) 一维数组元素的输出 for(i=0;i<10;i++) printf((“%d”,a|iD;
3、一维数组元素值的输入与输出 例如 : main() {int i , a[10]; for(i=0 ; i<10 ; i++) scanf(“%d” , & a[i ]) ; for(i=0 ; i<10 ; i++) printf (“%d ”, a[i ]) ; } 一维数组元素的输出 一维数组元素的输入
使用数组定义和数组元素时的几点注意 1、把数组定义时方括号中的数和元素下标值区别开 方括号中的数表示数组含有的元素个数 元素下标值是标识具体的数组元素的 方括号中的数不能是变量,只能是常量。 2、数组元素的下标可以是常量,也可以是变量, 其值必须是非负数,如果是小数,系统自动取整。 3、数组必须先定义后使用。 4、系统不检查数组元素下标的越界问题 5、一维数组元素的输入、输出使用单层循环语句
使用数组定义和数组元素时的几点注意: 1、把数组定义时方括号中的数和元素下标值区别开 方括号中的数表示数组含有的元素个数 元素下标值是标识具体的数组元素的 方括号中的数不能是变量,只能是常量。 2、数组元素的下标可以是常量, 也可以是变量, 其值必须是非负数, 如果是小数,系统自动取整。 3、数组必须先定义后使用。 4、系统不检查数组元素下标的越界问题。 5、一维数组元素的输入、输出使用单层循环语句
★4、一维数组的初始化 初始化方式 it明{12,345 数组冰初始化在賽尧蔡提黠貌婺组元素赋初值 等价于:0=1笮售字 到初值 只给部分数组元素赋初值 口inta[5}=(6,2,3} 等价于:a0=6;a1}=2;a21=3;a3l=0;a41=0 nta]={1,2,3,4,56} 编译系统根据初值个数确定数组维数值
4、一维数组的初始化 在定义数组时,为数组元素赋初值 (在编译阶段使之得到初值) ❖说明: ⚫数组不初始化,其元素值为随机数 如⚫当全部数组元素赋初值时,可不指定数组长度 int a[5]={6,2,3}; 等价于: a[0]=6; a[1]=2;a[2]=3; a[3]=0; a[4]=0; 如 int a[3]={6,2,3,5,1}; () ⚫只给部分数组元素赋初值 int a[]={1,2,3,4,5,6}; 编译系统根据初值个数确定数组维数值 int a[5]={1,2,3,4,5}; 等价于:a[0]=1; a[1]=2; a[2]=3; a[3]=4; a[4]=5; 初始化方式