标题:这个循环的具体执行过程???
只看楼主
冲冲走过
Rank: 2
等 级:论坛游民
帖 子:69
专家分:72
注 册:2011-10-2
结帖率:91.67%
 问题点数:0 回复次数:3 
这个循环的具体执行过程???
int power(int a, int n)
{
    if(n==0)
        return 1;
    if(n&1)
        return a*power(a, n-1);
    else
        return power(a*a, n>>1);

}

int main()
{
    int i;

    for(i=0; i<10; ++i)
        cout<<power(2, i)<<endl;


    return 0;
}
总体分析下这个算法的执行过程!!!
1.return语句的返回是如何进行的?
2.当i为奇数时if怎么进行呢?

搜索更多相关主题的帖子: return power 
2011-10-17 16:21
chtml小兵
Rank: 5Rank: 5
等 级:职业侠客
威 望:3
帖 子:126
专家分:314
注 册:2011-10-3
得分:0 
打断点

做个程序员吧,在里面找到万千对象~~~~~~
百名书阁(bmbook.5d6d)__最全IT图书免费下载中心
net图书资料/软件工具大全____免费!!!
各种编程语言教程应有尽有
2011-10-19 16:06
青枫赤竹
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-10-19
得分:0 
LZ 你把C++程序贴到C#专区就是你的不对了
这是一个简单的递归函数,当n==0是返回1;
当n与1进行位与运算为真时相当于在上次的基础上乘2,并使n--;
为假时将2*2,和n右移一位作为参数在调用这个函数直到n==0
2011-10-19 16:27
青枫赤竹
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-10-19
得分:0 
失误
  a*a说成2*2l。。。。。。。
2011-10-19 16:30



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




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

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