首页 > 代码库 > [C++程序设计]函数的递归调用

[C++程序设计]函数的递归调用

在调用一个函数的过程中又出现直接或间接地调用 该函数本身,称为函数的递归(recursive)调用.

包含递归调用的函数称为递归函数.

在实现递归时,在时间和空间上的开销比较大

求n!

 1 #include <iostream> 2 using namespace std; 3  4 long func(int n); 5  6 int main() 7 { 8     long c; 9     int x;10     cout << "please enter a integer number:" << endl;11     cin >> x;12     c = func(x);13     cout << x << "! = " << c << endl;14     return 0;15 }16 17 long func(int n)18 {19     long c;20     if (n < 0)21         cout << "n < 0,data erroe" << endl; c = -1;22 23     if(n == 0 || n == 1) c = 1;24     else25         c = func(n - 1) * n;26     return c;27 }