/********************************************\
| 欢迎转载, 但请保留作者姓名和原文链接, 祝您进步并共勉! |
\********************************************/
用最简洁的代码写出一个整数的阶乘
作者: Jerry Cat
时间: 2006/07/21
链接:
http://www.cppblog.com/jerysun0818/archive/2006/07/21/10283.html
int fun(int s)
{
if (s == 1) return 1;
return s * fun(s-1);
}
posted on 2006-07-21 02:58
Jerry Cat 阅读(642)
评论(3) 编辑 收藏 引用
FeedBack:
2006-07-21 08:55 |
int fun(int s)
{
if (s == 1) return 1;
return s * fun(s-1);
}
如果传入一个-1会怎么样?
返回值为int,范围太小了一点
回复 更多评论
2006-07-21 09:48 |
int fun(int s)//返回0失败,非0成功
{
if (s < 1) return (!s);
return s * fun(s-1);
}
回复 更多评论
2006-07-21 11:26 |
s值太大时会有栈溢出吧?也许这样会比较好:
_int64 func(int s)
{
_int64 result = s--;
while(s > 1) result *= (--s);
return result;
}
回复 更多评论