在for循环中,表达式1是一个或多个赋值语句,它用来控制变量的初始值;表达式2是一个关系表达式,它决定什么时候退出循环;表达式3是循环变量的步进值,定义控制循环变量每循环一次后按什么方式变化。这三部分之间用分号(;)分开。
使用for语句应该注意:
1、for循环中的“表达式1、2、3”均可可以缺省,但分号(;)不能缺省。
2、省略“表达式1(循环变量赋初值)”,表示不对循环变量赋初始值。如:
3、省略“表达式2(循环条件)”,不做其它处理,循环一直执行(死循环)。如:
4、省略“表达式3(循环变量增量)”,不做其他处理,循环一直执行(死循环)。如:
注:死循环可以使用后面即将讲到的break解决
5、表达式1可以是设置循环变量的初值的赋值表达式,也可以是其他表达式。如:
6、表达式1和表达式3可以是一个简单表达式也可以是多个表达式以逗号分割。如:
7、表达式2一般是关系表达式或逻辑表达式,但也可是数值表达式或字符表达式,只要其值非零,就执行循环体。
8、各表达式中的变量一定要在for循环之前定义。如:
#include <stdio.h> int main() { //定义三位数num,个位数sd,十位数td,百位数hd int num, sd, td, hd; //循环所有三位数 for( ? ; ? ; ? ) { //获取三位数字num百位上的数字 hd = ? ; //获取三位数字num十位上的数字 td = ? ; //获取三位数字num个位上的数字 sd = ? ; //水仙花数的条件是什么? if( ?? ) { printf("水仙花数字:%d\n", num); } } return 0; }