遞歸函數是在C++中用于調用自身的函數。以下是一個簡單的遞歸函數示例,用于計算階乘:
#include <iostream>
// 遞歸函數聲明
unsigned long long factorial(int n);
int main() {
int number;
std::cout << "請輸入一個正整數: ";
std::cin >> number;
// 計算階乘并輸出結果
unsigned long long result = factorial(number);
std::cout << number << "的階乘是: " << result << std::endl;
return 0;
}
// 遞歸函數定義
unsigned long long factorial(int n) {
// 基本情況:如果n為0或1,階乘為1
if (n == 0 || n == 1) {
return 1;
}
// 遞歸情況:n的階乘等于n乘以(n-1)的階乘
else {
return n * factorial(n - 1);
}
}
在這個示例中,我們定義了一個名為factorial
的遞歸函數,它接受一個整數n
作為參數。函數的基本情況是當n
為0或1時,階乘為1。遞歸情況是n
的階乘等于n
乘以(n-1)
的階乘。在main
函數中,我們從用戶那里獲取一個正整數,然后使用factorial
函數計算其階乘并輸出結果。