for循环是一个重复的控制结构,可以有效地写一个循环,需要执行特定次数。
for语句建立了一个特殊的循环,有其自身的循环变量。开始循环变量指定的初始值和递增或递减到指定的最终值。
for循环是有用的,当知道要重复多少次任务。
语法:
for循环的语法是:
for "initial value" to "last value" by "inremental value" do -- Statements to be executed. end for |
在这里会初始化一个变量的初始值,然后循环体被执行。每次迭代后,变量的值增加了给定的增量值,然后检查最后的变量值是否达到,那么循环将被终止。
初始值,最后的值和增量都必须是原子。如果没有增量指定,那么+1是假定的。
for循环不支持 with entry 语句.
例子:
#!/home/euphoria-4.0b2/bin/eui for a = 1 to 6 do printf(1, "value of a %d\n", a) end for |
这将产生以下结果:
value of a 1 value of a 2 value of a 3 value of a 4 value of a 5 value of a 6 |
循环变量自动被声明并且一直存在,直到循环的结束。循环以外的变量没有值甚至没有声明。如果需要它的最终值,将它复制到另一个变量,然后跳出循环。
检查具有增量值的一个例子:
#!/home/euphoria-4.0b2/bin/eui for a = 1.0 to 6.0 by 0.5 do printf(1, "value of a %f\n", a) end for |
这将产生以下结果:
value of a 1.000000 value of a 1.500000 value of a 2.000000 value of a 2.500000 value of a 3.000000 value of a 3.500000 value of a 4.000000 value of a 4.500000 value of a 5.000000 value of a 5.500000 value of a 6.000000 |