您的位置:首页 > 其它

递归和非递归分别实现求n的阶乘

2019-05-07 16:59 190 查看

 

[code]#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include "stdlib.h"
#include<stdio.h>
//递归方法实现N的阶乘
int fac1(int n)
{
if (n == 1)
{
return 1;
}
return n *fac1(n - 1);
}
//非递归方法实现N 的阶乘
int fac2(int n)
{
int sum = 1;
int i;
for (i=n;i>0;i--)
{
sum *= i;
}
return sum;
}
int main()
{
int n = 0;
printf("请输入:");
scanf("%d", &n);
int b = 0;
int a = 0;
a = fac1(n);
b = fac2(n);
printf("递归结果:%d\n", a);
printf("非递归:%d\n", b);
system("pause");
return 0;
}

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: