(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
```
````