| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 506 人关注过本帖
标题:效率问题
取消只看楼主 加入收藏
fresher
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-5-24
收藏
 问题点数:0 回复次数:2 
效率问题
#define MAX 3000
int a[MAX];
int b[MAX];
void jiafa(int k)
{
int i,j,m,carry,count=0,r=0;
for(m=0;m<MAX;m++)
b[m]=a[m];
for(i=1;i<k;i++)
{
carry=0;
for(j=0;j<MAX;j++)
{
r=a[j]+b[j]+carry;
a[j]=r%10;
carry=r/10;
}
if(carry)
count++;
}
}
void intal( )
{
int i;
for(i=0;i<MAX;i++)
a[i]=0;
}
main()
{
int i, n;
intal();
scanf("%d",&n);
a[0]=1;
for(i=1;i<=n;i++)
{
jiafa(i);
}
for(i=MAX-1;i>=0;i--)
{
printf("%d",a[i]);
}
getch();
}

程序为求大数阶乘,如何提高运行速度!!

[此贴子已经被作者于2006-6-5 17:35:32编辑过]

2006-06-05 17:35
fresher
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-5-24
收藏
得分:0 
谢谢帮助
2006-06-06 08:55
fresher
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-5-24
收藏
得分:0 
呵呵 正在研究中!!!!
2006-06-06 17:36
快速回复:效率问题
数据加载中...
 
   



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

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