开发者社区> 问答> 正文

求解:C++ 乘方运算 递归算法. 谢谢!

int p(int x,int y){ int k; if (y=1) k=x; else k= p(x,y-1)*x; return k;}p(3,5)结果为3. 为什么?

展开
收起
知与谁同 2018-07-16 18:11:46 2464 0
2 条回答
写回答
取消 提交回答
  • 条件错了,应该是if(y==1)不然y=1永远为真,及执行k=x,然后返回k,不管p(x,y)中x,y为多少,返回的都是x的值
    2019-07-17 22:55:04
    赞同 展开评论 打赏
  • 这个时候,玄酱是不是应该说点什么...
    if(y=1)是将1赋值给y,结果为真,所以压根就不会进入else
    if(y==1)才是判断语句
    2019-07-17 22:55:04
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
使用C++11开发PHP7扩展 立即下载
GPON Class C++ SFP O;T Transce 立即下载
GPON Class C++ SFP OLT Transce 立即下载