pascal二维数组交换方法

来源:百度知道 编辑:UC知道 时间:2024/06/15 16:39:39
谁知道free pascal 的 二维数组的交换方法
一维数组是a:=b;b:=c;c:=a;
那么二维数组是怎样的?

写个for,每次交换一行,比如
var a,b:array[1..100,1..1000] of longint;
temp:array[1..1000] of longint;
i:longint;
begin
for i:=1 to 100 do {循环每一行}
begin
a[i]:=t; t:=b[i]; b[i]:=a[i];
end;
end.

希望你能满意~~

一样的,每次交换一组

free pascal 有简单的方法

type arr=array[1..100] of integer;
var a,b,t:arr;
begin
t:=a;a:=b;b:=t;
end.

type
fp=array[1..100,1..100] of longint;{相互交换的数组类型一定要一样}
var
a,b:fp;
……
procedure change(a,b:fp);{定义交换过程}
var
c:fp;
begin
c:=a; a:=b; b:=c;
end;
begin
……
change(a,b);{调用过程}
……
end.
{交换效率较低}

一样的
temp:=a; a:=b; b:=temp;

一样的,abc的类型都是二位数组就行了