一个类A有一个成员变量v,有一个初值100。再定义一个主类CaiCai,对A类的成员变量v循环进行猜数字。如果猜大了则提示大了,猜小了则提示小了,等于则提示猜测成功。并统计猜测次数。

怎样才能实现重复输入,知道正确呢? 我若输入不是100,运行之后就一直重复显示“太大了”/“太小了”,实现不了重新输入

package homework_3;
import java.util.Scanner;

class A{
    private int V = 100;。
    public void judgeNum(){
        Boolean flag = true;
        while(flag){
            System.out.println(" 请输入数字");
            Scanner input = new Scanner(System.in);
            int guessNum = input.nextInt();
            for(int count = 1;;count++){
                if(guessNum > V){
                    System.out.println("猜大了");
                }
                else if(guessNum < V){
                    System.out.println("猜小了");
                }
                else{
                    System.out.println("猜对了");
                    System.out.println("共猜了"+count+"次");
                    flag=false;
                    break;
                }
            }    
        }    
    }
}

public class CaiCai {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        A guessNum = new A();
        guessNum.judgeNum();
    }

}

img



int guessNum = input.nextInt(); 要放在for循环中
外面的while只循环一次。可以去掉

你题目的解答代码如下:

package homework_3;
import java.util.Scanner;
class A{
    private int V = 100;。
    public void judgeNum(){
        Scanner input = new Scanner(System.in);
        for(int count = 1;;count++){
            System.out.println(" 请输入数字");
            int guessNum = input.nextInt(); //放在for循环中
            if(guessNum > V){
                System.out.println("猜大了");
            }
            else if(guessNum < V){
                System.out.println("猜小了");
            }
            else{
                System.out.println("猜对了");
                System.out.println("共猜了"+count+"次");
                break;
            }
        }
    }
}
public class CaiCai {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        A guessNum = new A();
        guessNum.judgeNum();
    }
}

如有帮助,望采纳!谢谢!

int guessNum = input.nextInt();
放在for循环里面