向用户询问H.

0 java loops while-loop do-while java.util.scanner

我想问用户(使用Scanner)他希望程序循环多少次.我需要使用do-while循环语句来执行此操作,但每当我输入我希望它循环的次数时,它只会从我放入的值中减去它,然后重复该数量.

例如,我输入4,程序重复16次而不是4次.

这是我的计划:

System.out.println("Enter range");
int y = input.nextInt();
int x = 10;
do {
    System.out.print("value of x : " + x );
    x++;
    y++;
    System.out.print("\n");
} while(y < 20);
Run Code Online (Sandbox Code Playgroud)

我的问题在哪里?

Kon*_*kov 5

当你进入4,然后y变成4并且循环发生直到y到达20.这就是为什么它被执行了16次.

如果你希望它准确地执行y时间(在你的情况下,4),那么你就可以递减y1每一步,直到它到达0.

System.out.println("Enter range");
int y = input.nextInt();
int x = 10;
do {
    System.out.print("value of x : " + x );
    x++;
    y--;
    System.out.print("\n");
} while(y > 0);
Run Code Online (Sandbox Code Playgroud)