回 帖 发 新 帖 刷新版面

主题:一个pascal的简单问题。

这学期刚开始学pascal,下面是用二维数组输出下三角的九九乘表

var
  A: array of array of integer;
  I,J: integer;

begin
  { TDO -oUser -cConsole Main : Insert code here }

  setlength(a,9);
  for I:=low(A) to high(A) do
  begin
    setlength(A[I],I+1);//同c语言
    for J := low(A[I]) to high(A[I]) do
    begin
      A[I,J] := (I+1)*(J+1);
      write(A[I,J]:3);
    end;
    writeln;
  end;
  readln;

end.

我想问一下,为什么只有写了readln才能输出,不写就报错阿??

回复列表 (共9个回复)

沙发

不写readln;就报错???

不会这么离奇吧,只不过看不到输出而已,如果上面代码没错的话。

至于代码具体内容,pascal没怎么学过,看起来累,下面的人看看吧!!!

板凳

定义部分怪怪的……

3 楼

偶去编个……

4 楼

program jiujiu(output);
var
 i,j,s,n:integer;
begin
 n:=0;
 for i:= 1 to 9 do
  for j:= 1 to 9 do
   begin
    s:=i*j;
    write(s:4);
    n:=n+1;
    if n mod 9 =0 then writeln;
   end;
end.


可行!
如果要实现N*N的乘法表,可以利用数组。

5 楼

a: array of array of integer;
谁可以解释一下
这种定义是什么意思?

6 楼

应该是用来在定义函数或过程参数部分用来表示二维数组的

7 楼

也应该写范围吧?

8 楼

[quote]不写readln;就报错???

不会这么离奇吧,只不过看不到输出而已,如果上面代码没错的话。

至于代码具体内容,pascal没怎么学过,看起来累,下面的人看看吧!!![/quote]
[em57][em57][em57][em57][em57][em57][em57][em57][em57][em37][em27][em17][em7][em6][em6][em6][em1][em2][em1]

9 楼

有这么定义的么???

我来回复

您尚未登录,请登录后再回复。点此登录或注册