【问题标题】:Java - Incrementing Numbers using for loopJava - 使用 for 循环递增数字
【发布时间】:2016-02-06 19:48:04
【问题描述】:

我已尝试完成以下练习,但输出与预期不符。

您应该打印与用户输入的数字相等的加号,然后是数字列表,这样总共可以打印 20 个字符。打印的数字应该是列表中当前位置的最后一位。示例:如果用户输入的数字是 5,则 +++++678901234567890。

这是我的代码:

package interact;

import java.util.Scanner;

public class Interact {


    public static void main(String[] args) {



        Scanner scanner = new Scanner (System.in);

            {int value,k
            for (int i=0; i<num1; i++) {
                System.out.print("+");}


                        for (int j=0; j<20-num1; j++) {

                            if (num1>9) {k=num1-10;}

                            else k=num1+1;
                            System.out.print(k);

                }

}

如果输入 6,则输出为 ++++++77777777777777。数字没有增加——为什么不呢?

【问题讨论】:

标签: java if-statement for-loop while-loop increment


【解决方案1】:

您没有增加 k 或 num1,因此 k 成为用户输入的任何数字 + 1,并继续打印出来。您需要更新 k。首先设置 k=num1。然后将循环更改为:

if (k>9) {k=0;}
    else k++;
    System.out.print(k);

【讨论】:

    【解决方案2】:

    因为,你的 num1 在下面的循环中保持不变。

    for (int j=0; j<20-num1; j++) {
    
                    if (num1>9) {k=num1-10;}
    
                    else k=num1+1;
                    System.out.print(k);
    
        }
    

    但如果你这样做,它会起作用的

               k=num1+1;
           for (int j=0; j<20-num1; j++) {
                        if (k>9) {k=0;}
                        System.out.print(k);
                        k++;
    
            }
    

    【讨论】:

      【解决方案3】:

      这应该会为您解决问题 :) 我可以回答您对修改提出的任何问题:) 祝你好运:)

      int value, k;
      
              for (int i = 0; i < num1; i++) {
                  System.out.print("+");
              }
      
              k=num1;
      
              for (int j = 0; j < 20 - num1; j++) {
      
                  if (k >= 9) {
                      k = 0;
                  }
      
                  else
                      k++;
                  System.out.print(k);
      
              }
      

      【讨论】:

      • 确实有效,但是当计数器超过 9 时,计数器应该返回 01234 而不是两位数:/
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-31
      • 1970-01-01
      • 2019-01-17
      • 1970-01-01
      相关资源
      最近更新 更多