本篇将要介绍的for语句也是循环的一种。
他的一般形式为:
for(表达式1;表达式2;表达式3)
语句
注意,各表达式间是分号,不是逗号。
括号中三个表达式的作用:
表达式1:
设置的初始条件,只执行一次。
可以为零个,一个或多个变量设置初值。
表达式2:
是循环条件的表达式,
用来判定是否继续循环。
在每次执行循环体前先执行此表达式,决定是否继续执行循环。
表达式3:
作为循环的调整,
例如使循环变量增值,
他是在执行完循环体后才进行的。
最常用的for语句的形式:
for(循环变量赋初值;循环条件;循环变量增值)
语句
比如:
for(i = 1;i <=1200;i++)
sum = sum + i;
for语句的执行过程就是表达式1——》表达式2——》表达式3——》表达式2…
for语句的一般形式对应的while语句如下:
表达式1;
while 表达式2
{
语句
表达式3
}
在一般形式中,
表达式1可以省略,
即不设置初值,
但表达式1的分号不能省略。
我们可以在循环前设置初值。
表达式2也可以忽略,
这样就是不设置检查循环的条件。
循环会无休止的进行下去,
也就是表达式2始终为真。
表达式3也是可以省略的,不过在这种情况下我们需要在循环内设置其他条件使循环能正常结束。
就像是i++这个式子,不论是放在表达式3还是语句中都是可以的。
三个表达式都是可以忽略的,
表达式1和表达式3都可以在程序的其他位置进行补充,
表达式2的忽略会使得循环无休止地进行下去。
for语句还是非常强力的。
表达式1可以是设置循环变量初值的赋值表达式,
也可以是与循环变量无关的其他表达式。
可以是给其他变量赋值。
在表达式1和表达式3中,可以包含多个表达式,中间用逗号隔开就行,
但表达式2中只能有一个表达式,这个是判定循环用的。
比如:
for(sum = 0,i = 1;i<=100;i++ )
或
for(i = 0,j = 100;i<=j;i++,j–)
表达式2一般是关系表达式或逻辑表达式,但也可以是数值表达式或字符表达式,
只要其值非零,就执行循环体。
for(i = 0;(c = getchar())!=‘\n’;i +=c)
这个就是说我们从终端输入一个字符给c
然后判断该赋值表达式是否不等于’\n‘
如果不相等,就执行循环体。
本篇内容到此结束。