#include <stdio.h>
int f(int n)
{
int s=0,i;
if(n==0||n==1)
return 1;
for(i=n-1;i>=0;i--)
s+=f(i)*f(n-1-i);
return s;
}
int main()
{
int i;
for(i=1;i<=;i++)
printf("%d=%d\n",i,f(i));
return 0;
}
记过 1=1 2=2 3=5 4=14
过程不太了解憋了10多分钟,只知道1满足条件返回1 当n=2 我就算不明白了 ,有没有心细的人解答一下,蟹蟹
这是递归函数,n=2时候,进入这段代码:
for(i=n-1;i>=0;i--)
s+=f(i)*f(n-1-i);
可以计算得到,n=2,i=1开始循环,f(1)*f(2-1-1)=f(1)*f(0)=1,再加上n=1时候的1,s=2.
f(3)=f(1)+f(1)*f(0)+f(2)*f(1)
后面以此类推。
如有帮助,题主采纳一下