递归函数有三点要求:

1,递归的终止点,即递归函数的出口
2,不断的递归调用自身
3,递归函数主体内容,即递归函数需要做的事情
ps:3一般可以放在2的前面或者后面,一般1放最前面。另外,2和3可以根据不同的需要合并,比如,有时候递归函数的主体就是返回调用下层函数所得到的结果。
void fun(int n){ if(n<=0) return; //1 这是递归的终点,即出口 fun(n-1); //2、递归函数自身的调用 cout< 需要明白的是 函数嵌套是语言特性,递归调用是逻辑思想。 函数嵌套允许在一个函数中调用另外一个函数,比如有三个函数 funca() { funcb(); } funcb() { funcc(); } funcc() { cout