2 qq 34401435 qq_34401435 于 2016.03.23 17:39 提问

这是猜数游戏的部分代码,为什么会输入40显示大了,输入39显示小了
 Scanner in = new Scanner(System.in); 
         { for(int j = 1 ; j< 8; j++){ 
             System.out.println("请输入一个整数:"); 
           int value = in.nextInt();  
           int ran = (int)(Math.random()*100)+1; 
           if (value > ran){
            System.out.println("大了");
         } else if (value < ran){ 
            System.out.println("小了");
         } else if (value == ran){
            System.out.println("恭喜你猜对了!你的战斗力是"+j+"%");}
         }

5个回答

daidaineteasy
daidaineteasy   Ds   Rxr 2016.03.23 17:55
已采纳

下边这句代码提到for循环前边

     int ran = (int) (Math.random() * 100) + 1;

要不每次输入值的时候,这个值都是会重新变化的

huixion
huixion   2016.03.23 18:39
 把随机生成数放到for循环外面,不然每循环一次都重新随机生成一个数

      Scanner in = new Scanner(System.in); 
      int ran = (int)(Math.random()*100)+1; 

     { for(int j = 1 ; j< 8; j++){ 
         System.out.println("请输入一个整数:"); 
       int value = in.nextInt();  

       if (value > ran){
        System.out.println("大了");
     } else if (value < ran){ 
        System.out.println("小了");
     } else if (value == ran){
        System.out.println("恭喜你猜对了!你的战斗力是"+j+"%");}
     }
daidaineteasy
daidaineteasy   Ds   Rxr 2016.03.23 17:55

不要放在for循环内部

kaka20099527
kaka20099527   2016.03.23 17:59

猜的数字应该是固定的

lxk_1993
lxk_1993   Rxr 2016.03.23 20:09

你这样写 每次比较的随机数都是不一样的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!