一般我们在学for循环的时候都会去打印九九乘法表,但是如果是用递归的方式打印的话,应该怎么做呢?
下面讲解一下用递归打印九九乘法表的思路:
其实我们在用for循环打印乘法表的时候,用的是循环嵌套,两层for循环,外层循环决定打印的行数,内层循环决定每行打印的个数。
用递归的话其实也是类似,我们可以当前的方法打印当前行的内容,然后再调用自己,打印上一行的内容,直到第一行。
也就是说递归的临界条件或者说结束条件是第一行的时候,这个时候我们return,结束方法,依次打印。
代码:
public static void main(String[] args){
test(9);
}
public static void test(int i){
//临界条件
if(i==1){
System.out.println("1*1=1");
return;
}
test(i-1);
//打印当前行
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+j*i+"\t");
}
//换行
System.out.println();
}
结果:
当然也可以根据情况选择调用时输入的实参数,得到相应的几几乘法表。