我到别写的程序是演示用messagebox来显示变量的。
var 
  I:Integer; 
  Tot:Integer; 
begin 
  I:=0; 
  Tot:=0; 
  for  i:=0  to 10 do  begin 
    Tot:=Tot+i
  end; 
    showMessage(IntToStr(i));
end; 
这样的话,直接就显示11了。
我想是显示到哪一步。我修改为:
  begin 
    Tot:=Tot+i
showMessage(IntToStr(i))
  end; 
    发现不行,程序提示出错。
结果改为showMessage(IntToStr(i))
  begin 
    Tot:=Tot+i  end;才行,按我的想法应该是放在begin与end;之间的,为什么是要放在begin之前的呢?不是很明白,特请教各位牛人。

解决方案 »

  1.   

    begin  
      Tot:=Tot+i; <---这里少了个;号
    showMessage(IntToStr(i))
      end;  
        
      

  2.   

    begin   
      Tot:=Tot+i; <---这里少了个;号
    showMessage(IntToStr(i)); <---这里也少了个;号
      end;   每个语句都要以封号结束
      

  3.   

    运行过程中显示变量值var 
      I:Integer; 
      Tot:Integer; 
    begin 
      Tot:=0; 
      for  i:=0  to 10 do
      begin 
        Tot:=Tot+i;
        showMessage(IntToStr(i));
      end; 
    end; 
      

  4.   

    end的上一行允许不写分号,但建议每行都写上统一起来,以后维护也方便
      

  5.   

    需要说说的是:
    凡是 end 上一句代码,可以不用 ; 号的
    给你一个例子:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      begin
        ShowMessage('') //这里没有 ; 号
      end;
      begin
        ShowMessage('');
        begin
          ShowMessage('')//这里没有 ; 号
        end;
        ShowMessage('') //这里没有 ; 号
      end;
    end;
      

  6.   

    var 
      I:Integer; 
      Tot:Integer; 
    begin 
      I:=0; 
      Tot:=0; 
      for  i:=0  to 10 do
      begin 
        Tot:=Tot+i
      end; 
      showMessage(IntToStr(i));
    end; 程序意义不大,多看书吧。
      

  7.   

    Pascal语言里的分号是语句之间的分隔符,不是语句结束符,和C类语言里不一样
      

  8.   

    try:
    var 
      I:Integer; 
      Tot:Integer; 
    begin 
      Tot:=0; 
      for  i:=0  to 10 do
      begin 
        Tot:=Tot+i;
        showMessage(IntToStr(i));
      end; 
    end; 
      

  9.   

    我想知道Tot:Integer; 
    声明这个变量用来干什么?
      

  10.   

    同情楼主,基础问题有时候很烦人的,
    delphi是宝蓝的pascal语法,基本上等同于工业标准pascal,楼主写程序适合规范些,每句都加上分隔符;就没问题的
      

  11.   

    begin  
      Tot:=Tot+i; <---这里少了个;号
    showMessage(IntToStr(i))
      end;  
      要养成这个习惯,特别是新手
      

  12.   

    我才发现end前可以不分号!!所以我不会碰到这个问题。。
      

  13.   

    "每句都加上分号",这句话说的太绝对了。该加的加,没必要加的也尽量加上,不能加的一定不要加。比如else前面一定不能加。
      

  14.   

     '截至2010-06-29 07:07:59\n用户结帖率98.91%\n总发帖:274\n正常结帖:232\n未结帖:3\n')" onmouseout="hideHint(this)">98.91%</label></li>
      

  15.   

    for循环结束后,循环变量的值是不确定的,你不能指望循环结束后I就一定是10或者11...