| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5164 人关注过本帖
标题:n!阶乘后有几个零?
取消只看楼主 加入收藏
傻瓜菜
Rank: 2
来 自:earth
等 级:论坛游民
帖 子:73
专家分:66
注 册:2011-10-4
结帖率:94.44%
收藏
已结贴  问题点数:20 回复次数:3 
n!阶乘后有几个零?
程序代码:
#include<stdio.h>
long int fact(long int n);
int main()
{
    long int n,sum;
    while(scanf("%ld",&n)&&n)
    {
        sum=fact(n);
        printf("%ld\n",sum);
    }
    return 0;
}
long int fact(long int n)
{
    long int k,f=0;
    if(n<5) f=f+0;
    else 
    {
        k=n/5;
        f=k+fact(k);
    }
    return f;
}

我的思路是调用递归函数,将大数一次次地除以5;但是交上去就是WA,据说测试数据是要求输出30000多个零,可是我的程序能算到一亿的阶乘后面的零的个数,难道还不够吗?求高手解答!
搜索更多相关主题的帖子: color 
2011-12-08 16:46
傻瓜菜
Rank: 2
来 自:earth
等 级:论坛游民
帖 子:73
专家分:66
注 册:2011-10-4
收藏
得分:0 
谢谢三楼和四楼,是学校练习平台上的,我把题目copy过来吧!
Description

一天巴克闲着无聊就算起了阶乘,突然他想一个数的阶乘末尾到底有多少个零,于是笔算起来,但是阶乘实在太大了,巴克算着算着就晕掉了-_-|||,于是他把希望寄托在大家身上,帮帮巴克吧.(有糖吃的,,,,嘿嘿)

Sample Input

30
Sample Output

7
2011-12-08 18:57
傻瓜菜
Rank: 2
来 自:earth
等 级:论坛游民
帖 子:73
专家分:66
注 册:2011-10-4
收藏
得分:0 
回复 2楼 战斗!立
我是电脑白痴,刚刚大一,进入编程,什么事BCD?
2011-12-08 18:59
傻瓜菜
Rank: 2
来 自:earth
等 级:论坛游民
帖 子:73
专家分:66
注 册:2011-10-4
收藏
得分:0 
我的同学同样写了一个程序,测试了几个数据,发现在只有在输入999999的时候,出现错误,他的答案是239998,我的答案是249992,奇葩啊
2011-12-09 09:57
快速回复:n!阶乘后有几个零?
数据加载中...
 
   



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

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