看看咱写的美妙代码。^_^

int zero(int n)
{
    return n < 5 ? 0 : n / 5 + zero(n / 5);
}


代码虽少,内涵不小.


计算,n/5的联合


由此,可以计算阶乘


#include <iostream.h>
double factorial(int n)
{


return n<=1?1:n*factorial(--n);//这里注意了,n--与--n是不一样的,但这里的factorial(--n)实际上对于本
                                             //程序的功能来说是错误的。详细解释请看:
                                            //对递归的更深理解


}
void main()
{
cout<<factorial(9)<<endl;//362880
}


评论

此博客中的热门博文

Linux/ARM Page Table Entry 属性设置分析

由RFE指令引发的一串故事

提交了30次才AC ---【附】POJ 2488解题报告