阶乘问题(fact.c)2、阶乘问题源程序名 fact.(pas,c,cpp)可执行文件名 fact.exe输入文件名 fact.in 输出文件名 fact.out也许你早就知道阶乘的含义,N阶乘是由1到N相乘而产生,如:12!= 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 = 479,001,60012的阶乘最右边的非零位为6.写一个程序,计算N(1
问题描述:
阶乘问题(fact.c)
2、阶乘问题
源程序名 fact.(pas,c,cpp)
可执行文件名 fact.exe
输入文件名 fact.in
输出文件名 fact.out
也许你早就知道阶乘的含义,N阶乘是由1到N相乘而产生,如:
12!= 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 = 479,001,600
12的阶乘最右边的非零位为6.
写一个程序,计算N(1
答
// 求最大的nk使得 k^nk 整除 n
int nk(int n,int k)
{
int t = 0;
while(n && n%k==0)
{
++t;
n /= k;
}
return t;
}
int fun(int n)
{
int n2 = 0,n5 = 0,dn,p = 1,
i,j;
for(i=2; i