时间表格式

时间:2015-08-18 01:50:31

标签: java

运行一个简单的乘法表,但它没有给我一个所需的输出。我希望每个乘法都在不同的列上,用一点空间分隔。例如,1乘以1到12的数字应该在单列上,2乘以1到12的数字在另一列上。我不希望所有人只在一栏上。

public class multiplicationTable{

   public static void main(String[] args){

       for(int i=1; i<=12;i++){
            System.out.println(i);
            for(int j=1; j<=12; j++){
               int mult=i*j;
               System.out.println(i + "*"9  + j +" = " + mult +" \t");
            }
       }   
   }
}

2 个答案:

答案 0 :(得分:0)

如果要在同一行上打印内容,则应使用System.out.print()方法而不是System.out.println()方法。你的程序应该是这样的:

public class multiplicationTable
{
   public static void main(String[] args){
   for(int i=1; i<=12;i++){
        System.out.println(i);
        for(int j=1; j<=12; j++){
             int mult=i*j;
             System.out.print(i + "*"9  + j +" = " + mult +" \t");
         }
         System.out.println();
      }

     }
}

答案 1 :(得分:0)

每当您调用System.out.println()时,它都会移动到下一行。因此,如果您想在一行上打印x的所有数字,您将执行以下操作:

 public static void main(String[] args){

     // Print the headers
     for (int i = 1; i <= 12; i++) {
         // Two tabs because the calculations take up room on the console
         System.out.print(i + "\t\t");
     }

     // Start at the next line
     System.out.println();

     // Let's define each multiplication as x * j

     // For each j...
     for (int i = 1; i <= 12; i++) {
         // ...print all of the x's and their products
         for (int j = 1; j <= 12; j++) {
             System.out.print(j + " * " + i + " = " + j * i + "\t");
         }
         // Move to the next line for the next row of j's
         System.out.println();
     }

 }

在此表中:

1 * 1 = 1 2 * 1 = 2 3 * 1 = 3

有什么变化?第一个操作数。因此,您需要嵌套for循环 作为第一个操作数的for循环,嵌套在第二个操作数的循环中以获得所需的结果。

以这种方式思考:对于每个第二个操作数,打印一行中第一个操作数的所有计算。这样,您就可以获得所需的列。

如果这不是您的意思,请在评论中告诉我。

希望这有帮助。