HTRE
2021-10-06 18:27
采纳率: 96.7%
浏览 85

求1!+2!+.+20!的C语言

#include<stdio.h>
int main()
{
int n,i,c;
long long sum;
for(n=1;n<=20;n++){
c=1;
for(i=1;i<=n;i++){
c=c*i;
}
sum=c+sum;
}
printf("%ld",sum);
return 0;
}

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

3条回答 默认 最新

  • 小公鸡卡哇伊呀~ 2021-10-06 18:41
    最佳回答

    因为变量c是存储阶乘的, int 改成 long long

    #include<stdio.h>
    int main()
    {
        int n,i;
        long long c;  
        long long sum = 0;   // 初始化为0
        for (n = 1; n <= 20; n++) {
            c = 1;
            for (i = 1; i <= n; i++) {
                c = c * i;
            }
            sum = c + sum;
        }
        printf ("%lld", sum);     //  ld 改成 lld
        return 0;
    }
    
    评论
    解决 无用
    打赏 举报
查看更多回答(2条)

相关推荐 更多相似问题