C语言中比较常见的循环语句就是while,for,do-while这三种了。但是他分别代表什么意思又有什么区别你真的了解了吗?让我们再来重温一下这三种语句和它们的区别吧。
1.while循环语句
while循环语句的语法格式如下:
while(循环语句){
循环体;
}
上述语句的执行顺序如下。
1)计算循环条件的值。
2)如果循环条件的值为true,那么先执行一次循环体,再返回上一步。
3)如果循环条件的值为false,那么结束循环语句。
while循环语句的流程图如下:
注·while循环语句的特点是先判断再循环,循环体的执行次数大于或等于0。当循环条件的值为true时执行。while循环语句中应有趋向于结束的语句,否则会出现无限循环,即死循环。
例:在屏幕上打印1~10的值。
2.for循环语句
for循环语句是应用最广泛的、功能最强的一种循环结构,一般用于已知循环次数的情况,for循环语句的特点是先判断后执行,循环体的执行次数大于或等于0,当条件表达式的值为true时执行。
for循环语句的语法格式如下:
for([初始化表达式];[条件表达式];[迭代表达式]){
循环体
}
上述语句的执行顺序如下。
1)执行初始化表达式,它的作用是初始化循环变量和其他变量。初始化表达式在整个循环条件中仅执行一次。
2)执行条件表达式。
·如果条件表达式的值为true,那么执行一次循环体。
·如果条件表达式的值为false,那么跳出循环。
3)每次循环体执行完成后,会执行一次迭代表达式。
for循环语句的流程图如图:
注:初始化表达式、条件表达式及迭代表达式都可以省略,但分号不能去省略,当三者都省略时循环会一直执行,即出现死循环。
例:在屏幕上打印1~10。
3.do-while循环语句
do-while循环语句与while循环语句类似,只是while循环语句先判断后循环,do-while循环语句则先循环后判断,循环体至少执行一次。
都-while循环语句的语法格式如下:
do{
循环体;
}while(条件表达式);
do-while循环语句的流程图如图:
例:在屏幕上打印1~10的值。
以上就是C语言中的三种循环体,我们如何结合特定的场景进行选择呢?
我总结了以下几点建议。
1)for循环语句和while循环语句在执行循环体之前测试循环条件,属于当型循环,循环体可能一次不执行。
2)do-while循环语句在执行循环体之后测试循环条件,属于直到型循环,至少执行一次循环体。
3)for循环语句更适合用于明确知道循环次数的场景。
4)while循环语句和do~while循环语句更适合用于循环次数不明确,以及当某个条件改变时再结束循环的场景。
注·明确循环次数时多考虑使用for循环语句;不明确循环次数时多考虑while循环语句;do-while循环语句较少使用。