练习函数的设计程序,求n!?用户给定n的值计算出n!的值,显示出来。请分别使用递归和迭代
的方式完成设计。
#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;
}