弗原創IT教育中心 3222维数组元素的引用 引用2维数组元素的形式为 数组名行下标表达式列下标表达式] 1.“行下标表达式”和“列下标表达式”,都应 是整型表达式或符号常量。 行下标表达式”和“列下标表达式”的值, 都应在已定义数组大小的范围内。3.对基本数 据类型的变量所能进行的操作,也都适合于相同 数据类型的2维数组元素
3.2.2 2 3.2.2 2维数组元素的引用 维数组元素的引用 引用2维数组元素的形式为: 维数组元素的形式为: 数组名[行下标表达式][列下标表达式] 1.“行下标表达式”和“列下标表达式”,都应 是整型表达式或符号常量。 是整型表达式或符号常量。 2.“行下标表达式”和“列下标表达式”的值, 都应在已定义数组大小的范围内。 都应在已定义数组大小的范围内。3.对基本数 据类型的变量所能进行的操作,也都适合于相同 据类型的变量所能进行的操作,也都适合于相同 数据类型的2维数组元素
弗原創IT教育中心 6232维数组元素的初始化 按行赋初值 赋值规则:将“第0行初值表”中的数据,依次 赋给第0行中各元素;将“第1行初值表”中的数 据,依次赋给第1行各元素;以此类推 2.按2维数组在内存中的排列顺序给各元素 赋初值 赋值规则:按2维数组在内存中的排列顺序, 将初值表中的数据,依次赋给各元素。 如果对全部元素都赋初值,则“行数”可以省 略。注意:只能省略“行数
6.2.3 2 6.2.3 2维数组元素的初始化 维数组元素的初始化 1.按行赋初值 赋值规则:将“第0行初值表”中的数据,依次 中的数据,依次 赋给第0行中各元素;将 行中各元素;将“第1行初值表”中的数 据,依次赋给第 据,依次赋给第1行各元素;以此类推 行各元素;以此类推。 2.按2维数组在内存中的排 维数组在内存中的排列顺序给各元素 赋初值 赋值规则:按2维数组在内存中的排列顺序, 维数组在内存中的排列顺序, 将初值表中的数据,依次赋给各元素。 将初值表中的数据,依次赋给各元素。 如果对全部元素都赋初值,则 如果对全部元素都赋初值,则“行数”可以省 略。注意:只能省略“行数
弗原創IT教育中心 3242维数组应用举例 案例34有M个学生,学习N门课程,已知 所有学生的各科成绩,编程:分别求每个学生的 平均成绩和每门课程的平均成绩。 #define num std 5 #define num course 4 include stdio maino int static float scoreNUM_std+lINUM_ _course+1=78, 85, 83, 65 },{88,91,89,93},{72,65,54,75},{86,88,75,60} {69,60,50,72}}
3.2.4 2 3.2.4 2维数组应用举例 维数组应用举例 [案例3.4] 有M个学生,学习N门课程,已知 所有学生的各科成绩,编程:分别求每个学生的 所有学生的各科成绩,编程:分别求每个学生的 平均成绩和每门课程的平均成绩。 平均成绩和每门课程的平均成绩。 #define NUM_std 5 define NUM_std 5 #define NUM_course 4 #define NUM_course 4 #include " #include "stdio.h" main() { int i,j; static float static float score[NUM_std+1][NUM_course+1]={{78,85,83,65 score[NUM_std+1][NUM_course+1]={{78,85,83,65 },{88,91,89,93}, {72,65,54,75},{86,88,75,60}, },{88,91,89,93}, {72,65,54,75},{86,88,75,60}, {69,60,50,72}}; {69,60,50,72}};