Java嵌套循环:缩进文本

时间:2016-04-19 02:56:58

标签: java loops nested

有人可以帮我解决这个问题吗?

打印数字0,1,2,...,userNum,如图所示,每个数字缩进该空格数。对于每个打印行,打印前导空格,然后打印数字,然后打印换行符。提示:使用i和j作为循环变量(显式初始化i和j)。注意:在打印的数字后避免使用任何其他空格,例如空格。例如:userNum = 3打印:

给出的代码如下:

public class NestedLoop {

public static void main (String [] args) {

  int userNum  = 0;
  int i = 0;
  int j = 0;

  /* Your solution goes here  */

  return;
}
}

任何建议将不胜感激。谢谢。

4 个答案:

答案 0 :(得分:1)

这有点晚了,但我在学校的zybook中也遇到了同样的挑战。上面标记为Solved的代码有点差。使用该代码在迭代的开始处放置一个空格,因此它看起来应更像这样,以便“空白”没有区别,并且因为在主字符串中已经定义了“ int i”和“ int j” ... < / p>

for (i = 0; i < userNum; i++) {
   for (j = 1; j < i; j++) {
      System.out.print(" ");
   }
   System.out.println(i);
}

从“ i”和“ j”中删除“ int”,因为它们已在您的主字符串中定义。您还必须使“ j = 1”,否则它将在0之前放置一个空格,这会有一个空格差。希望这对遇到此挑战的其他人有所帮助。

答案 1 :(得分:0)

我不认为ij在这个意义上是必要的......

for (int i = 0; i <= userNum; i++) {
    for (int j = 0; j < i; j++) {
        System.out.print(" ");
    }
    System.out.println(i);
}

答案 2 :(得分:0)

for (i = 0; i <= userNum; i++) {
    for (j = 0; j < i; j++) {
            System.out.print(" ");  
         }
         System.out.println(i);
      }

答案 3 :(得分:0)

所以我实际上在 zybooks 中运行了上面的代码,但它们不起作用,因为关系运算符不包含 userNum,这会导致结果被丢弃。

试试这个:

  for (i = 0; i <= userNum; ++i) {
   for (j = 1; j <= i; ++j) {
     System.out.print(" ");
   }
   System.out.println(i);
}