return f(m-1,n-1)+f(m-1,n)是怎么个运算法
#include"stdio.h"int f(int m, int n)
{
if(m==0) return 1;
if(n==0 || n==m) return 1;
return f(m-1,n-1)+f(m-1,n);
}
void main()
{
int m,n,H;
scanf("%d%d",&m,&n);
H=f(m,n);
printf("%d",H);
getch();
}
当输入m=3,n=2的时候。经过H=f(3,2)被上面一个函数调用。。经过两个if都不满足。。执行return f(m-1,n-1)+f(m-1,n);这时return f(3-1,2-1)+f(3-1,2).之后它是怎么运算的了。而得到返回值是一个整型数字。再比如我用了个输出是这样的printf("%d ",f(m,n)); 如果是m=3,n=2 那么他输出的是 1 2 就是不明白他是怎么运算出来得到1和2。