转自:http://blog.csdn.net/fengdian29147001/article/details/11992755
给一个数X,len=log10(X)+1就是X这个数的长度
①:当N的值不超过10^6时
那么N的阶乘长度=log10(1*2*3*4*……*N)+1=log10(1)+log10(2)+log10(3)+log10(4)+……+log10(N)+1
②:当N比较大时,再用上面这种方法就有点笨拙了
斯特林公式斯特林公式N!=sqrt(2*PI*N)*(N/e)^N
N!的长度len=log10(sqrt(2*PI*N)*(N/e)^N)+1 =0.5*log10(2.0*PI*N)+N*log10(N/e)+1