首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

百度知道上有人有个有关问题。自己看了也并不明白。关于递归调用的。求大神知道

2013-09-05 
百度知道上有人有个问题。自己看了也并不明白。。关于递归调用的。求大神知道如题:void fzx(int n){if(n/10!0

百度知道上有人有个问题。自己看了也并不明白。。关于递归调用的。求大神知道
如题:
void fzx(int n)
{if(n/10!=0)fzx(n/10);
cout<<n%10<<"\t";
}
这是个递归问题,题目中说输入3456,按上面的可以得出3456,先听我说下我的思路看对不对,输入3456,3456/10不为0,则调用fzx(345),一直继续下去,直到3/10=0,这样就看下面的cout,则输出为3%10=3,结束,可是答案为什么是3456,我看答案有时回归,求大神解答

C++ 递归
[解决办法]
这是递归回溯过程打印,自然是反着,也是正确的.
[解决办法]
递归过程为:
fzx(3456)
    fzx(345)
        fzx(34)
            fzx(3)
            cout << 3%10 << "\t"
        cout << 34%10 << "\t"
    cout << 345%10 << "\t"
cout << 3456%10 << "\t"

所以结果是
3   4   5   6

热点排行