牡丹江有做网站的人吗双滦区seo整站排名
一、问题
while 语句和 do...while 语句类似,都是要判断循环条件是否为真。如果为真,则执⾏循环体,否则退出循环。它们之间有什么区别呢?
二、解答
while 语句和 do..while 语句的区别在于:do..while 语句是先执⾏⼀次循环体,然后再判断。因此 do...while 语句⾄少要执⾏⼀次循环体。⽽ while 是先判断后执⾏,如果条件不成⽴或不满⾜,则⼀次循环体也不执⾏。 下⾯通过两个例⼦来区分⼆者。
while 循环:
#include <stdio.h>
int main()
{int i = 15, sum = 0;while (i < 15){sum += i;}printf("The sum is:%d\n", sum);return 0;
}
输出结果如下
The sum is:0
do...while 循环:
#include <stdio.h>
int main()
{int i = 15, sum = 0;do{sum += i;} while (i < 15);printf("The sum is:%d\n", sum);return 0;
}
输出结果如下
The sum is:15
上⾯两个例⼦将 while 语句换成了 do...while 语句,程序运⾏出的结果就截然不同,主要是因为 while 语句先判断后执⾏,先判断i<15 表达式是否为真,因为表达式为假,故没有执⾏循环体语句:⽽ do...while 是先执⾏后判断,⽆论表达式是否为真都先执⾏,执⾏完再判断。
- 说明:
while 语句和 do...while 语句⼀般都可以互相改写,但是 do...while 语句和 while 语句在相互替换时,要注意修改循环控制条件。
三、总结
do...while 语句和 while 语句的区别是 do...while 是先执⾏后判断,因此 do...while ⾄少要执⾏⼀次循环体。⽽ while 是先判断后执⾏,如果条件不满⾜,则⼀次循环体语句也不执⾏。掌握了⼆者的区别,便可以针对不同的问题使⽤不同的循环结构。