- /*
- 完成猜数字小游戏
- 产生一个随机数
- 用到Random类java.util.Random;
- Random rm = new Random();
- rm.nextInt(max); 方法可以得到[0,max)范围的随机数
- 接收用户通过键盘输入的数字
- 用到Scanner类 java.util.Scanner
- 比较用户输入的数字与之前的随机数(采用if,else和for循环语句)
- 猜对:输出猜对了
- 猜错:
- 猜大了:输出大了
- 猜小了:输出小了
- 直到猜对为止
- 限制5次,否则输出失败
- */
- import java.util.Random;
- import java.util.Scanner;
- public class GuseeGame {
- public static void main(String[] args) {
- /*
- 产生随机数
- */
- Random rm = new Random();
- int result = rm.nextInt(100)+1; //得到[1.100]的随机数
- /*
- 接收用户通过键盘输入的数字
- */
- System.out.println("OK,随机数已经生成");
- System.out.println("按任意键查看随机数,直接按enter键不看随机数");
- Scanner sc = new Scanner(System.in);
- sc.nextLine();
- //System.out.println(result);
- //通过for循环不断的判断用户是否输入正确
- for (int i = 0; i < 5; i++) {
- System.out.println("请输入数字,范围是1-100");
- int input = sc.nextInt(); //得到用户输入的数字
- //为了更好的用户体验,判断用户输入的数字是否规范,不在范围之内则提示用户
- while (input>100 || input<1) {
- System.out.println("抱歉,您输入的范围不对,应该是1-100之间的数字,包括1和100,请重新输入");
- System.out.println();
- input = sc.nextInt();
- }
- //比较大小并根据不同情况做出不同的输出
- if (input == result) {
- System.out.println("恭喜您,猜对了");
- break;
- } else {
- if (i == 4) {
- System.out.println("Game Over ! 你输了! 正确数字是:"+result);
- break;
- }
- if (input > result) {
- //为了更好的用户体验,判断用户输入的数字是否规范,不在范围之内则提示用户
- while (input>100 || input<1) {
- System.out.println("抱歉,您输入的范围不对,应该是1-100之间的数字,包括1和100,请重新输入");
- System.out.println();
- input = sc.nextInt();
- }
- System.out.println("猜的大了,请重试,您还有"+(4-i)+"次机会");
- } else {
- //为了更好的用户体验,判断用户输入的数字是否规范,不在范围之内则提示用户
- while (input>100 || input<1) {
- System.out.println("抱歉,您输入的范围不对,应该是1-100之间的数字,包括1和100,请重新输入");
- System.out.println();
- input = sc.nextInt();
- }
- System.out.println("猜的小了,请重试,您还有"+(4-i)+"次机会");
- }
- }
- }
- }
- }
复制代码
|
|