猜数字大小的游戏
######程序随机生成一个数,然后根据提示猜测数字,总共有五次机会,用完为止,游戏结束之后可以选择继续或者退出
- 有用到递归
- 循环
- 判断
- 模块化的代码
import com.sun.deploy.security.SelectableSecurityManager;
import com.sun.xml.internal.ws.runtime.config.TubelineFeatureReader;
import sun.font.TrueTypeFont;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
System.out.println("这是一个猜数字大小的游戏,你总共有五次机会!");
temp();
while (true){
Scanner sc = new Scanner(System.in);
System.out.println("你还想继续游戏吗?");
System.out.println("——>继续(输入:1)");
System.out.println("——>退出(输入:2)");
System.out.print("请选择:");
int t = sc.nextInt();
if(t==1){
System.out.println("————>游戏继续!");
temp();
}
else if (t==2){
System.out.println("游戏结束!");
break;
}
}
}
private static void temp() {
int b = (int)(Math.random()*10);
System.out.println("答案是"+b);
System.out.println("请输入一个1~10的数:");
int c=4;
while (true) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if(a!=b&&c<=4&&c>0){
print(a,b);
System.out.print("(剩余"+c+"次机会!):");
System.out.println();
}
else if(a!=b&&c==0){
System.out.println("对不起挑战失败!答案是"+b);
break;
}
else if(a==b){
System.out.println("恭喜你回答正确!答案是"+b);
if(c==4){
System.out.println("运气太好了,第一次就回答正确!");
}
break;
}
c--;
}
}
private static void print(int a,int b) {
if(a>0&&a<11){
switch (a-b){
case -9:
case -8:
case -7: System.out.print("你猜的太小了,往大了猜");
break;
case -6:
case -5:
case -4:System.out.print("有点小,往大了猜");
break;
case -3:
case -2:
case -1: System.out.print("快接近了,往大了猜");
break;
case 9:
case 8:
case 7: System.out.print("你猜的太大了,往小了猜");
break;
case 6:
case 5:
case 4: System.out.print("有点大,往小了猜");
break;
case 3:
case 2:
case 1: System.out.print("快接近了,往小了猜");
break;
}
}
else{
System.out.print("数字不合法!重新输入");
}
}
}
提示答案的部分可自行删除