要求:使用java编写程序,随机生成一个范围[1-100]数字,并且用户能从控制台输入数字,要求记录猜测次数,猜错时提示大了或小了,猜对了提示结果和共猜了几次。
编写代码如下:
public static void main(String[] arg) {
Random rd = new Random(); // 随机数对象
Scanner sc = new Scanner(System.in); // 扫描器对象
int num = rd.nextInt(100)+1; // [1-100]
int guess_num = 0; // 猜测次数
while (true){
System.out.println("请猜一个[1-100]数字:");
int guess = sc.nextInt();
guess_num++;
if (guess == num){
System.out.println("恭喜你猜对了,正确答案:"+num+",你一共猜了"+guess_num+"次。");
break;
}else if (guess>num){
System.out.println("抱歉,太大了。");
}else {
System.out.println("抱歉,太小了。");
}
}
}
程序试执行结果如下:
- 请猜一个[1-100]数字:
- 50
- 抱歉,太小了。
- 请猜一个[1-100]数字:
- 60
- 抱歉,太小了。
- 请猜一个[1-100]数字:
- 70
- 抱歉,太小了。
- 请猜一个[1-100]数字:
- 80
- 抱歉,太小了。
- 请猜一个[1-100]数字:
- 90
- 抱歉,太大了。
- 请猜一个[1-100]数字:
- 85
- 抱歉,太大了。
- 请猜一个[1-100]数字:
- 84
- 抱歉,太大了。
- 请猜一个[1-100]数字:
- 83
- 抱歉,太大了。
- 请猜一个[1-100]数字:
- 82
- 抱歉,太大了。
- 请猜一个[1-100]数字:
- 81
- 恭喜你猜对了,正确答案:81,你一共猜了10次。
你需要注意,Random类的nextInt()方法一个参数时,生成随机整数的范围是[0,n),如果你需要[1-100],可以使用nextInt(100)+1得到。