标题:将递归调用改为循环
只看楼主
清白小生
Rank: 2
来 自:深圳
等 级:论坛游民
帖 子:15
专家分:16
注 册:2016-11-3
结帖率:33.33%
已结贴  问题点数:10 回复次数:1 
将递归调用改为循环
int foo(int x,int y)
{
    if(x<=0 || y<=0) return 1;
    return 3*foo(x-1,y/2);
}

求教一下怎么将上面的改为循环法啊
2017-02-23 18:38
yslief
Rank: 5Rank: 5
来 自:水泊
等 级:职业侠客
帖 子:57
专家分:340
注 册:2016-11-14
得分:10 
程序代码:
#include<stdio.h>
int main(void)
{
    
    int s=1;
    int x=8, y=20;
    for(; x>0 && y>0; )
    {
        s*=3;
        x-=1;
        y/=2;
    }
    
    printf("%d", s*=1);
    
    return 0;
}
2017-02-23 20:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-474485-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018960 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved