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]