为了账号安全,请及时绑定邮箱和手机立即绑定

获取用户输入计数

获取用户输入计数

一只萌萌小番薯 2023-03-09 10:21:46
我正在编写一个程序,其中随机方法生成一个介于 1 和 100 之间的随机数,然后用户猜测这个数字是什么。到目前为止,我构建的代码中的所有内容都运行良好,除了程序还计算用户猜测尝试次数的部分。我知道如何获取用户尝试计数的一般思路:创建一个计数跟踪变量,然后在每次用户输入时递增它。现在无论我如何或在何处应用计数跟踪变量,用户尝试次数始终为 2,即使实际尝试次数要多得多。我用谷歌搜索了这个问题,并从结果中尝试了不同的想法(例如:将 count++ 放入每个“if/else”语句中),但没有任何效果。谁能说出我的代码有什么问题,以及为什么它总是显示 2 作为用户尝试次数?预先感谢您的任何帮助。System.out.println("Enter a number between 0 and 100: ");int randomDigit = (0 + (int) (Math.random() * 101));while (true) {    Scanner scr = new Scanner(System.in);    int guess = scr.nextInt();    int guessCount = 0;    guessCount++;    guessCount = guessCount + 1;    if ((guess < 0) || (guess > 100)) {        System.out.println("You entered an invalid number. \nPlease enter a valid number.");    } else if (guess > randomDigit) {        System.out.println("Your guess is too high. \nPlease enter another guess.");    } else if (guess < randomDigit) {        System.out.println("Your guess is too low. \nPlease enter another guess.");    } else if (guess == randomDigit) {        System.out.println("Congradulations, you found the number!      It is " + randomDigit                + ".\nThe number of attempts it took you to guess the correct answer is: " + guessCount + ".");        break;    }}上面的代码总是有 2 作为用户尝试的次数。
查看完整描述

1 回答

?
开满天机

TA贡献1786条经验 获得超13个赞

移动这一行:int guessCount = 0; 在循环之外,因为您不断重复变量的初始化,因此实际上并没有计算它。当您使用计数器时,请始终在 while/for 循环之外定义它。祝你好运



查看完整回答
反对 回复 2023-03-09
  • 1 回答
  • 0 关注
  • 80 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信