指尖上的猫
2021-09-04 14:31
采纳率: 100%
浏览 35

帮帮忙吧,这道题怎么做呀?

img

  • 好问题 提建议
  • 收藏

3条回答 默认 最新

  • ByteSniper 2021-09-04 14:34
    已采纳
    #include <stdio.h>
    double fact(int n)
    {
        if (n == 0 || n == 1)
            return 1;
        else if (n > 1)
            return n * fact(n - 1);
    }
    int main(void)
    {
        int n = 0;
        printf("输入一个正整数:");
        scanf("%d", &n);
        printf("%d的阶乘为:%.0lf\n", n, fact(n));
        return 0;
    }
    

    有帮助望采纳

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 吴迦诺 2021-09-04 14:32

    从n~1循环。

    评论
    解决 1 无用
    打赏 举报
  • 十年bug 2021-09-04 14:37

    阶乘就是n!,即n*(n-1)(n-2)…1,可以用循环求解,不如将阶乘反过来即1* 2 * 3…*n,这样使用循环求解代码更简单些

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题