代码简洁之道,遵循数学大师华罗庚的“化繁为简是坦途,化简为繁不足奇”。
先对代码进行分析,九九乘法表,有个特点:当乘数(被乘数×乘数=积)增加的时候,就需要换行。所以在设置for循环时,×号后面的数更改的时候,就需要换行(把a放到了乘数的位置),所以进入第一个for循环后,a=1,然后里面的for循环在堆b进行不断自增。当a变为2之前进行一个换行。当b>=a时,结束里面的for循环,a才再开始自增。
有不合理的地方,还请欢迎指正谢谢。(是不是还可以再优化下代码呢?)
代码及运行结果如下:
public class demo03 {
public static void main(String[] args) {
for (int a = 1; a <= 9; a++) {
for (int b = 1; b <= 9; b++) {
System.out.print(b+"×"+a+"="+a*b+" ");
if(b>=a){break;}
}
System.out.println();
}
}
}