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 @   冲他丫的  阅读(414)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示