数组版权所有@陈暂保留所有权利陈哲版权所有③陈哲保留所有权利
版权所有© 陈哲保留所有权利 版权所有 © 陈哲 保留所有权利 数组 陈哲
>数组定义和访问√冒泡排序和选择排序>数组元素地址和动态数组>数组元素地址作为函数参数>二维数组定义和访问>二维数组元素地址和动态数组>二维数组行地址作为函数参数>字符数组和字符串版权所有@陈暂保留所有权利>字符数组元素地址>字符数组元素地址作为函数参数>指针数组>指针数组作为main函数的形参版权所有③陈哲保留所有权利5
版权所有© 陈哲保留所有权利 版权所有 © 陈哲 保留所有权利 2 ➢数组定义和访问 ➢冒泡排序和选择排序 ➢数组元素地址和动态数组 ➢数组元素地址作为函数参数 ➢二维数组定义和访问 ➢二维数组元素地址和动态数组 ➢二维数组行地址作为函数参数 ➢字符数组和字符串 ➢字符数组元素地址 ➢字符数组元素地址作为函数参数 ➢指针数组 ➢指针数组作为main函数的形参
>如果有1000名学生,每个学生有一个成绩,需要存储这1000名学生的成绩。>可以定义1000个变量I, $2, ..数组名s999存储学生的成绩需要编写大量代码/>可以定义数组floatt1000],只需要简短代码就能够一次定义1000个变量。数组中的每一个元素都属于同一数据类型版权所有@陈暂保留所有权利>用数组名和下标唯一确定数组中的元素,例如s[0], s[1], s[2], .., s[999] 。3
版 权 所 有 © 陈 哲 保 留 所 有 权 利 ➢如果有1000名学生,每个学生有一个成 绩,需要存储这1000名学生的成绩。 ➢可以定义1000个变量float s0, s1, s2, ., s999存储学生的成绩,需要编写大量代码。 ➢可以定义数组float s[1000],只需要简短 代码就能够一次定义1000个变量。数组 中的每一个元素都属于同一数据类型。 ➢用数组名和下标唯一确定数组中的元素, 例如s[0], s[1], s[2], ., s[999]。 3 数组名
数组定义和访问数组名每个元素的类型>数组类型改组名[常童表1合法int a[4+6];例如:int a[10];int n=10;数组名是一个标识符不合法Hint a[n];数组长度必须是常量表达>数组定义的语义:为数组中的所有元素版权所有@陈暂保留所有权利分配连续的内存空间例如: a[0], a[1], a[2], ., a[9]a[0]a[9]a[8]a[1]a[2]a[3]a[4] a[5] |a[6] ]a[7]4
版 权 所 有 © 陈 哲 保 留 所 有 权 利 数组定义和访问 ➢数组定义的语法: 类型 数组名[常量表达式]; 例如: int a [10]; ◦数组名是一个标识符。 ◦数组长度必须是常量表达式。 ➢数组定义的语义:为数组中的所有元素 分配连续的内存空间。 例如:a[0], a[1], a[2], ., a[9] 4 数组名 数组长度 每个元素的类型 a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] int a[4+6]; 合法 int n=10; int a[n]; 不合法
>数组下标表达式的语法数组名[表达式例如: a[0]=a[1]+a[2+2]-a[2*3] 合法int n=5, a[10];a[n]=20;合法>数组下标表达式的语义:获得数组中相应元素的引用,从而可以对该元素的内存空间进行读或者写。>注意:只能访问数组元素而不能一次整服权所有?陈暂保留所有权利体访问整个数组全部元素不合法例如:a=20;5
版 权 所 有 © 陈 哲 保 留 所 有 权 利 ➢数组下标表达式的语法: 数组名[表达式] 例如:a[0]=a[1]+a[2+2]-a[2*3] 合法 int n=5, a[10]; a[n]=20; 合法 ➢数组下标表达式的语义:获得数组中相 应元素的引用,从而可以对该元素的内 存空间进行读或者写。 ➢注意:只能访问数组元素而不能一次整 体访问整个数组全部元素。 例如:a = 20; 不合法 5