标题:递归求阶乘问题
只看楼主
tong123sx
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-6-26
结帖率:100%
 问题点数:0 回复次数:12 
递归求阶乘问题
#include <stdio.h>
int fun(int n)
{   
    if(n>1) return fun(n-1)*n;
    return 1;
}
void main()
{
    int n;
    scanf("%d",&n);
    printf("%ld",fun(n));
}
如何求1—2000阶乘不溢出??
搜索更多相关主题的帖子: return include void fun 如何 
2012-10-09 01:16
爱闹的娃
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:265
专家分:975
注 册:2011-10-23
得分:0 
递归并不适用于较大的数...你可以用对数的思想去做
2012-10-09 08:46
heishu
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:42
专家分:131
注 册:2012-9-7
得分:0 
我试了一下,会溢出呀???

[qq]1402050187[/qq]
2012-10-09 09:03
qunxingw
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:24
帖 子:1676
专家分:7295
注 册:2011-6-30
得分:0 
有时有的电脑没有我们想象的聪明。

www.qunxingw.wang
2012-10-09 11:42
xtjopt
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:89
专家分:168
注 册:2012-9-12
得分:0 
计算器的结果为3.316e+5735  额 好像没什么类型能放,有没有指数类型的数据类型啊
2012-10-09 11:47
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
以下是引用xtjopt在2012-10-9 11:47:42的发言:

计算器的结果为3.316e+5735  额 好像没什么类型能放,有没有指数类型的数据类型啊

1.自己弄大数及其算法
2.用递归做这个也会栈溢出(btw: 我非常反感用递归做这类题目)

[ 本帖最后由 TonyDeng 于 2012-10-9 12:25 编辑 ]

授人以渔,不授人以鱼。
2012-10-09 11:53
Eumenides_me
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:63
专家分:151
注 册:2012-9-26
得分:0 
你敢把数字再弄大点么?
2012-10-09 12:21
guigeng
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-10-9
得分:0 
在学习中。
2012-10-09 12:26
ltyzsh
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-10-9
得分:0 
学习中
2012-10-09 15:06
tong123sx
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-6-26
得分:0 
回复 6楼 TonyDeng
那通常用什么做呢?
2012-10-09 17:22



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-382749-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055955 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved