我想了解下面的程序,其中递归函数调用存在,但越来越困惑,而跟踪如何加载大头钉。难以理解连续递归调用
void func(char*); // function prototype
int main(){
func("123");
return 0;
}
void func(char a[]){
if(a[1]=='\0')
return;
func(a+1);
func(a+1);
printf("%c",a[1]);
}
的输出,这是3 3 2
希望如果有人能在这一个建议......
做这种多次递归调用以任何方式有益的或发现的应用具体问题领域..?
这是最经常使用的例如用于递归(未的网站,但Fibonacci数计算)::http://www.programmingsimplified.com/c-program执行NTF陈述可以通过这个公式获得-generate-fibonacci-series – RhinoDevel
的确,我使用斐波那契计算作为一个面试问题,要求候选人创建一个迭代和递归的解决方案。 –