将for循环的示例转换为while循环

时间:2018-05-03 15:53:58

标签: java loops while-loop

我刚刚开始编写java代码,我找到了一个嵌套循环的示例,然后要求将其转换为while语句。我正在努力弄清楚如何转换它以使输出相同,任何对此的帮助都将非常感激。

public static void main(String[] args) {

   for (int j = 0; j < 10; j++) {

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

这是我尝试后得到的,但我的输出仍然格式不正确。

    int j = 0;
    while (j < 10) { 
        j++;

        int i = j;
        while (i < 10) {
            i++;

            if (i == j) {

                int k = 0;
                    while(k < 10) {
                    k--;

                System.out.print(" ");
                }   
            }
            System.out.print(" " + j);
        }
        System.out.println();
    }
}

1 个答案:

答案 0 :(得分:0)

你太近了!

1。while(k<10) should be while(k

  1. 将增量移动到循环的底部而不是顶部。

  2. while(k<j)循环中,您应该打印出两个空格而不是一个。

  3. 代码:

            int j = 0;
            while (j < 10) { 
    
    
                int i = j;
                while (i < 10) {
    
    
                    if (i == j) {
    
                        int k = 0;
                        while(k < j) {
    
                            System.out.print("  ");
                            k++;
                        }   
                    }
                    System.out.print(" " + i);
                    i++;
                }
                System.out.println();
                j++;
            }
    

    输出:

    0 1 2 3 4 5 6 7 8 9
      1 2 3 4 5 6 7 8 9
        2 3 4 5 6 7 8 9
          3 4 5 6 7 8 9
            4 5 6 7 8 9
              5 6 7 8 9
                6 7 8 9
                  7 8 9
                    8 9
                      9