如何在java中在控制台中横向打印东西?

时间:2014-06-30 14:05:02

标签: java

我是Java编程的初学者,而且只是编程。我已经编写了一个程序来打印表格,直到特定的数字。

但是,我想以横向方式打印表格,而不是它是一个巨大的列表。我该如何做到这一点?

这是我的代码。

import java.util.Scanner;

public class Learning {

    public static void main(String[] args) {

        /*
         * To create a program where it prints the tables till twenty
         */

        Scanner input = new Scanner(System.in);
        System.out.println("Enter till when do you want the tables(max 20): ");
        int number = input.nextInt();
        if (number > 20 || number < 2) {
            System.out.println("You entered a wrong number!!");
            System.exit(1);
        }

        for (int i = 2; i <= number; i++) {

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

                System.out.printf("%d X %d = %d\n", i, j, (i * j));

            }

            System.out.println();
        }

    }

}

2 个答案:

答案 0 :(得分:2)

如果您不想将每个条目放在单独的行中,则必须删除“\ n”

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

     System.out.printf("%d X %d = %d\n", i, j, (i * j));  // <<<<<  the \n here

 }

并将其替换为适合您的空格或其他任何内容。

如果我误解了这个问题,请告诉我,我会尝试重做:D

编辑:

如果您插入\ t并取4个数字,您将获得:

2 X 1 = 2   2 X 2 = 4   2 X 3 = 6   2 X 4 = 8   2 X 5 = 10  2 X 6 = 12  2 X 7 = 14  2 X 8 = 16  2 X 9 = 18  2 X 10 = 20 
3 X 1 = 3   3 X 2 = 6   3 X 3 = 9   3 X 4 = 12  3 X 5 = 15  3 X 6 = 18  3 X 7 = 21  3 X 8 = 24  3 X 9 = 27  3 X 10 = 30 
4 X 1 = 4   4 X 2 = 8   4 X 3 = 12  4 X 4 = 16  4 X 5 = 20  4 X 6 = 24  4 X 7 = 28  4 X 8 = 32  4 X 9 = 36  4 X 10 = 40 

对于另一种解决方案,您必须将循环更改为:

    for (int i = 1; i <= 10; i++) {

        for (int j = 2; j <= number; j++) {

            System.out.printf("%d X %d = %d\t", j, i, (i * j));

        }

        System.out.println();
    }

使用数字20时,您将获得:

