猜数字游戏 - Java实现

x33g5p2x  于2021-11-22 转载在 Java  
字(1.9k)|赞(0)|评价(0)|浏览(408)

猜数字游戏

  1. 系统自动生成一个随机整数(1-100), 然后由用户输入一个猜测的数字. 如果输入的数字比该随机数小, 提示 "低 了",
  2. 如果输入的数字比该随机数大, 提示 "高了" , 如果输入的数字和随机数相等, 则提示 "猜对了

整理思路

  1. 我们玩游戏的时候,都有开始游戏和退出游戏
  2. 其次,它要生成一个随机数,如果是固定值,哪有什么意思?
  3. 再者,我们要输入数字,根据它反馈的情况进行判断和猜测数字的大小
  4. 但是我们不可能说一次就判断成功,所以我们需要一个循环输入
  5. 最后,猜对了数字之后,我们需要退出游戏模式,重新回到菜单界面,让用户选择玩还是不玩,你总不能说让别人一直玩,退不出来吧。那这游戏挺砸吧的

现在我们正式开始制作

  1. import java.util.Random;
  2. import java.util.Scanner;
  3. public class LogicControl {
  4. // 注意 自定函数 menu 和 game的位置,不需要放在 main 方法的前面,因为 java 里 是没法函数声明的说法,要用就直接调用的
  5. public static void menu(){// 游戏菜单选择界面
  6. System.out.println("*****************");
  7. System.out.println("**** 1.Play ****");
  8. System.out.println("**** 0.Exit ****");
  9. System.out.println("*****************");
  10. }
  11. public static void game(){// 游戏运行程序
  12. Scanner scanner = new Scanner(System.in);//为生成一个随机值,做准备
  13. Random random = new Random();//默认随机种子是系统时间,提示 在括号里加上数字,它生成一个指定数,所以最好不要画蛇添足
  14. int toGuess = random.nextInt(100);// 生成 100 以内的数字
  15. while(true){// 死循环,不猜对不退出
  16. System.out.println("请输入你所猜的数字");
  17. int guess = scanner.nextInt();
  18. if(guess < toGuess){
  19. System.out.println("猜小了");
  20. }else if(guess > toGuess){
  21. System.out.println("猜大了");
  22. }else{// guess == toGuess
  23. System.out.println("猜对了");
  24. break;//猜对了,才有权力退出, 当然你把游戏插卡拿走,强制退出游戏,我能拿你怎么办?
  25. }// 图55
  26. }
  27. }
  28. public static void main(String[] args) {// 首先,主体 类和方法 要先写好
  29. Scanner scanner = new Scanner(System.in);// 为我们输入数据做好准备
  30. int input = 0;// 输入变量初始化
  31. do{
  32. menu();// 玩家进入游戏,一开始肯定是游戏界面
  33. System.out.println("请选择:");// 根据我们的游戏游戏界面选项,决定输入的值
  34. input = scanner.nextInt();// 输入变量更新
  35. switch(input){// 使用switch 语句 进行,对输入数据的判断
  36. case 1:{//如果是 1, 就是play 玩游戏
  37. game();//使用 game 自定义函数,图54
  38. break;// 游戏结束,退出游戏,回到游戏主界面. 图56
  39. } case 0:{// 如果是 0,退出程序,不玩了!
  40. System.out.println("退出游戏");
  41. break;// 图 57
  42. } default:{// 如用用户输入的数据,不是我指定的数据,则我们需要反馈用户信息,让用户重新选择
  43. System.out.println("输入错误,请重新输入");//图 53
  44. break;// 注意 break 是可以 switch 和用,break 现在是终止switch 语句,而不是循环语句
  45. // 这一点是 break的特殊用法
  46. }
  47. }
  48. }while (input>0);// 条件判断,如果输入0和负数,执行完上面的程序后,退出循环(这是do while 的特点,先干再说),结束游戏
  49. // 如果输入输入一个正数,则循环继续,只不过如果该正数不为1是不能进行游戏的,系统会告知你输入错误,请重新选择
  50. }
  51. }

图53

图 54

图 55

图56

#图 57

相关文章

最新文章

更多