如何让玩家自定义猜数字次数,以玩家自定义的猜测次数进行循环游戏。qiu完整代码,尽量简单一点
import java.util.Random;
import java.util.Scanner;
public class User {
public static void main(String[] args) {
{
Scanner a = new Scanner(System.in);//实例化一个输入流对象
Random ran = new Random();//实例化随机对象
System.out.println("欢迎进入猜数字游戏,祝你玩的愉快");
System.out.println("请输入猜数次数:");
int num=a.nextInt();
int b = ran.nextInt(100) + 1;//随机生成一个整数作为猜的答案
int i;
for (i = 0; i < num;i++) {
System.out.println("请输入一个整数:");
if (a.hasNextInt()) {
var c = a.nextInt();
if (c < b) {//判断c是否小于答案,如果是就输出下面这段话
System.out.printf("太小了,还剩%2d次机会", num-1- i);
System.out.println();
} else if (c > b) {//判断c是否大于答案,如果是就输出下面这段话
System.out.printf("太大了,还剩%2d次机会", num-1-i);
System.out.println();
} else {//否则就是等于答案
System.out.println("恭喜你,猜对了");
System.out.println("游戏结束,获胜");
break;
}
}
}
if (i == num) {
System.out.println("游戏结束,失败");
}
}
}
}
import java.util.Scanner;
public class Number {
//getRandNum函数用来生成并返回随机数
public int getRandNum(){
int randNum=(int)(Math.random()*100);//random函数生成0-1的随机数,乘100扩大随机数范围
System.out.println(randNum);//作弊测试用的
return randNum;
}
//getUsrNum函数让用户输入数字
public int getUsrNum(){
System.out.println("请输入一个数字:");
Scanner usrNum =new Scanner(System.in);
int input=usrNum.nextInt();
System.out.println("你输入的数字为:"+input);
return input;
}
}
class Test{
public static void main(String[] args){
Number num = new Number();
int count =1;//用来记录猜数字的最大次数,初始为一次
int system =num.getRandNum();//第一次获取随机数
int usr = num.getUsrNum();//第一次对用户输入初始化
//如果猜的数字和随机数不一样并且次数不大于五次则继续猜
while(usr!=system&&count<5){
if(usr>system){
System.out.println("猜大了!继续猜!");//如果用户输入大于随机数
usr = num.getUsrNum();
}else {
System.out.println("猜小了!继续猜!");//如果用户输入小于随机数
usr = num.getUsrNum();
}
count++;
}
//如果相等,则赢了,不然就是另一种情况count==5,机会耗尽则失败。
if(usr==system){
System.out.println("随机数是:"+system+",你猜测的是:"+usr+",你赢了!!");
}else{
System.out.println("随机数是:"+system+",你猜测的是:"+usr+",你输了!!");
}
}
}
关于该问题,我找了一篇非常好的博客,你可以看看是否有帮助,链接:java实现猜数字小游戏