求大数阶数

#include <stdio.h>
#define N 10000
int main()
{
	static int r[N]={1}; 
	int i,j;
	int k=0,l=0;
	for(i=1;i<=50;i++)
	{		
		for(j=0;j<=l;j++)
		{			
			r[j]=r[j]*i+k;			
			k=r[j]/10000;
			r[j]=r[j]%10000;			
		}
		if(k)
		{
			l++;
			r[j]=k;
			k=0;
		}
		j=l;
		printf("%d!=%d",i,r[j--]);
		for(;j>=0;j--)
		{
			printf("%04d",r[j]);
		}
		printf("\n");
	}
	return 0;
}


posted @ 2013-08-16 19:19  pangbangb  阅读(186)  评论(0编辑  收藏  举报