A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

ZZH11314111

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© ZZH11314111 初级黑马   /  2019-3-29 20:19  /  1374 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*猜数字游戏,要求:
        *   1.随机生成1-100的一个随机数
        *   2.通过键盘数一个数与随机数进行比较,如果大了,提示猜大了;如果小了,提示猜小了;
        *   如果猜对了提示猜对了并退出游戏
        *   3.规定一个次数,要求猜的次数不能大于规定的次数,如果超过,提示游戏结束并退出
*/
public class GuessNumber {
    public static void main(String[] args) {
     
        //定义变量
        int n = 5;//保存剩余次数
        int m = 5;//保存总共的次数
        int i = 1;//保存当前使用的次数
        Random r = new Random();//生成一个随机数
        int num = r.nextInt(100)+1;//生成一个1-100的随机数赋值给num变量
        int guessnumber;//保存键盘输入的数字


        //输入一个数字
        System.out.println("猜数字游戏,共" + m + "次机会,游戏开始!");
        Scanner sc = new Scanner(System.in);
        System.out.println("请猜1-100中的一个数");

        //通过采用do-while循环进行比较
        do {
            System.out.println("请输入您要猜的数字:");
            guessnumber = sc.nextInt();//键盘输入并赋值给guessnumber变量
            //将键盘输入的值与随机生成的值进行比较
            if (guessnumber > num) {
                System.out.println("猜大了,请重试!");
            } else if (guessnumber < num) {
                System.out.println("猜小了,请重试!");
            } else {
                //猜中,游戏结束
                System.out.println("恭喜!猜对了");
                System.out.println("游戏结束");
            }

            i++;//当前猜的次数+1
            if (guessnumber != num) {
                if (i > m) { //当当前的次数大于总共的次数时,输出游戏失败并退出
                    System.out.println("次数用尽!游戏失败!!!");
                    System.out.println("游戏结束");
                    return;
                }
            }

            //当没猜中时,输出剩余次数
            if (guessnumber != num) {
                --n;//每使用一次后次数减一
                System.out.println("剩余次数:" + n);
            }

        } while (guessnumber != num);//当输入的数字与随机生成的数字不同时,继续执行
    }

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马