虽然循环无缘无故地寻找意外输入?

时间:2013-10-26 21:44:30

标签: loops input while-loop

我正在尝试运行与输入无关的while循环程序。它只是告诉我计算的最终值是什么。但是,当我运行该程序时,它什么也没做。它也没有结束。我对发生的事感到困惑?

int x = 90;
    while (x < 100)
    {
        x += 5;
        if (x > 95)
            x -= 25;
    }
    System.out.println( "final value for x is " + x);

2 个答案:

答案 0 :(得分:1)

循环永远不会终止,因为x永远不会达到100.如果你想亲眼看看x发生了什么,请在循环中添加一行,以便代码如下所示:

int x = 90;
while (x < 100) {
    System.out.println("x = " + x);  // More useful output here...
    x += 5;
    if (x > 95)
        x -= 25;
}
System.out.println("final value for x is " + x);

答案 1 :(得分:0)

您的while循环永远不会停止,因此它永远不会打印出来,尝试在循环中更改代码。

你怎么能意识到这一点?

while循环中输出一些打印件:

    int x = 90;
    System.out.println("Before the while");
    while (x < 100) {
        System.out.println("Inside the while");
        x += 5;
        if (x > 95)
            x -= 25;
    }
    System.out.println("final value for x is " + x);

迭代1:

x = 95

迭代2:

x = 100
if condition is true, so x = 75

...因此,当x达到100时,条件将使其成为75.因此,while永远不会结束。