7. 扩展6中游戏功能,提供3次猜数机会。 15分 输入的数字不是1-6的进行异常处理,提示:“输入数据不合法,请重新输入:” 3次内猜中,输出“恭喜猜对”; 3次内,猜错提示:“猜大了(小了),还有几次(2次,1次)机会,请继续猜:” 错误超过3次,输出;“游戏结束!”
时间: 2024-03-28 10:41:33 浏览: 44
以下是扩展后的代码实现:
```java
import java.util.Random;
import java.util.Scanner;
public class GuessingGame {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Random random = new Random();
int target = random.nextInt(6) + 1;
int chances = 3;
System.out.println("欢迎参加猜数游戏!请猜一个1到6之间的数字,您有3次机会。");
while (chances > 0) {
System.out.print("请输入您猜测的数字:");
int guess = scanner.nextInt();
if (guess < 1 || guess > 6) {
System.out.println("输入数据不合法,请重新输入:");
continue;
}
if (guess == target) {
System.out.println("恭喜猜对!");
return;
} else {
chances--;
if (chances > 0) {
System.out.println("猜" + (guess > target ? "大了" : "小了") + ",还有" + chances + "次机会,请继续猜:");
} else {
System.out.println("游戏结束!");
}
}
}
}
}
```
在原有的代码基础上,添加了一个循环来提供3次猜数机会。同时,在输入数字不合法时,使用`continue`语句跳过本次循环,重新获取用户输入。在猜错时,判断剩余机会次数,若还有机会则输出“猜大了/小了,还有几次机会,请继续猜”,否则输出“游戏结束!”。
阅读全文