随机数采用Math.random()产生后处理
输入使用Scanner
对输入类型没有进行类型检测
import java.util.Scanner; public class GuessNum { public static void main(String[] args) { System.out.println("这是一个猜数字的游戏:亲依次输入开始的数字和结束的数字。"); Scanner in = new Scanner(System.in); int rangestar; int rangeend; while (true) { rangestar = in.nextInt(); rangeend = in.nextInt(); if (rangestar < rangeend) { break; } else { System.out.println("请重新输入开始数字与结束数字,结束数字须大于开始数字:"); } } int mod = rangeend - rangestar; // 根据用户输入产生介于开始与结束之间的随机数 int ComRandom = rangestar + ((int) (Math.random() * rangeend * 100)) % mod; // 设置猜测次数 int fre = 0; while (fre <= 0) { System.out.println("请设置猜测次数:"); fre = in.nextInt(); if (fre <= 0) { System.out.println("请输入大于0的数字:"); } } // System.out.println(ComRandom); // 设置记录猜测次数 int fre_pre = 0; System.out.println("猜测开始了:"); boolean condtion = true; while (condtion) { int personGess = in.nextInt(); fre_pre++; if (personGess > ComRandom) { System.out.println("你猜大了,加油!还剩"+(fre-fre_pre)+"次机会!"); } else if (personGess < ComRandom) { System.out.println("你猜小了,加油!还剩"+(fre-fre_pre)+"次机会!"); } else { System.out.println("真厉害,你猜对了!电脑的数字:" + ComRandom + ";你猜的数字:" + personGess); System.out.println("你用使用了:"+fre_pre+"次机会,"+"还剩"+(fre-fre_pre)+"次!"); break; } if (fre_pre == fre) { System.out.println("你的猜测次数已经达到上限,你失败了"); break; } } } }