1、什么是递归?
当函数运行时调用自己,这个函数就是递归函数。
比如函数:f(x)=x+f(x-1)
如果代入 f(2):
返回 2+f(1);
然后调用 f(1);
返回 1+f(0);
然后调用 f(0);
然后返回 0+f(-1);
......注意:为了让递归函数有意义,必须添加终止条件;递归函数先不断调用自身,直到遇到终止条件后进行回溯,最终返回答案。
2、示例:求0—100的和
#include<iostream>
using namespace std;
int add(int x)
{
if (x > 0)
{
return x + add(x - 1);
}
else
{
//终止条件:当x=0时,add(0)=0
return 0;
}
}
int main()
{
cout << add(100) << endl;
return 0;
}