为了账号安全,请及时绑定邮箱和手机立即绑定

递归到最后为什么到0就终止了呢?

递归到最后为什么到0就终止了呢,运算到n<0为什么不会输出data error?

正在回答

1 回答

这取决于自己限定的结束条件,例如

fun(int a)

{    int  n;

     if (a==0||a==1)n=1;

     else n=fun(a-1)*a;

     return n;

}

当a大于1,程序就会不停地递归直至a=1求出fun(1)的值,进而一层层求出fun(2)......fun(a),最后返回a的阶乘

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

递归到最后为什么到0就终止了呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信