杭电ACM1042,求N!,高手帮我看下

#include"stdio.h"longjiec(intn){inti;longsum=1;if(n==0)returnsum;for(i=1;i<=n;i++)sum... #include"stdio.h"
long jiec(int n)
{
int i;
long sum=1;
if(n==0) return sum;
for(i=1;i<=n;i++)
sum*=i;
return sum;
}
main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
printf("%ld\n",jiec(n));
}
}
题目在这里面 尽量用C语言
http://acm.hdu.edu.cn/showproblem.php?pid=1042
展开
 我来答
heli35
2010-06-22 · TA获得超过238个赞
知道小有建树答主
回答量:83
采纳率:0%
帮助的人:116万
展开全部
谁说不能用整型数组,我就给你一个整型数组ac代码:
#include<stdio.h>

int main()
{
int a[10000];
int i,j,c,m,n;
while(scanf("%d",&n)!=EOF){
a[0]=1;
m=0;
for(i=1;i<=n;i++)
{
c=0;
for(j=0;j<=m;j++)
{
a[j]=a[j]*i+c;
c=a[j]/10000;
a[j]=a[j]%10000;
}
if(c>0) {m++;a[m]=c;}
}
printf("%d",a[m]);
for(i=m-1;i>=0;i--) printf("%4.4d",a[i]);
printf("\n");
}
return 0;
}
sphinx1990
2010-06-21 · TA获得超过1832个赞
知道答主
回答量:219
采纳率:0%
帮助的人:129万
展开全部
算了~这个大数挺难的,按你现在的实力应该是没希望做出来的,换点别的题做做吧~hint:该题是用字符串做的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ccc5247
2010-06-20 · 超过13用户采纳过TA的回答
知道答主
回答量:33
采纳率:0%
帮助的人:0
展开全部
大哥! 你用长整型的就够放了吗? 它是10000!长度有想一下多长。。不可以用整型变量放 用字符串 或其他的来存放吧你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-06-20
展开全部
请写出题目页面地址!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式