C++实现10000的阶乘的代码

C++实现10000的阶乘的代码,第1张

C++实现10000的阶乘的代码,第2张

写的一个C++实现10000的阶乘的代码
  #include
  #define N 10000//设阶乘数为10000
  #define SIZE 40000//预留40000位保存结果
  using namespace std;
  void mul(int *n1,int n2)//两数相乘
  {
  for(int i=0;i!=SIZE;++i)
  n1[i]*=n2;
  for(int i=0;i!=SIZE;++i){
  n1[i+1]+=(n1[i]/10);
  n1[i]%=10;
  }
  }
  int main()
  {
  int *num=new int[SIZE];
  memset(num,0,SIZE);
  num[0]=1;
  //N的阶乘
  for(int i=1;i!=N+1;++i){
  mul(num,i);
  }
  //输出时排除开头的0
  for(int i=SIZE-1;i!=-1;--i){
  if(0!=num[i]){
  for(int j=i;j!=-1;--j){
  cout

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » C++实现10000的阶乘的代码

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情