S1E34:递归
#include <stdio.h>//鱼C论坛——BaysideLizard写于2023年11月16日
void recursion(void);
long long int fact(long long int);
int main()
{
long long int num;
recursion();
printf("\n阶乘计算器(递归版)\n");
printf("请输入一个正整数:");
scanf("%d",&num);
printf("%d的阶乘是:%d",num,fact(num));
return 0;
}
void recursion(void)
{
static int count = 10;
printf("%dHi!\n",count);
if(--count)
{
recursion();
}
//注意:递归必须要有结束条件,否则程序将崩溃!
}
long long int fact(long long int num)
{
long long int res;
if(num > 0)
{
res = num * fact(num - 1);
}
else
{
res = 1;
}
return res;
}
运行结果:
10Hi!
9Hi!
8Hi!
7Hi!
6Hi!
5Hi!
4Hi!
3Hi!
2Hi!
1Hi!
阶乘计算器(递归版)
请输入一个正整数:5
5的阶乘是:120
Process returned 0 (0x0) execution time : 1.301 s
Press any key to continue.
在FishC学C的第十七天
页:
[1]