(C语言试题练习)用递归方式 求1——n之间的阶乘
作者:互联网
(C语言试题练习)用递归方式 求1——n之间的阶乘
- 数的阶乘 n的阶乘公式
阶乘乘积公式
阶乘递推关系公式阶乘公式
阶乘经常写成感叹号:N!。一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,如下所示。
0! = 1
1! = 1
2! = 2 x 1 = 2
3! = 3 x 2 x 1 = 6
4! = 4 x 3 x 2 x 1 = 24
5! = 5 x 4 x 3 x 2 x 1 = 120
例题
求7整数的阶乘 ?
给出的数据
n = 7
逐步计算
公式:n! = n x (n-1) x (n-2) x .... x 1
代码演示
int JieCheng(int a)
{
int s;
if (a < 0)
{
printf("此数没有阶乘");
}
else if (a == 0 || a == 1)
{
s = 1; //0和1的阶乘都是1
}
else
{
s = a * JieCheng(a - 1); //这里采用递归的方式 从大数往小数乘 例5!=5*4*3*2*1
}
return s;
}
int main()
{
int a, s;
printf("请输入数\n");
scanf_s("%d", &a);
s = JieCheng(a);
printf("该数的阶乘是%d\n", s);
}
控制台输出
请输入数
7
该数的阶乘是5040
```
````
标签:递归,int,公式,C语言,printf,阶乘,JieCheng,该数 来源: https://www.cnblogs.com/CuiPengJu/p/15593596.html