C++编程 递归 语句解释

来源:百度知道 编辑:UC知道 时间:2024/07/06 14:32:00
其中有一句:

return ( number * factorial (number - 1));

请问:(number - 1)是做什么用的

注 整个程式是用来算阶乘的

首先要搞懂阶乘的计算,5! = 5 * 4!
由此,factorial(5) = 5 * factorial(5 - 1)

你提的问题,不详细啊
number应该是你定义的变量吧~既然是用来算阶乘的,那number-1就是下一数的值,number-1就成了你定义的factorial 这个函数的变量了~~依次递归下去~直到,number为1停止~

number-1就是 number减去1 。。

number-1是让它数递减,再相乘,这是递推的关键。
比如说,求10的阶乘,它是从10开始乘,第一次number=10,然后10乘以number-1就是乘以9,这样10*9*8*7*6*5*4*3*2*1这么下去