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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

想得不可得

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

import java.util.Random;
import java.util.Scanner;

public class Test {
    private static Scanner scan = new Scanner(System.in);
    public static void main(String[] args){
        homePage();
    }

    //猜数字游戏首页
    public static void guessingNumPage(){
        System.out.println("欢迎来到猜数字小游戏!");
        guessingNum();//调用小游戏
    }
    //猜数字的小游戏
    public static void guessingNum(){
        Random ran = new Random();
        System.out.println("游戏开始!");
        int ranNum = ran.nextInt(101);//生成一个0-100的随机数
        System.out.println("请输入0-100的数字(-1退出):");
        int count = 1;
        while(true){
            int input = scan.nextInt();//重复接收
            if(input==-1){
                System.out.println("欢迎下次光临");
                break;
            }else if(input==ranNum){
                System.out.println("恭喜您,猜对了!您一共猜了"+count+"次");
                select1();//小游戏选择页
                break;
            }else if(input>ranNum){
                System.out.println("猜大了哦,您离成功只差一步了:");
                count++;
            }else if(input<ranNum){
                System.out.println("嘿嘿,猜小了呢!这个数字到底是多少呢:");
                count++;
            }
        }
    }

    /*九九乘法表*/
    public static void multiplicationTable(){
        System.out.print("九九乘法表:");
        for(int i=1;i<10;i++){
            for (int j=1;j<i;j++){
                System.out.print(j+"*"+i+"="+j*i+"\t");
            }
            System.out.println();
        }
        select();
    }

    /*查看1-999的水仙花数
    所谓水仙花数就是指一个n位数(n>=3),他的每个位上的数字的n次幂之和等于它本身
    三位数的水仙花数只有四个153,370,371,407*/
    public static void narcissus(){
        System.out.print("1-999的水仙花数:");
        for(int i=1;i<10;i++){
            for(int j=0;j<10;j++){
                for(int k=0;k<10;k++){
                    if((i*i*i+j*j*j+k*k*k)==(i*100+j*10+k)){
                        System.out.print(i*100+j*10+k+" ");
                    }
                }
            }
        }
        select();
    }

    //主页,选项页
    public static void homePage(){
        System.out.println("请输入以下选项:");
        System.out.println("1.获取0-999的水仙花数");
        System.out.println("2.打印九九乘法表");
        System.out.println("3.猜数字小游戏");
        System.out.println("4.退出");
        int input = scan.nextInt();
        switch (input){
            case 1://0-999的水仙花数
                narcissus();
                break;
            case 2://九九乘法表
                multiplicationTable();
                break;
            case 3://猜数字
                guessingNum();
                break;
            case 4://退出
                System.out.println("欢迎下次光临!");
                break;
            default:
                System.out.print("您输入的选项有误");
                homePage();
        }
    }

    //猜数字游戏选择
    public static void select1(){
        System.out.println("请问是否继续?");
        System.out.print("0.退出  ");
        System.out.print("1.继续  ");
        System.out.println("2.返回首页");
        int input = scan.nextInt();
        switch (input){
            case 0:
                System.out.println("欢迎下次光临!!!");
                break;
            case 1:
                guessingNum();
                break;
            case 2:
                homePage();
                break;
            default:
                System.out.print("您输入的选项有误,");
                select1();
        }
    }

    //操作完成后的选项页:
    public static void select(){
        System.out.println("请输入以下选项:");
        System.out.println("1.返回首页");
        System.out.println("2.退出");
        int input = scan.nextInt();
        switch(input){
            case 1:
                homePage();
                break;
            case 2:
                System.out.println("期待您的下次操作");
                break;
            default:
                System.out.print("您输入的选项有误");
                select();
        }
    }
}

0 个回复

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