首页 文章

需要循环重复用户输入的次数

提问于
浏览
2

我需要帮助完成这项任务 . **这是我需要该程序:

编写一个程序,提示用户进行多次迭代 . 然后该程序应循环多次 . 每个循环程序都应该提示用户输入一个数字并将其添加到运行总计中 . 完成后打印运行总计 .

我不能让程序循环多次,因为用户输入 . 我知道这是一个简单的修复,但我似乎无法弄明白 . 我在循环中使用了错误的语句吗?

Scanner guess = new Scanner(System.in);

int count =0;
int sum=0;
int num;

System.out.println("Enter a number");
num = guess.nextInt();

for(count =0; count <= num; count++)
{
    sum +=num;
    System.out.println("Your results are:"+sum);
}

2 回答

  • 5

    如果你从0开始,那么你会想要改变

    for(count =0; count <= num; count++)
    

    for(count =0; count < num; count++)
    

    因为它从0开始,所以这是第一次迭代,1是第二次,等等 .

    此外,您需要每次都询问用户 . 所以你想在循环中做这样的事情:

    sum += guess.nextInt();
    

    最后,您不希望每次都打印总和,只是在END . 因此,在循环之后,打印总和 .

    你可能认为让 sum += num 会要求用户提供另一个号码,但num只是用户输入的第一个号码(它每次迭代都赢得了't change). You need to get the user'输入 .

  • 1

    您正在使用 <= ,您应该在 for 语句中使用 < ,否则您将绕过循环一次或多次;并且您应该提示在循环内添加数字,并包含相应的代码以跟踪那里的运行总和 .

    像这样的东西:

    Scanner guess = new Scanner(System.in);
    
    int count =0;
    int sum=0;
    int num, N;
    
    System.out.println("How many numbers will you enter?");
    N = guess.nextInt();
    
    for(count =0; count < N; count++)
    {
        System.out.println("Enter a number");
        num = guess.nextInt();
        sum +=num;
    }
    
        System.out.println("The sum of the numbers entered is:"+sum);
    

相关问题