为什么循环迭代一次额外的时间?

时间:2018-05-14 15:38:17

标签: java

int b=1,a=0,c;
System.out.println(a);
System.out.println(b);
do {
    c=a+b;
    System.out.println(c);

    a=b;
    b=c;
}while(c<=1000 );

结果如下:

0 1 1 2 3 五 8 13 21 34 55 89 144 233 377 610 987 1597

有人可以解释1597是如何打印的,即使条件必须<= 1000?

1 个答案:

答案 0 :(得分:3)

  

即使条件必须<= 1000?

,如何打印1597

因为c打印在c=a+bwhile (c<=1000)之间。

将条件更改为,例如:

while(a+b<=1000 );