2 X 1 = 2   3 X 1 = 3   4 X 1 = 4   5 X 1 = 5   6 X 1 = 6   7 X 1 = 7   8 X 1 = 8   9 X 1 = 9   10 X 1 = 10 11 X 1 = 11 12 X 1 = 12 13 X 1 = 13 14 X 1 = 14 15 X 1 = 15 16 X 1 = 16 17 X 1 = 17 18 X 1 = 18 19 X 1 = 19 20 X 1 = 20 
2 X 2 = 4   3 X 2 = 6   4 X 2 = 8   5 X 2 = 10  6 X 2 = 12  7 X 2 = 14  8 X 2 = 16  9 X 2 = 18  10 X 2 = 20 11 X 2 = 22 12 X 2 = 24 13 X 2 = 26 14 X 2 = 28 15 X 2 = 30 16 X 2 = 32 17 X 2 = 34 18 X 2 = 36 19 X 2 = 38 20 X 2 = 40 
2 X 3 = 6   3 X 3 = 9   4 X 3 = 12  5 X 3 = 15  6 X 3 = 18  7 X 3 = 21  8 X 3 = 24  9 X 3 = 27  10 X 3 = 30 11 X 3 = 33 12 X 3 = 36 13 X 3 = 39 14 X 3 = 42 15 X 3 = 45 16 X 3 = 48 17 X 3 = 51 18 X 3 = 54 19 X 3 = 57 20 X 3 = 60 
2 X 4 = 8   3 X 4 = 12  4 X 4 = 16  5 X 4 = 20  6 X 4 = 24  7 X 4 = 28  8 X 4 = 32  9 X 4 = 36  10 X 4 = 40 11 X 4 = 44 12 X 4 = 48 13 X 4 = 52 14 X 4 = 56 15 X 4 = 60 16 X 4 = 64 17 X 4 = 68 18 X 4 = 72 19 X 4 = 76 20 X 4 = 80 
2 X 5 = 10  3 X 5 = 15  4 X 5 = 20  5 X 5 = 25  6 X 5 = 30  7 X 5 = 35  8 X 5 = 40  9 X 5 = 45  10 X 5 = 50 11 X 5 = 55 12 X 5 = 60 13 X 5 = 65 14 X 5 = 70 15 X 5 = 75 16 X 5 = 80 17 X 5 = 85 18 X 5 = 90 19 X 5 = 95 20 X 5 = 100    
2 X 6 = 12  3 X 6 = 18  4 X 6 = 24  5 X 6 = 30  6 X 6 = 36  7 X 6 = 42  8 X 6 = 48  9 X 6 = 54  10 X 6 = 60 11 X 6 = 66 12 X 6 = 72 13 X 6 = 78 14 X 6 = 84 15 X 6 = 90 16 X 6 = 96 17 X 6 = 102    18 X 6 = 108    19 X 6 = 114    20 X 6 = 120    
2 X 7 = 14  3 X 7 = 21  4 X 7 = 28  5 X 7 = 35  6 X 7 = 42  7 X 7 = 49  8 X 7 = 56  9 X 7 = 63  10 X 7 = 70 11 X 7 = 77 12 X 7 = 84 13 X 7 = 91 14 X 7 = 98 15 X 7 = 105    16 X 7 = 112    17 X 7 = 119    18 X 7 = 126    19 X 7 = 133    20 X 7 = 140    
2 X 8 = 16  3 X 8 = 24  4 X 8 = 32  5 X 8 = 40  6 X 8 = 48  7 X 8 = 56  8 X 8 = 64  9 X 8 = 72  10 X 8 = 80 11 X 8 = 88 12 X 8 = 96 13 X 8 = 104    14 X 8 = 112    15 X 8 = 120    16 X 8 = 128    17 X 8 = 136    18 X 8 = 144    19 X 8 = 152    20 X 8 = 160    
2 X 9 = 18  3 X 9 = 27  4 X 9 = 36  5 X 9 = 45  6 X 9 = 54  7 X 9 = 63  8 X 9 = 72  9 X 9 = 81  10 X 9 = 90 11 X 9 = 99 12 X 9 = 108    13 X 9 = 117    14 X 9 = 126    15 X 9 = 135    16 X 9 = 144    17 X 9 = 153    18 X 9 = 162    19 X 9 = 171    20 X 9 = 180    
2 X 10 = 20 3 X 10 = 30 4 X 10 = 40 5 X 10 = 50 6 X 10 = 60 7 X 10 = 70 8 X 10 = 80 9 X 10 = 90 10 X 10 = 100   11 X 10 = 110   12 X 10 = 120   13 X 10 = 130   14 X 10 = 140   15 X 10 = 150   16 X 10 = 160   17 X 10 = 170   18 X 10 = 180   19 X 10 = 190   20 X 10 = 200   

答案 1 :(得分:1)

您必须颠倒for循环的顺序,并将\n替换为\t以分隔两个表

    for (int j = 1; j <= 10; j++) 
     {
       for (int i = 2; i <= number; i++) 
          {
            System.out.printf("%d X %d = %d\t", i, j, (i * j));
          }
       System.out.println();
     }

number = 5

时的示例输出
2 X 1 = 2   3 X 1 = 3   4 X 1 = 4   5 X 1 = 5   
2 X 2 = 4   3 X 2 = 6   4 X 2 = 8   5 X 2 = 10  
2 X 3 = 6   3 X 3 = 9   4 X 3 = 12  5 X 3 = 15  
2 X 4 = 8   3 X 4 = 12  4 X 4 = 16  5 X 4 = 20  
2 X 5 = 10  3 X 5 = 15  4 X 5 = 20  5 X 5 = 25  
2 X 6 = 12  3 X 6 = 18  4 X 6 = 24  5 X 6 = 30  
2 X 7 = 14  3 X 7 = 21  4 X 7 = 28  5 X 7 = 35  
2 X 8 = 16  3 X 8 = 24  4 X 8 = 32  5 X 8 = 40  
2 X 9 = 18  3 X 9 = 27  4 X 9 = 36  5 X 9 = 45  
2 X 10 = 20 3 X 10 = 30 4 X 10 = 40 5 X 10 = 50