通过for循环实现九九乘法表的四种形式
package com.briup.day04;
/**
* @author chouhan
* 编写代码实现九九乘法表
*/
public class MultiplyTableTest {
public static void main(String[] args) {
MultiplyTableTest test=new MultiplyTableTest();
test.method();
test.method2();
test.method3();
test.method4();
}
//1.直角在左下角,第一个数每列相同,每行是1~9,第二个数每行相同,每列是1~9
private void method() {
//先写行号,行号在增加
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
//一行的输出:第一个数在增加,第二个数不变,
//要让一个数不变就是在一次循环里面让另一个数循环地变,
//外层循环的数在第一次循环的时候不变,而内层的在循环++,
//所以输出语句时,每一行是第一个数在外层,第二个数在内层
System.out.print(j+"*"+i+"="+i*j+"\t");
}
//一行输出后,换一次行
System.out.println();
}
}
//2.直角在左上角,第一个数每列相同,每行是1~9,第二个数每行相同,每列是9~1
private void method2() {
//按照第二个数每行一样,就把第二个数写外层,让它每列--,
//而第一个数的个数每行在--,循环次数在减少,但从左往右是++,写里层
for(int i=9;i>=0;i--) {
for(int j=1;j<=i;j++) {
System.out.print(j+"*"+i+"="+(i*j)+"\t");
}
System.out.println();
}
}
//3.直角在右下角,第一二个数的变化和在左下角的一样,不同的是每行的前面加了
//制表符,制表符的个数--,通过再嵌套一个循环输出空格就行
private void method3() {
for (int i = 1; i <= 9; i++) {
//先输出制表符
for (int k = 9-i; k > 0; k--) {
System.out.print("\t");
}
//再输出乘法公式
for (int j = 1; j <= i; j++) {
System.out.print(j+"*"+i+"="+(i*j)+"\t");
}
System.out.println();
}
}
//4.直角在右上角,第一二个数的变化和直角在左上角的相同,通用多了制表符,"\t"--
private void method4() {
for(int i=9;i>=0;i--) {
//k从0~8
for (int k = 0; k < 9-i; k++) {
System.out.print("\t");
}
for(int j=1;j<=i;j++) {
System.out.print(j+"*"+i+"="+(i*j)+"\t");
}
System.out.println();
}
}
}
总结:外层变每列,内层变每行,只要找到第一、二个数的相同的变化写,然后输出就行。