Pascal 多维数组
-
多维数组
Pascal编程语言允许多维数组。这是多维数组声明的一般形式-type array-identifier = array [index-type1, index-type2, ...] of element-type; var a1, a2, ... : array-identifier;
例如,以下声明创建了三维5*10*4个整数数组-var threedim: array[1..5, 1..10, 1..4] of integer;
-
二维数组
多维数组的最简单形式是二维数组。本质上,二维数组是一维数组的列表。要声明大小为x,y的二维整数数组,您将编写如下内容:var arrayName: array[1..x, 1..y] of element-type;
说明其中element-type可以是任何有效的Pascal数据类型,而arrayName是有效的Pascal标识符。二维数组可以可视化为一个表,该表将具有x的行数和y的列数。包含三行四列的二维数组可以显示如下-因此,数组a中的每个元素都由形式为a [i] [j]的元素名称标识,其中a是数组的名称,而i和j是唯一标识a中每个元素的下标。 -
初始化二维数组
多维数组与一维数组一样,是通过赋值(指定特定的下标或使用for-do循环)进行初始化的。例如,var a: array [0..3, 0..3] of integer; i, j : integer; begin for i:= 0 to 3 do for j:= 0 to 3 do a[i,j]:= i * j; ... end;
-
访问二维数组元素
通过使用下标(即数组的行索引和列索引)访问二维数组中的元素。例如-var val: integer; val := a[2, 3];
上面的语句将从数组的第三行获取第4个元素。您可以在上图中进行验证。让我们检查下面的程序,其中我们使用嵌套循环来处理二维数组-
尝试一下program ex2dimarray; var a: array [0..3, 0..3] of integer; i,j : integer; begin for i:=0 to 3 do for j:=0 to 3 do a[i,j]:= i * j; for i:=0 to 3 do begin for j:=0 to 3 do write(a[i,j]:2,' '); writeln; end; end.
编译并执行上述代码后,将产生以下结果-0 0 0 0 0 1 2 3 0 2 4 6 0 3 6 9
如上所述,尽管您可以具有任意数量的维度数组,但您在工作中创建的大多数数组很可能是一维或二维的。