循环次数已知时,可以用for语句实现循环结构。for语句有两种格式:递增型和递减型。

(1)递增型for语句格式
    for<循环变量>:=<初值>to<终值>do<语句>;

    for i:=0 to 10 do
(2)递减型for语句格式  
    for<循环变量>:=<初值>downto<终值>do<语句>;
其 中,“循环变量"为一个有序类型的数据,

在第一种形式中,使用的是保留字to,循环变量则从“初值"开始逐一增加到“终值";

在第二种形式中,使用的是保 留字downto,“循环变量"则从“初值"开始逐一递减到“终值",每次执行一次循环体语句。下面继续改写上述求1~1 O之和的程序代码如下:
    s:=O;    ,
    for i:=1 to 1 0 do  //for语句开始行
    s:--S+i:
35
或s:=0U;
戥s:=;
for i:=1 0 downto 1 do//for语句开
S:=S+1;
使用for语句的注意事项
始行
 ①在循环体内不能改变循环变量的值,因为循环变量的值是在执行完一次循环后自动进行修改的。
②循环变量的值在循环结束后,一般不再引用循环变量的值。

Delphi之For In

首先我们要知道哪些类型可以用For In吧,下面就是:

  • for Element in ArrayExpr do Stmt;      数组
  • for Element in StringExpr do Stmt;    字符串
  • for Element in SetExpr do Stmt;         集合
  • for Element in CollectionExpr do Stmt;   集合
  • for Element in Record do Stmt;         结构体


我们来看例子:

 

 
  
  1. 1   type 
  2. 02  THuangJacky = (hjA,hjB,hjC,hjD); 
  3. 03  TJackyHuang = record 
  4. 04      a,b,c:Integer
  5. 05  end
  6. 06  const 
  7. 07      stringExpr='HuangJacky'
  8. 08      arrayExpr:array[0..5] of Integer= (1,2,3,4,5,6); 
  9. 09      setExpr:set of THuangJacky = [hjA,hjB,hjD]; 
  10. 10  procedure TForm1.FormCreate(Sender: TObject); 
  11. 11  var 
  12. 12      I:Integer
  13. 13      C:Char
  14. 14      D:THuangJacky; 
  15. 15      F:TComponent; 
  16. 16  begin 
  17. 17  for c in stringExpr do 
  18. 18      ShowMessage(C); 
  19. 19  for i in arrayExpr do 
  20. 20      ShowMessage(IntToStr(i)); 
  21. 21  for d in setExpr do 
  22. 22      ShowMessage(IntToStr(Ord(d))); 
  23. 23  for F in Self do 
  24. 24      ShowMessage(f.Name); 
  25. 25  end