更改表中打印变量的值

时间:2018-03-11 23:34:39

标签: java loops tabular

我有一个使用循环创建乘法表的赋值,第一列应该从1-10开始,左上角有一个'x'。这是我的计划:

public class s {

    public static void main(String[] args) {
        int a = 10;
        for (int b = 0; b <= a; b++) {
            for (int c = 1; c <= 1; c++) {
                System.out.printf ("%3d | ", + b*c );
            }
        }
        System.out.println ();
        for (int d = 5; d < a; d++) {
            System.out.printf ("-------------");
        }
        System.out.println ("");
        for (int e = 1; e <= a; e++) {
            for (int c = 0; c <= a; c++) {
                System.out.printf ("%3d | ", e*c );
            }
            System.out.println ();
        }
    }
}

这会在第一列打印所有零,但我希望它在x,1,2,3等处更改。如何更改这些值?

对不起,如果有任何格式错误或任何事情,我和Stack Overflow一样新,就像我对Java一样,但我很高兴找到你。

1 个答案:

答案 0 :(得分:0)

您的代码已经非常接近工作了。您唯一的问题是尝试在for循环中包含左列(专用于打印乘法值)。一般形式应为:

System.out.printf(... left hand label ...);
for (col counter ...)
   System.out.printf(... value based on col ... );
System.out.println();

调整后的代码为:

public class s {
    public static void main(String[] args) {
        int a = 10;
        System.out.printf("%3s | ", "x");
        for (int b = 1; b <= a; b++) {
            System.out.printf("%3d | ", b);
        }
        System.out.println();
        System.out.printf("----+");
        for (int d = 0; d < a; d++) {
            System.out.printf("-----+");
        }
        System.out.println();
        for (int e = 1; e <= a; e++) {
            System.out.printf("%3d | ", e);
            for (int c = 1; c <= a; c++) {
                System.out.printf("%3d | ", e * c);
            }
            System.out.println();
        }
    }
}

我还鼓励你使用以大写字母开头的类名(按惯例类名称应该大写)。