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

调用自身函数算阶乘

为什么调用自身函数那里可以算阶乘,它不是只有两个数吗?就是factorial(n-1)*n这里,求大佬讲解

正在回答

1 回答

就是你在最下面给n赋值为5,那么调用函数之后就变成了result=factorial(5-1)*5,函数在计算的时候发现了自己,函数就只能调用了自己,factorial(5-1)就重新从factorial这个函数的头开始判断和计算,因为4>0且4不等于0和1,所以factorial(4)又等于factorial(4-1)*4,然后此时result=factorial(4-1)*4*5,然后函数又发现了自己,再次调用自身,一直进行阶乘,直到result=factorial(2-1)*2*3*4*5,这时factorial(2-1)=1,而1是个常数,也就相当于函数停止了对于自己的调用,此时result=1*2*3*4*5=120,就算出了阶乘的值

4 回复 有任何疑惑可以回复我~
#1

潘晋松

感谢感谢!一下就懂递归啥意思了!
2022-03-18 回复 有任何疑惑可以回复我~
#2

weixin_慕函数0091506

函数发现自己是怎末回事
2022-10-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926016    人
  • 解答问题       20793    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

调用自身函数算阶乘

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