猿问

萌新求解:面对递归函数时,这段代码的输出结果为何是n=2 n=3?大佬们有什么好的建议?

publicclassQR{
publicstaticvoidmain(String[]args){
mm(3);
}
publicstaticvoidmm(intn){
if(n>2){
mm(n-1);
}
System.out.println("n="+n);
}
}
输出结果是:n=2n=3
紫衣仙女
浏览 209回答 2
2回答

HUX布斯

你按照代码想一遍就出了。因为对于大于2的参数,函数是干了两件事的:一、递归调用二、输出参数所以参数3执行递归函数参数变成2,所以先输出2。然后参数3的第二步执行,输出3.
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答