您的位置:首页 > 编程语言 > C语言/C++

C语言递归实现阶乘

2021-01-28 20:07 691 查看
#include <stdio.h>
int fact1(int);
int fact2(int);

// 方法1
int fact1(int num)
{
int result = 0;
if (num > 0) {
result = num * fact1(num - 1);
} else {
result = 1;
}

return result;
}

// 方法2
int fact2(int num)
{
if (num > 1) {
return  num * fact2(num - 1);
} else {
return 1;
}
}

int main(void)
{
int num;
printf("请输入一个数字:");
scanf("%d", &num);
printf("函数1阶乘结果:%d\n", fact1(num));
printf("函数2阶乘结果:%d\n", fact2(num));
}

output:
[root@centos8 ~]# gcc r.c && ./a.out
请输入一个数字:5
函数1阶乘结果:120
函数2阶乘结果:120
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: