干嘛弄得这么复杂呢?用个科学计数不就完了吗.100w都没问题
/*
Name: 用科学计数法求大数阶乘
Copyright:
Author:
Date: 24-10-07 16:33
Description:
*/
#include <iostream>
using namespace std;
int main()
{
double i,sum=1,pow=0;
cin>>i;
for(long val=1; val<=i; ++val)
{
sum*=val;
while(sum>=10)
{
sum=sum/10;
++pow;
}
}
cout<<i<<"!="<<sum<<"e+"<<pow<<endl;
system("pause");
return 0;
}
天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。