标题:10000!求1000!正确到10000就错,求改
取消只看楼主
maxlea
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2006-12-7
 问题点数:0 回复次数:1 
10000!求1000!正确到10000就错,求改


#include <stdio.h>
void main()
{
long i,j,b,c,h;
while(scanf(\"%ld\",&b)!=EOF)
{
if(b==0)
printf(\"0\n\");
else{
long a[100000]={0};
a[0]=1;
for(i=1,j=0;i<=b;i++)
{
for(h=j;h>=0;h--)
{
a[h]*=i;
if(a[h]>=10000)
{
c=a[h];
a[h]=a[h]%10000;
a[h+1]+=c/10000;
if(h+1>j)
j++;


}
}
}
printf(\"%ld\",a[j--]);
for(;j>=0;j--)
{
if(a[j]<1000&&a[j]>=100)
printf(\"0\");
if(a[j]<100&&a[j]>=10)
printf(\"00\");
if(a[j]<10)
printf(\"000\");
printf(\"%ld\",a[j]);
}
printf(\"\n\");
}
}
}

2006-12-29 13:35
maxlea
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2006-12-7
得分:0 
我用的是VC

work~work
2006-12-29 17:38



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




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

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