Java新手实战项目-猜数字小游戏,详解加源代码

14 篇文章 5 订阅

游戏介绍

用户输入数字,判断该数字是大于,小于,还是等于随机生成的数字,等于的时候退出程序。

游戏玩法

当程序运行的时候,用户可以在操作台进行指令操作,根据程序输出的提示信息,进行交互,直到游戏结束。

效果图

猜数字的小游戏

上代码

//加载类库
//加载生成随机数的类
import java.util.Random;
//加载用户输入的库
import java.util.Scanner;
//主类
public class GuessNumber {
    static Scanner scanf = new Scanner(System.in);
    static Random  random  = new Random();
    //主体函数
    public static void main(String[] args)
    {
    //定义变量a;
        int a;
        do {
        //用a来接收方法menu()的返回值
            a = menu();
            //如果选择开始游戏则继续执行
            if (a == 1)
            {
            //定义变量b,来接受方法diffcult()的返回值
                int b = diffcult();
                game(b);
            }

        }while(a == 0);
    }
    //菜单函数menu
    public static int menu()
    {
        System.out.println("###################");
        System.out.println("#####猜数字小游戏####");
        System.out.println("#####1.开始游戏#####");
        System.out.println("#####0.退出游戏#####");
        System.out.println("###################");
        //用户输入操作
        int userInput  = scanf.nextInt();
        //将用户输入的值作为方法的返回值
        return userInput;
    }
    //    难度菜单
    //    通过判断用户的操作,将不同难度的猜数的次数作为方法的返回值
    public static int diffcult()
    {
        System.out.println("###################");
        System.out.println("######难度选择######");
        System.out.println("######1.简单#######");
        System.out.println("######2.容易#######");
        System.out.println("######3.困难#######");
        int userInput = scanf.nextInt();
        int count;
        switch (userInput)
        {
            case 1:
                count = 20;
                break;
            case 2:
                count = 10;
                break;
            case 3:
                count = 5;
                break;
            default:
                count = 10;
        }
        System.out.println("您一共有" + count +"次机会:");
        return count;
    }
    // 游戏方法
    //执行游戏开始后的各种逻辑
    public static void game(int count)
    {
        int r = random.nextInt(100);
        while(scanf.hasNextInt()){
            if (count == 1)
            {
                System.out.println("您的次数已用尽,游戏结束!");
                break;
            }
            //用户输入猜的数字
            int userNumber = scanf.nextInt();
            //
            if(userNumber == r)
            {
                System.out.println("恭喜你:您猜对了");
                break;
            }
            else if(userNumber > r)
            {
                System.out.println("猜大了!请重新输入:");
                count --;
            }
            else if(userNumber < r)
            {
                System.out.println("猜小了!请重新输入:");
                count --;
            }
        }
    }
}

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

友人和他的朋友们

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值