java.不使用for,while循环打印99乘法表

public class Test {
	public static void main(String[] args) {

		// 递归打印乘法口诀表
		print99(1, 1);// 从1*1开始打印
	}

	private static void print99(int i, int j) {

		if (i < j) {// 如果i<j,就按照i递增的顺序打印
			System.out.print(i + "*" + j + "=" + i * j + " ");
			print99(++i, j);  /////此处递归构成循环

		} else if (j <= 9) {// 如果i<j不成立了,且j<9时,打印最后一个换行的,然后再递归把j+1
			System.out.println(i + "*" + j + "=" + i * j);
			if (j == 9) 
				return;
			 else 
				print99(1, ++j);// 重点在于把i重新置1.
			

		}
	}// print99
}
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
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=81


你可能感兴趣的:(java,算法,递归,乘法表,不用for)