为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

正在回答

3 回答

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

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

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

0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~
#1

crazydaddy

请问为什么改成while($num<5)结果还是一样啊? 当$num=5的时候,while就已经不执行了,而do...while不是还应该再执行一次吗?
2014-12-25 回复 有任何疑惑可以回复我~
#2

塞纳河北岸 回复 crazydaddy

执行一下: <?php //B例子 $num = 2; $sum = 10; do{ $sum = $sum + 10; $num = $num+1; echo $sum ."num等于".$num."<br>"; }while($num<=5); echo "B例子的结果:".$sum."<br />"; ?>
2015-02-06 回复 有任何疑惑可以回复我~

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


0 回复 有任何疑惑可以回复我~
#1

crazydaddy

请问为什么改成while($num<5)结果还是一样啊? 当$num=5的时候,while就已经不执行了,而do...while不是还应该再执行一次吗?
2014-12-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信