黑马程序员技术交流社区

标题: 关于while循环和do while循环 [打印本页]

作者: liu01230    时间: 2015-5-12 19:23
标题: 关于while循环和do while循环
while循环是先判断后执行循环体,do while循环是先执行循环体再判断,这是不是就意味着do while循环会比while循环多执行一次循环体?

作者: ios专用    时间: 2015-5-12 19:56
可以这么理解,如果条件都不成立的情况下,do  while会执行一下,while不会执行
作者: liu01230    时间: 2015-5-12 21:20
ios专用 发表于 2015-5-12 19:56
可以这么理解,如果条件都不成立的情况下,do  while会执行一下,while不会执行 ...

那不就是do while肯定会比while多执行一次循环了
作者: shao122791159    时间: 2015-5-12 21:29
在相同的判定条件下是成立的
作者: wangguanyang    时间: 2015-5-12 23:35
可以这么说
作者: 50mmf1.0    时间: 2015-5-13 00:29
do while不管成不成立都会执行一次。
作者: shenxian88    时间: 2015-5-13 01:07
只能说,do while再循环中至少循环一次,而while至少循环0次;条件不一样,不能判断谁循环的多与少
作者: qiang0901    时间: 2015-5-13 08:53
是滴,你这么理解是正确的
作者: 15578797612    时间: 2015-5-13 12:54
差不多这个意思了
作者: wx_BZhrvVik    时间: 2015-5-13 14:13
是这样,无论判断条件do while是否成立都会执行一次,可以理解成do while会比while多一次
作者: CornerFly    时间: 2015-5-13 16:08
如果条件刚开始就不成立,do while循环会执行一次,while循环,一次也不执行。但是如果第一次条件成立的话,是一样的
作者: 卖报的小画家    时间: 2015-5-13 16:26
确实是这样,do,,while都是无条件先执行一次循环
作者: 星空眼泪    时间: 2015-5-13 16:36
/*
我觉得本身两个都是一种循环结构,它们之间没有什么必要的联系的。就像for循环跟while循环
结构之间没有什么必要的关系一样。
举一个例子:
// 下面的while循环了3次
int main()
{
    int i = 1;
    while (i < 4)
    {
        i++;
    }
    return 0;
}
// 但是下面的这个do-while循环相同的判断条件只执行了2次
int main()
{
    int i = 1;
    do
    {
        i++;
    } while (i < 4)
    return 0;

}
从上面两个例子来看,具体执行的循环次数,关键是看循环语句。
只不过由于结构的特点,do-while循环是先执行循环体,再判断条件,
所以的无论条件是否成立,肯定会执行一次循环体罢了。
*/
作者: 等风继续吹    时间: 2015-5-13 17:42
是的,do while 是先执行,再判断, while 是先判断再执行,肯定是do while 多执行一次了
作者: ios专用    时间: 2015-5-13 23:03
liu01230 发表于 2015-5-12 21:20
那不就是do while肯定会比while多执行一次循环了

嗯,可以这么理解,不过具体用do while还是用while这得看具体情况




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2