第9章二维数组的应用 9.1了解二维数组 9.2二维数组的简单应用 9.3利用地址和指访二维数组 9.4二维数组名作的数的实参 9.5二维数组作中的常用算法个绍 点专此处结束放殃 4合
第9章 二维数组的应用 9.1 了解二维数组 9.2 二维数组的简单应用 9.3 利用地址和指针访问二维数组 9.4 二维数组名作函数的实参 9.5 二维数组操作中的常用算法介绍
91了解二维数组 9.1.1二维数组的用途 9.1.2二维数组的定义 与一维数组一样,二维数组也必须先 定义,然后才可以使用。定义语句的形式 如下: 类型名数组名常量表达式1 常量表达式2, 点专此处结束放殃 4合
9.1 了解二维数组 9.1.1 二维数组的用途 9.1.2 二维数组的定义 与一维数组一样,二维数组也必须先 定义,然后才可以使用。定义语句的形式 如下: 类型名 数组名[常量表达式1] [常量表达式2],……;
维数组的定义形式与一维数组相似, 所不同的是增加了一个用方括号括起来的 常量表达式。这里常量表达式用来指定二 维数组的行数;常量表达式2用来指定二维 数组的列数。由于C语言规定了数组下标 值的下限一律为0,所以二维数组行下标的 上限为常量表达式1的值减1;列下标的上 限为常量表达式2的值减1。 点专此处结束放殃 4合
二维数组的定义形式与一维数组相似, 所不同的是增加了一个用方括号括起来的 常量表达式。这里常量表达式1用来指定二 维数组的行数;常量表达式2用来指定二维 数组的列数。由于C语言规定了数组下标 值的下限一律为0,所以二维数组行下标的 上限为常量表达式1的值减1;列下标的上 限为常量表达式2的值减1
前面提到的存放4名学生3门课成绩的 二维数组可定义如下: int s 3; 此语句表明:这是一个名为的4行3列 的二维数组;数组中一共可以存储4×3个 整型数据;数组行下标的范围是0~3,列 下标的范围是0~2。它在逻辑结构上可以 看作以下形式的矩阵(或表格): 点专此处结束放殃 4合
前面提到的存放4名学生3门课成绩的 二维数组可定义如下: int s[4][3]; 此语句表明:这是一个名为s的4行3列 的二维数组;数组中一共可以存储4×3个 整型数据;数组行下标的范围是0~3,列 下标的范围是0~2。它在逻辑结构上可以 看作以下形式的矩阵(或表格):
点专此处结束放殃 4合
9.1.3二维数组元素的引用 二维数组中的元素在逻辑上可以看作 构成了一个矩阵,但在物理上仍旧占据的 是一串连续的存储单元。这些元素在内存 中的排列顺序是“按行”存放,即:先放 第0行的元素,再放第1行的元素,依次类 推。 点专此处结束放殃 4合
9.1.3 二维数组元素的引用 二维数组中的元素在逻辑上可以看作 构成了一个矩阵,但在物理上仍旧占据的 是一串连续的存储单元。这些元素在内存 中的排列顺序是“按行”存放,即:先放 第0行的元素,再放第1行的元素,依次类 推
如有定义:intx[23; 则数组x在内存中的存储结构如图9-1 所示: x0]x[0[]x(012]x[10]x[l[]x[12 图9-1二维数组存储结构示意图 点专此处结束放殃 4合
如有定义: int x[2][3]; 则数组x在内存中的存储结构如图9-1 所示: 图9-1 二维数组存储结构示意图
二维数组每个元素都具有一个名字 带有双下标的变量。它的一般表示形式 为: 数组名[下标表达式1下标表达式2 如图9-1中所标出的x00 x olli 这里每一维的下标都可以是 整型的常量、变量或表达式。如:x|Ui x0U+等都是合法的。注意:C语言中 维数组元素的两个下标是分别放在两个方 括号中的,不要误写成x0,0、x动这种非 法形式。 点专此处结束放殃 4合
二维数组每个元素都具有一个名字— —带有双下标的变量。它的一般表示形式 为: 数组名[下标表达式1][下标表达式2] 如 图 9 - 1 中 所 标 出 的 x[0][0]、 x[0][1]、…… 这里每一维的下标都可以是 整型的常量、变量或表达式。如:x[i][j]、 x[0][j+1]等都是合法的。注意:C语言中二 维数组元素的两个下标是分别放在两个方 括号中的,不要误写成x[0,0]、x[i,j]这种非 法形式
二维数组元素的引用与一维数组相同 也能够参与同类型变量允许的所有操作。 例如: scant("%d",&xl[001); /输入* x1|0=x00 /赋值六 if(x|00>10) /条件判断 点专此处结束放殃 4合
二维数组元素的引用与一维数组相同, 也能够参与同类型变量允许的所有操作。 例如: scanf("%d", &x[0][0]); /* 输入 */ x[1][0]=x[0][0]; /* 赋值 */ if (x[0][0]>10) … /* 条件判断 */
而语句:x[2|3}=0:则是错误的。因为 在定义语句中限定了x数组是一个2×3的数 组,其行下标最大值为1,列下标最大值为 。上述引用造成了下标越界。同样是 x[2|3],初学者要注意区分它出现在定义 语句中和元素引用时的不同含义。 点专此处结束放殃 4合
而语句:x[2][3]=0;则是错误的。因为 在定义语句中限定了x数组是一个2×3的数 组,其行下标最大值为1,列下标最大值为 2。上述引用造成了下标越界。同样是 x[2][3],初学者要注意区分它出现在定义 语句中和元素引用时的不同含义