C++遞歸函數的終止條件是函數在滿足某個特定條件時停止調用自身。這些條件通常是為了防止無限遞歸,確保遞歸過程最終會結束。終止條件是在遞歸函數內部定義的,并且需要在每次遞歸調用之前進行檢查。
例如,假設我們有一個計算階乘的遞歸函數,其終止條件是輸入值為1或0,因為0的階乘和1的階乘都是1:
#include <iostream>
int factorial(int n) {
// 終止條件
if (n == 0 || n == 1) {
return 1;
}
// 遞歸調用
return n * factorial(n - 1);
}
int main() {
int number = 5;
std::cout << "Factorial of " << number << " is " << factorial(number) << std::endl;
return 0;
}
在這個例子中,if (n == 0 || n == 1)
是遞歸函數的終止條件,當輸入值 n
為0或1時,函數將停止調用自身并返回1。