99乘法表

68 阅读2分钟

效果图

第一种: 在这里插入图片描述 第二种: 在这里插入图片描述

分析

前几天我有一个同学(化工的,他们学python)问我99乘法表怎么打印,我一下子没有思路,想了半天才写出来了😒。其实打印99乘法表的代码很简单,我只是想的太复杂了。 刚开始我认为,打印99乘法表的顺序是这样的(当然,刚开始你可能不这么认为,那恭喜你,你是对的😊): 先打印第一列: 在这里插入图片描述 然后打印第二列: 在这里插入图片描述 依次打印到最后一列: 在这里插入图片描述 但是,99乘法表在控制台是按这种方式打印的: 先打印第一行: 在这里插入图片描述 然后打印第二行: 在这里插入图片描述 依次打印到最后一行: 在这里插入图片描述

代码

先弄清楚99乘法表是一行一行的打印,那么代码写起来很简单了。

  • 外层循环控制打印几行且控制后面的乘数是几,比如最后一行:
  • 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72
  • 最后一行是第9行,所以后面的乘数都是9。

所以外层循环是:for(int i=1;i<=9;i++) 内层循环是:for(int j=1;j<i;j++),==注意==这是三角形形状的乘法表,所以j<ii等于几,就打印几列。 如果想打印完整的乘法表,那就把内层循环改成for(int j=1;j<9;j++)

三角形形状

package com.Test;

//99乘法表
public class Main{
    public static void main(String[] args){
        for(int i=1;i<=9;i++){
            for(int j=1;j<i;j++){
                System.out.printf("%d*%d=%d\t",j,i,(j*i));
            }
            System.out.println();
        }
    }
}

完整

package com.Test;

//99乘法表
public class Main{
    public static void main(String[] args){
        for(int i=1;i<=9;i++){
            for(int j=1;j<9;j++){
                System.out.printf("%d*%d=%d\t",j,i,(j*i));
            }
            System.out.println();
        }
    }
}