大衣后开叉缝制方法:有关PASCAL 局部量与全程量的问题

来源:百度文库 编辑:神马品牌网 时间:2024/05/10 17:52:26
下面是一个 矩阵运算的程序
program summul(onput,output);
type
mat:=array[1..5,1..5]of real
var
a,b,c,d,e,f,g,h:mat;
i,j:integer;{全程量}
procedure print(var a:mat);
var
i,j:integer;{局部量}
begin
for i:=1 to 5 do
begin
for j:=1 to 5 do
write(a[i,j]:8:2);
writeln
end;
writeln
end;
procedure sm(var a,b,c,d:mat);
var
i,j,k:integer;{局部量}
begin
for i:=1 to 5 do
for j:=1 to 5 do
begin
c[i,j]:=a[i,j]+b[i,j];
d[i,j]=0;
for k:=1 to 5 do
d[i,j]:= d[i,j]+a[i,k]*b[k,j];
end
end;
begin
for i:=1 to 5 do
for j:=1 to 5 do
readln(a[i,j],b[i,j],e[i,j],f[i,j]);
sm(a,b,c,d);
print(a);
print(b);
print(c);
print(d);
sm(e,f,g,h);
print(e);
print(f);
print(g);
print(h);
end.
我想知道如果全程量定义为
i,j,k:integer;
而局部量不再重新定义,对这个程序有什么影响?
即使在函数或过程中使用全程变量
在我给的这个程序中,对于运算有影响?
如果不再定义那几个局部变量,是不是还可以节省少许空间?

在你这个程序中确实没影响。

写局部变量,这是一种习惯,可以让你和其他看程序的人都知道,这个变量的作用域是什么。减少不必要的错误。

就是这样了。

如果不重新定义,将在函数/过程中使用全局变量