java-循环-猜数字小游戏

猜数字游戏是一个经典的计算机游戏,玩家需要猜测一个由程序生成的随机数,程序根据玩家的猜测回应提示“太高了”、“太低了”或“猜对了”。下面是一个使用Java实现的猜数字游戏,包括详细的代码说明。
```java
import java.util.Scanner;
import java.util.Random;
public class GuessNumberGame {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        Random random = new Random();
        int numberToGuess = random.nextInt(100) + 1; // 生成1到100之间的随机数
        int numberOfTries = 0; // 记录玩家尝试的次数
        boolean hasGuessedCorrectly = false; // 记录玩家是否已经猜对
        System.out.println("欢迎来到猜数字游戏!请输入一个1到100之间的整数:");
        while (!hasGuessedCorrectly) {
            // 获取玩家输入的猜测数字
            System.out.print("请输入你的猜测:");
            int playerGuess = scanner.nextInt();
            numberOfTries++; // 增加尝试次数
            // 检查玩家的猜测
            if (playerGuess < 1 || playerGuess > 100) {
                System.out.println("无效的输入!请输入一个1到100之间的整数。");
            } else if (playerGuess < numberToGuess) {
                System.out.println("太高了!");
            } else if (playerGuess > numberToGuess) {
                System.out.println("太低了!");
            } else {
                hasGuessedCorrectly = true; // 猜对了,跳出循环
                System.out.println("恭喜你,猜对了!数字就是 " + numberToGuess);
                System.out.println("你总共尝试了 " + numberOfTries + " 次。");
            }
        }
        scanner.close();
    }
}
```
接下来,我将对代码进行详细解释。
首先,我们导入了`java.util.Scanner`和`java.util.Random`两个类。`Scanner`类用于从控制台读取玩家的输入,`Random`类用于生成随机数。
```java
import java.util.Scanner;
import java.util.Random;
```
然后,我们定义了`main`方法,这是程序的入口点。在`main`方法中,我们创建了一个`Scanner`对象用于读取输入,创建了一个`Random`对象用于生成随机数。
```java
public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    Random random = new Random();
```
接下来,我们生成了一个1到100之间的随机数作为要猜的数字,并初始化了尝试次数和是否猜对的标志。
```java
    int numberToGuess = random.nextInt(100) + 1;
    int numberOfTries = 0;
    boolean hasGuessedCorrectly = false;
```
然后,我们打印欢迎信息,并进入一个循环,让玩家输入猜测的数字。在循环中,我们使用`scanner.nextInt()`方法读取玩家输入的整数。
```java
    System.out.println("欢迎来到猜数字游戏!请输入一个1到100之间的整数:");
    while (!hasGuessedCorrectly) {
        // 获取玩家输入的猜测数字
        System.out.print("请输入你的猜测:");
        int playerGuess = scanner.nextInt();
        numberOfTries++;
```
接下来,我们检查玩家的猜测是否在1到100之间。如果不在,我们提示玩家输入一个有效的数字。如果玩家输入的数字不正确,我们给出“太高了”或“太低了”的提示。如果玩家猜对了数字,我们设置`hasGuessedCorrectly`为`true`,并跳出循环。
```java
        // 检查玩家的猜测
        if (playerGuess < 1 || playerGuess > 100) {
            System.out.println("无效的输入!请输入一个1到100之间的整数。");
        } else if (playerGuess < numberTo

```
        } else if (playerGuess < numberToGuess) {
            System.out.println("太高了!");
        } else if (playerGuess > numberToGuess) {
            System.out.println("太低了!");
        } else {
            hasGuessedCorrectly = true;
            System.out.println("恭喜你,猜对了!数字就是 " + numberToGuess);
            System.out.println("你总共尝试了 " + numberOfTries + " 次。");
        }
    }
    scanner.close();
}
```
在上述代码中,我们使用了一个`while`循环来重复提示玩家猜测数字,直到猜对为止。循环的条件是`!hasGuessedCorrectly`,即玩家还没有猜对。
在每个循环迭代中,我们使用`scanner.nextInt()`来读取玩家输入的猜测数字。然后,我们通过一系列`if-else`语句来判断玩家的猜测是否正确,并给出相应的提示。
如果玩家猜的数字比目标数字小,我们打印“太高了!”;如果玩家猜的数字比目标数字大,我们打印“太低了!”;如果玩家猜的数字与目标数字相等,我们打印恭喜信息,并结束游戏。
最后,我们使用`scanner.close()`来关闭`Scanner`对象,以避免资源泄漏。
这个简单的猜数字游戏展示了Java编程的基本结构,包括循环、条件语句、输入输出等。通过这个例子,玩家可以体验到基本的编程逻辑,并了解如何使用Java编写一个简单的交互式程序。
希望这份代码和解释能够帮助你理解Java编程,并为你提供一个有趣的编程实践。如果你有任何问题或需要进一步的解释,请随时提问。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值