以下是使用C語言遞歸函數求n的階乘的示例代碼:
#include <stdio.h>
// 聲明遞歸函數
unsigned long long factorial(int n);
int main() {
int n;
printf("請輸入一個正整數n:");
scanf("%d", &n);
// 調用遞歸函數求解階乘
unsigned long long result = factorial(n);
printf("%d的階乘為%llu\n", n, result);
return 0;
}
// 定義遞歸函數
unsigned long long factorial(int n) {
if (n <= 1) {
return 1;
}
return n * factorial(n - 1);
}
在上述代碼中,使用了遞歸函數factorial
來計算n的階乘。函數的定義中,首先進行了終止條件的判斷,即當n小于等于1時,返回1,表示階乘的結束。否則,繼續調用遞歸函數,傳入n-1作為參數,并將結果與n相乘,得到n的階乘。
在main
函數中,首先讀取用戶輸入的正整數n,然后調用遞歸函數factorial
求解n的階乘,并將結果輸出到屏幕上。