C编程练习-计算出100的阶乘

#include<stdio.h>

int main(int argc,const char* argv[])
{
  char rets[200] = {1}; //把结果的每位数存到数组中
  int cnt = 1; //记录位数
  for(int i=2; i<=100; i++)
  {
    int carry = 0; //记录进位
    for(int j=0; j<cnt; j++) //i从个位乘到最高位
    {
      int num = rets[j]*i+carry;
      rets[j] = num%10;
      carry = num/10;
    }
    while(carry) //结果有进位
    {
      rets[cnt++] = carry%10;
      carry = carry/10;
    }
  }
  while(cnt--)
  {
    printf("%d",rets[cnt]);
  }
}

 

posted @ 2023-07-27 14:59  冲他丫的  阅读(476)  评论(0)    收藏  举报