do..while循环

    var mynum =6;//mynum初值化数值为6
     do
    {
    document.write("数字:"+mynum+"<br/>");
    mynum=mynum-1;
    }
    while(mynum<=6)

这个代码什么问题,为什么一执行就死了呢??

阅读 4.3k
8 个回答
mynum = 6;
mynum = mynum-1;
do{}while(mynum<=6)

mynum = 5 ,4 ,3 ,2 ,1 ,-1 ,-2 永远小于 6 所以死循环
估计你应该是

do{ mynum = mynum-1; }while(mynum>0) 

这样就只循环6次了

这个是一个死循环,mynum一直在减小。。while没有终止的时候,也就是说你的while判断条件一直都是真的,循环会一直执行。。。

把while条件改成while(mynum>0)试试。

do..while

先去执行do里面语句,再去判断

mysum不是一直<=6么?一直符合条件就会无限循环呀

这个死循环了,你的while条件一直是满足的

这个试着写几组数据就发现了啊:
输出:数字6 mynum:5 满足5<6循环
数字5 mynum:4 满足4<6循环

while(mynum<=6)

这个总是成立,循环条件有误

int i = 0;
        while(i < 5){
            i = i + 1;
            System.out.print(i);
        }
        System.out.println();
        // ==============>
        do{
            i = i - 1;
            System.out.print(i);
        }while(i > 0);
推荐问题
logo
101 新手上路
子站问答
访问
宣传栏