当前位置: 首页 > 文档资料 > Pascal 中文教程 >

多维数组(Multi-dimensional arrays)

优质
小牛编辑
136浏览
2023-12-01

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个列数。 包含三行四列的二维数组如下所示 -

Pascal中的二维数组

因此,数组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];

上面的语句将从数组的第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

如上所述,您可以拥有任意数量的数组,但您创建的大多数数组可能都是一维或二维。