使用java猜数字游戏:系统随机生成1个50以内的数字,你共有5次机会,如果猜大了、猜小了或猜的数字不在0-50之间或者输入的不是数字都会有提示。编写程序,实现猜数字游戏的功能。
时间: 2023-05-29 20:02:12 浏览: 562
以下是一个简单的猜数字游戏的Java实现:
```
import java.util.Scanner;
public class GuessNumberGame {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int numberToGuess = (int) (Math.random() * 50) + 1;
int guessCount = 5;
System.out.println("欢迎来到猜数字游戏!");
System.out.println("系统已经随机生成了一个 1 到 50 之间的数字,请开始猜测:");
while (guessCount > 0) {
System.out.println("你还剩下 " + guessCount + " 次猜测机会。");
System.out.print("请输入一个 1 到 50 之间的整数:");
String input = scanner.nextLine();
int guess;
try {
guess = Integer.parseInt(input);
} catch (NumberFormatException e) {
System.out.println("输入的不是数字,请重新输入。");
continue;
}
if (guess < 1 || guess > 50) {
System.out.println("输入的数字不在 1 到 50 之间,请重新输入。");
continue;
}
if (guess == numberToGuess) {
System.out.println("恭喜你,猜对了!");
return;
} else if (guess > numberToGuess) {
System.out.println("猜大了,请重新猜测。");
} else {
System.out.println("猜小了,请重新猜测。");
}
guessCount--;
}
System.out.println("很遗憾,你没有猜对。正确的数字是 " + numberToGuess + "。");
}
}
```
程序首先生成一个1到50之间的随机整数作为正确答案。然后进入一个循环,每次循环中打印出剩余的猜测机会数,并提示用户输入一个1到50之间的整数。
程序使用Java的Scanner类读取用户输入,并将输入转换为整数。如果输入不是数字,则打印出错误提示,并重新开始下一次循环。如果输入不在1到50之间,程序也会打印出错误提示,并重新开始下一次循环。
如果用户猜对了,程序打印出恭喜信息,并结束。如果用户没有猜对,则在剩余猜测机会用尽后打印出正确答案。