问答详情
源自:6-9 PHP中循环结构之while与do…while语句的区别

while($num<=5)条件一样的时候结果为什么是一样的

<?php

    //A例子

$num = 2;

$sum  = 10; 

while($num<=5){

$sum = $sum  + 10;

        $num =$num +1;

}

echo "A例子的结果:".$sum."<br />";

//B例子

$num = 2;

$sum  = 10;

do{

$sum = $sum  + 10;

        $num =$num +1;

}while($num<=5);

echo "B例子的结果:".$sum."<br />";

?>

这个结果是

A例子的结果:50
B例子的结果:50

为什么结果一样?难道只要考虑第一次的执行?

提问者:lhayley2014 2014-11-28 11:12

个回答

  • 庄稼
    2015-08-29 17:38:28

    循环里面有自加1,所以,A是从2开始判断,而B是从3开始判断的。

    当$num=5的时候,while就已经不执行了,而do...while继续执行一次,

    总的来说执行的次数是一样的

  • lhayley2014
    2014-11-28 14:12:48

    哦,我懂了。我以为do...while至少执行一次的意思是会比while{}多执行一次

  • 偌颜宁
    2014-11-28 13:40:51

    难道不是一样的结果吗?在A例子结束后,你又重新定义变量sum和num,算然是用的do...while循环,但是运行结果是和上面一样的