数组计算阶乘

void factoral(int N)
{
    int arr[5120] = {};
    int max = 0;
    arr[0] = 1;
    for(int i = 0;i < N;i++)
    {
        for(int j = 0;j < 5120;j++)
            arr[j] *= (i+1);
        for(int j = 0;j < 5120;j++)
        {
          if(0 < arr[j]/10)
           {
               arr[j+1] += arr[j]/10;
               arr[j] %= 10;
               max = j+1;
           }
       }
   }
   for(int i = max;i >=0;i--)
   {
       printf("%d",arr[i]);
   }
  printf("\n"); }

 

posted @ 2023-07-05 21:01  ycddqr  阅读(60)  评论(0)    收藏  举报