基地123 2021-11-22 21:19 采纳率: 90.2%
浏览 34
已结题

有没有会做的人啊,帮帮我吧

练习函数的设计程序,求n!?用户给定n的值计算出n!的值,显示出来。请分别使用递归和迭代
的方式完成设计。

  • 写回答

1条回答 默认 最新

  • 南七灵 2021-11-22 21:26
    关注
    
    #include <stdio.h>
    #include <time.h>
    // 递归计算阶乘
    long factorial_recursion(int n)
    {
        if (n <= 0)
        {
            return 1;
        }
        else
        {
            return n * factorial_recursion(n - 1);
        }
    }
    // 迭代计算阶乘
    long factorial_iteration(int n)
    {
        int result = 1;
        while (n > 1)
        {
            result *= n;
            n--;
        }
        return result;
    }
    int main()
    {
        int N;
        printf("请输入n:\n");
        scanf("%d", &N);
        long recursion_result = factorial_recursion(N);
        long iteration_result = factorial_iteration(N);
        // %ld 输出长整型,即 long int
        printf("%ld\n", recursion_result);
        printf("%ld\n", iteration_result);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月9日
  • 已采纳回答 6月1日
  • 创建了问题 11月22日