程序设计基础 第8章数组 1/14
程序设计基础 第 8 章 数 组 1/14
本章知识点 8.0数组的概念 8.1一维数组用“数组名+一维下标”来表示数据 8.2一维数组的应用 8.3二维数组用“数组名+二维下标”来表示数据 8.4数组与函数数组元素与数组名做函数参数 小结 冯 2/14
本章知识点 8.0 数组的概念 8.1 一维数组 用“数组名+一维下标”来表示数据 8.2 一维数组的应用 8.3 二维数组 用“数组名+二维下标”来表示数据 8.4 数组与函数 数组元素与数组名做函数参数 小结 2/14
8.3二维数组 ■8.3.1二维数组的定义 ■8.3.2二维数组的3引用 ■8.3.3二维数组的初始化 ■8,3,4二维数组程序举例 恩 3/14
8.3 二维数组 ◼ 8.3.1 二维数组的定义 ◼ 8.3.2 二维数组的引用 ◼ 8.3.3 二维数组的初始化 ◼ 8.3.4 二维数组程序举例 3/14
例8.15有一个3×4的矩阵,要求编程序求出其中值 0 2 3 最大的那个元素的值,以及其所在的行号和列号。 2 3 4 解题思路:采用“打擂台算法” 1 9 8 7 6 2 -10 10 -5 2 max=a[0][0],row=0,colum=0 fori=0 to 2 inta[3][4]={K1,2,3,4}, for j=0 to 3 {9,8,7,6}, 真 a[i][j]>max 假 {-10,10,-5,2 max=a[0][0];row=0;colum=0; max=a叮叮 row=j for (i=0;i<=2;i++) 记最大值 colum=j for0=0;j=3j+) if(a[叮]>max) 输出: max,row,colum (max=a[叮]; row=i; max=10 记行号 colum=j; 0w=2 记列号 colum=1 恩 4/14
例8.15 有一个3×4的矩阵,要求编程序求出其中值 最大的那个元素的值,以及其所在的行号和列号。 解题思路:采用“打擂台算法” for i=0 to 2 for j=0 to 3 max=a[i][j] row=i colum=j a[i][j]>max 真 max=a[0][0], row=0,colum=0 输出:max,row,colum 假 0 1 2 3 0 1 2 3 4 1 9 8 7 6 2 -10 10 -5 2 记行号 int a[3][4]={{1,2,3,4}, {9,8,7,6}, {-10,10,-5,2}}; max=a[0][0];row=0;colum=0; for (i=0;i<=2;i++) for (j=0;j<=3;j++) if (a[i][j]>max) { max=a[i][j]; row=i; colum=j; } 记最大值 记列号 4/14
8.3二维数组 8.3.1二维数组的定义 类型标识符数组名[常量表达式1][常量表达式2]; ■例:f1oata3]4;/定义一个二维数组a,3行4列, 共12个元素 二维数组a a[0]- a[o][o] a[o][1] a[0][2] a[0][3] a af1]- a[1][o] a[1][1] a[1][2] a[1][3] a[2]- a[2][0] a[2][1] a[2][2] a[2][3] 有3个元素,每个元素 a叮是一维数组名,例如a[2]是一维数组 是一个一维数组 的名字,它又有4个float类型的元素 8.3.2二维数组的3引用 数组名下标]下标] a[2][3]a[2-1][2*2-1] 行数 列数 不可“越界引用数组”a[3][4]=15; 5/14
8.3.1 二维数组的定义 a[0]- a[0][0] a[0][1] a[0][2] a[0][3] a a[1]- a[1][0] a[1][1] a[1][2] a[1][3] a[2]- a[2][0] a[2][1] a[2][2] a[2][3] ◼ 例: float a[3][4]; //定义一个二维数组a,3行4列,共12个元素 类型标识符 数组名[常量表达式1][常量表达式2]; 二维数组a 有3个元素,每个元素 是一个一维数组 a[i]是一维数组名,例如a[2]是一维数组 的名字,它又有4个float类型的元素 8.3.2 二维数组的引用 数组名[下标][下标] 行数 列数 a[2][3] a[2-1][2*2-1] 不可“越界引用数组”a[3][4]=15; 8.3 二维数组 5/14