当前位置: 代码迷 >> Java相关 >> 刚学JAVA奉上【猜谜小游戏】
  详细解决方案

刚学JAVA奉上【猜谜小游戏】

热度:330   发布时间:2012-05-16 19:14:24.0
刚学JAVA奉上【猜谜小游戏】
程序代码:

import java.util.*;

public class GuessNumber {
    public static void main(String[] args) {
      
        boolean derail = true;            //开关变量1
        boolean flag = true;            //开关变量2
        int count = 10;                    //猜测次数
        int point = 100;                //用户游戏得分
        int result = getRandom(100);    //随机产生100以内的整数
      
        while(derail){
            System.out.print("请输入 1 开始游戏,输入 0 结束游戏,");
            int state = Integer.parseInt(Input(type.tyint).toString());
           
            if(state==1){
                System.out.print("游戏开始,幸运数字以产生,快来猜猜看吧,");
                //循环体开始
                while (flag) {
                    if(count!=0){

                        //获取用户输入的数据
                        int number = Integer.parseInt(Input(type.tyint).toString());
                       
                        if(result==number){
                            System.out.println("--------------------");
                            System.out.println("回答正确,恭喜游戏过关!");
                            System.out.println("您共使用了 "+(10-count)+"次机会,得到了 "+point+" 点分数");
                            System.out.println("--------------------");
                            flag = false;        //数据初始化
                            count = 10;            //数据初始化
                            point = 100;        //数据初始化
                        }else if(number > result){
                            count--;
                            point=point-10;
                            System.out.println("数字过大,您还有 " + count + " 机会!");
                        }else if(number < result){
                            count--;
                            point=point-10;
                            System.out.println("数字过小,您还有 " + count + " 机会!");
                        }
                    }else{
                        System.out.println("很遗憾你的猜测次数已用完,请重新开始游戏!\n----------------------------------------------");
                        flag = false;        //数据初始化
                        count = 10;            //数据初始化
                        point = 100;        //数据初始化
                    }
                  
                }
               
            }else if(state==0){
                System.out.print("游戏退出!");
                derail = false;
            }
        }
      
      
      
    }
   
   
    /**
     * 随机产生scope值以内的整数
     * int scope:范围值
     * 例:getRandom(10)--->产生10以内的随机数
     *
*/
    public static int getRandom(int scope){
        int result = 0;
        return result = (int)(Math.random() * scope);
    }
   
   
    /**
     * 这是一个保存类型的枚举
     *
*/
    enum type{tyint,tyString,tyshort,tylong,tybyte,tyfloat,tydouble,tyboolean};
   
    /**
     * 万能输入,只要将参数选择为自己想要的输入类型,本函数就能返回你想要的数据类型
     * 输入函数,调用此方法会提示用户输入数据,并返回用想要的类型的数据
     *
*/
    public static Object Input(type ty){
        System.out.println("请输入数据:");
        Scanner scan = new Scanner(System.in);
      
        Object result = null;
      
        switch (ty) {
            case tyint:{
                result = scan.nextInt();
            }break;
            case tyString:{
                result = scan.next();
            }break;
            case tyshort:{
                result = scan.nextShort();
            }break;
            case tylong:{
                result = scan.nextLong();
            }break;
            case tybyte:{
                result = scan.nextByte();
            }break;
            case tyfloat:{
                result = scan.nextInt();
            }break;
            case tydouble:{
                result = scan.nextDouble();
            }break;
            case tyboolean:{
                result = scan.nextBoolean();
            }break;
            default:{
                System.out.print("数据有误!");
            }break;
        }
      
        return result;
    }
}
搜索更多相关的解决方案: 小游戏  学JAVA  

----------------解决方案--------------------------------------------------------
不错不错
----------------解决方案--------------------------------------------------------
小赞一个!!我还不会这种编程技术呢!!请多多指教!!
----------------解决方案--------------------------------------------------------
不错,不过有点问题啊,我运行之后发现会出现死循环的,第一次猜中之后就死了争取改进下
----------------解决方案--------------------------------------------------------
那个“state”变量,游戏一开始就为”1“。所以一直输出“游戏开始,幸运数字以产生,快来猜猜看吧”
----------------解决方案--------------------------------------------------------
"state"变量在变一个数,
----------------解决方案--------------------------------------------------------
  相关解决方案