2.4.5 简单的循环机制(2)
执行while语句时,第一件事是检查布尔表达式。最开始执行while表达式时,如果布尔表达式不为true,就永远不执行循环主体,具体可参见图2.11的示范对话3。在许多情况下,你都希望循环主体执行0次。例如,假定while循环要读取一个由不及格分数构成的成绩单,但实际上没有人不及格,就应该让循环主体执行0次。
一个while循环可能执行0次循环主体,这是比较常见的一种情况。相反,如果知道自己的循环主体在任何情况下都至少要执行一次,就可使用do-while循环。do-while语句与while语句相似,只是它的循环主体至少要执行一次。do-while语句的语法请参见图2.13。
|
| 图2.13 do-while语句的语法 |
含有do-while循环的示范程序则请参见图2.14。在那个do-while循环中,和在任何do-while循环中一样,第一件事情就是执行循环主体中的语句。循环主体第一次迭代之后,do-while语句的行为就和while循环一样了。换言之,是检查布尔表达式,如果为true,就再次执行循环主体,然后再次检查布尔表达式,如此反复。
|
| 图2.13 do-while语句的语法 |
示范对话
- Hello
- Do you want another greeting
- Press y for yes, n for no, and then press return: y
- Hello
- Do you want another greeting
- Press y for yes, n for no, and then press return: Y
- Hello
- Do you want another greeting
- Press y for yes, n for no, and then press return: n
- Good-Bye