dongfang1017 发表于 2009-6-18 20:46:59

java 写的猜数字小游戏源码

import java.io.*;
public class Game{
// 猜数的机会次数
public int chance;

private BufferedReader in
   = new BufferedReader(new InputStreamReader(System.in));
// 开始界面
public void JieMian(){
System.out.println("--------------欢迎使用--------------");
System.out.println("1:高级3次2:中级 5次3:初级10次");

}
//从键盘输入 返回一个 数字
public int Choice(){
String choice="";
int mm=0;
try{

choice = in.readLine();
mm = Integer.parseInt(choice);

}catch(Exception e){
   //e.printStackTrace();
   System.out.println("你输入的不是一个数字");
}
return mm;
}
//随机函数 返回一个 1--99 之间的一个整数
public int suiJi(){
int a = (int)((Math.random()*99)+1);
return a;
}
//开始游戏input 为键盘输入的数字
public void start(int a){
int i=0,suiji = a;


while(i<chance){
   System.out.println("请输入一个 1--99 之间的任意一个数:");
   int input = this.Choice();
   //判断输入是否 符合要求
   while(input <1 || input>100 ) {
    System.out.println("输入不符合要求请输入一个 1--99 之间的         任意一个数:");
    input = this.Choice();
   }
   
   if (input>suiji) {
    System.out.println("比正确值大了");
   }
   else if(input <suiji) {
    System.out.println("比正确值小了");
   }
   else {
   System.out.println("good !!you guess it !!");
   break;
   }
   i++;
   if(chance-i==0){
    System.out.println("你已经没有机会了");
   }else{
   
    System.out.println("你还有 "+(chance-i)+"次机会");
   }
}
System.out.println("正确答案是:"+suiji);
if (i==chance) {
   System.out.println("game over");
}
}
//进入游戏
public void open(){
//aa 为 选择的难度count为控制条件 不为0时退出游戏   
int count=1,aa;
this.JieMian();
while(count==1){
   
   System.out.println("请选择级别:");
   aa=this.Choice();
   //根据难度aa分配猜数机会次数chance
   switch(aa){
    case 1: chance = 3;
   System.out.println("你选择的是高难度的");
   break;
    case 2: chance = 5;
   System.out.println("你选择的是中等难度的");
   break;
    case 3: chance = 10;
   System.out.println("你选择的是普通难度的");
   break;
    default: System.out.println("你输入有误 !!请输入 1 到3 的一个整数");
   break;
   }
   if (aa>0 && aa<4){
    System.out.println("你有"+chance+"次机会!!");
    this.start(this.suiJi());
   }
   
   System.out.println("你输入 1 再来一次输入其他 退出");
   count = this.Choice();
      
}
}
public static void main(String []args){
Game g = new Game();
g.open();

}
}
页: [1]
查看完整版本: java 写的猜数字小游戏源码