while和do...while的区别

在一般情况下,用while语句和用do…while语句处理同一问题时,若二者的循环体部分是一样的,那么结果也一样。如例1和例2程序中的循环体是相同的,得到的结果也相同。但是如果while后面的表达式一开始就为假(0值)时,两者循环的结果是不同的。

例1. 用while循环

while和do...while的区别_第1张图片
运行结果(两次)
(1)输入i=1时
while和do...while的区别_第2张图片
(2)输入i=11时
while和do...while的区别_第3张图片

例2.用do…while循环

while和do...while的区别_第4张图片
运行结果(两次)
(1)输入i=1时
while和do...while的区别_第5张图片
(2)输入i=11时
while和do...while的区别_第6张图片
可以看到,当输入i的值小于或等于10时,二者得到的结果相同。而当i>10时,二者结果就不同了。这是因为此时对while循环来说,一次也不执行循环体(表达式“i<=10”的值为假),而对do…while循环语句来说则至少执行一次循环体。可以得到结论:当while后面的表达式的第1次的值为“真”时,两者循环得到的结果相同;否则,二者结果不相同(指二者具有相同的循环体的情况)

你可能感兴趣的:(2018.12.25)