标题:求1000的阶乘,请大家帮忙修改一下
只看楼主
无界追踪
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-3-22
结帖率:100%
 问题点数:0 回复次数:1 
求1000的阶乘,请大家帮忙修改一下
#include<stdio.h>
#define N 1000

int main()
{
    long int a[256];
    int i,t,j=0;

    for(i=1;i<255;i++)
    {
       a[i]=0;
    }//使a[i]除了a[0]以外全为零

    for(i=1,a[0]=1;i<=N;i++)
    {
        for(t=0;a[t]>0;t++);
        //从最高位算起
        for(--t;t>=0;t--)
        {
            a[t]*=i;//累加        
            for(j=t;a[j]>=1000;j++)
            {
                a[j+1]+=a[j]/1000;
                a[j]=a[j]%1000;
            }
        }
    }

    for(t=0;a[t]>0;t++);
    t--;

    for(;t>=0;t--)
    {
        printf("%ld",a[i]);
    }

    return 0;
}
搜索更多相关主题的帖子: 1000 long include 
2012-04-10 00:18
苦逼计科班
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-10-16
得分:0 
初学者表示没见过阶乘需要这般麻烦   
   
2012-11-09 22:41



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




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

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