问题如下 求5的阶乘。
用for实现如下:
int jiecheng(int J_jiecheng){
if (J_jiecheng==0) return J_jiecheng;
for (int count = J_jiecheng - 1; count != 1 ; count--) {
J_jiecheng = count * J_jiecheng;
}
return J_jiecheng;
}
////////////
递归函数实现如下
int jiecheng(int J_jiecheng){
int i = 0;
if(J_jiecheng == 1) {
i = 1;
}
else{
i=jiecheng(J_jiecheng-1)*J_jiecheng;
}
return i;
}
都说递归函数耗费内存,什么时候用for好,什么时候用递归函数好呢? |
|