循环次数已知时,可以用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 type
- 02 THuangJacky = (hjA,hjB,hjC,hjD);
- 03 TJackyHuang = record
- 04 a,b,c:Integer;
- 05 end;
- 06 const
- 07 stringExpr='HuangJacky';
- 08 arrayExpr:array[0..5] of Integer= (1,2,3,4,5,6);
- 09 setExpr:set of THuangJacky = [hjA,hjB,hjD];
- 10 procedure TForm1.FormCreate(Sender: TObject);
- 11 var
- 12 I:Integer;
- 13 C:Char;
- 14 D:THuangJacky;
- 15 F:TComponent;
- 16 begin
- 17 for c in stringExpr do
- 18 ShowMessage(C);
- 19 for i in arrayExpr do
- 20 ShowMessage(IntToStr(i));
- 21 for d in setExpr do
- 22 ShowMessage(IntToStr(Ord(d)));
- 23 for F in Self do
- 24 ShowMessage(f.Name);
- 25 end;
转载于:https://blog.51cto.com/amcto111/1040168