A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

import java.util.Random;
import java.util.Scanner;
class GussMath
{
public static void main(String[]agrs)
{
    Scanner sc=new Scanner(System.in);
     Random r=new Random();
   
    boolean flag=true;
    int b=(int)(r.nextInt(100));
    while(flag)
    {
     int number=sc.nextInt();
   
     if(number<1 || number>100)
     {
      System.out.println("请输入1~100之间的数");
      // flag=false;
      break;
   }
     if(number==b)
     {
      System.out.println("恭喜你,猜对了");
      System.out.println("请问你还想继续玩吗?是请按Y/否请按N");
       String s=sc.nextLine();
      String c1="Y";
      String c2="N";
      if(sc.equals(c1))
      {
       Random ra=new Random();
       //int b=(int)(ra.nextInt(100));//请各位大侠帮忙解决一下这里如何实现继续向下执行?(对循环中嵌套在返回去执行老是迷糊)
       flag=true;
       continue;
      }
      if(sc.equals(c2))
      {
       break;
      }
     
      //flag=false;
     }
     if(number>b)
     {
      System.out.println("大了,请继续");
      continue;
     }
     if(number<b)
     {
      System.out.println("小了,请继续");
      continue;
     }  
    }
}
}
求大侠们给解决一下注释的地方!!!

2 个回复

倒序浏览
改写了一下,你的 String s=sc.nextLine();获取不到值
  1. import java.util.Random;
  2. import java.util.Scanner;

  3. class GussMath {
  4.         public static void main(String[] agrs) {
  5.                 Scanner sc = new Scanner(System.in);
  6.                 Random r = new Random();

  7.                 String number;
  8.                 boolean flag = true;
  9.                 int b = (int)(r.nextInt(100));
  10.                 while (flag) {
  11.                         System.out.println(b);
  12.                         number = sc.next();

  13.                         if (Integer.valueOf(number) < 1 || Integer.valueOf(number) > 100) {
  14.                                 System.out.println("请输入1~100之间的数");
  15.                                 break;
  16.                         }
  17.                         if (Integer.valueOf(number) == b) {
  18.                                 System.out.println("恭喜你,猜对了");
  19.                                 System.out.println("请问你还想继续玩吗?是请按Y/否请按N");
  20.                                 number = sc.next();
  21.                                 String c1 = "y";
  22.                                 String c2 = "N";
  23.                                 if (number.equals(c1)) {
  24.                                         b = (int)(r.nextInt(100));
  25.                                         continue;
  26.                                 }
  27.                                 if (sc.equals(c2)) {
  28.                                         break;
  29.                                 }

  30.                         }
  31.                         if (Integer.valueOf(number) > b) {
  32.                                 System.out.println("大了,请继续");
  33.                                 continue;
  34.                         }
  35.                         if (Integer.valueOf(number) < b) {
  36.                                 System.out.println("小了,请继续");
  37.                                 continue;
  38.                         }
  39.                 }
  40.         }
  41. }
复制代码
回复 使用道具 举报
哥们,我的意思是用基础的知识写出来!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马