gpt4 book ai didi

java - Java 循环中的用户输入和求和问题

转载 作者:行者123 更新时间:2023-12-02 04:55:00 25 4
gpt4 key购买 nike

在开始之前,我要感谢大家的帮助。我建议不要给我代码,而是指出错误所在。谢谢!

过去几个小时我一直在试图解决这个问题,但我似乎看不出我哪里出了问题。我试图继续要求用户输入,直到用户输入 -1,这是哨兵值。输入哨兵值后,程序显示用户输入的整数及其总和。由于我不知道的原因,打印的值只有 -1 并且总和完全关闭。这是我的代码:

import java.util.Scanner;

public class UserSum
{
public static void main(String args[])
{
//prompt user to enter numbers
Scanner userInput = new Scanner(System.in);
System.out.print("Enter positive integers. Enter -1 to stop. ");
int integers = userInput.nextInt();

//sum is initially set to 0
int sum = 0;

//execute commands as long as the input does not equal -1
while(integers != -1)
{
//keep gathering user input
integers = userInput.nextInt();
sum += integers;
}

//print the results to the user
System.out.println("You entered: " + integers + ", ");
System.out.println("Sum is: " + sum);
}
}

最佳答案

总和值输出不正确的原因是您在添加总和之前读入了两个输入。一次读取完全在 while 循环之前完成,另一次读取在 while 循环中添加总和之前完成。您输入的第一个值永远不会保存在总和中。

尝试实现类似于下面方法的东西...

int sum = 0;
int value = 0;

while (value != -1) {
sum += value;
value = input.nextInt();
sysout(value);
}

sysout(sum);

关于java - Java 循环中的用户输入和求和问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28865811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com