标题:用递归写了个求x 的n次幂的函数,结果错了,求指教
取消只看楼主
好笨的鸟
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-4-5
结帖率:100%
 问题点数:0 回复次数:0 
用递归写了个求x 的n次幂的函数,结果错了,求指教
代码如下,运行结果老是出错求指教
#include<iostream>
int main()
{
    using namespace std;
    //求x 的n次幂
    double x,n,y;
    y = 1;
    int z = 0;
    double xn(double x,double n,double y,int z);
    cout<<"请输入 x 和 n : ";
    cin >> x >> n;
    cout << endl
          << "x 的 n 次幂为 :"
          << xn(x,n,y,z);
}
double xn (double x,double n,double y,int z)
{
    if ( z = 0 )                    //定义了z 在第一轮判断 n >0 or n ==0 or n < 0
    {
        z = 1;
        if ( n > 0 )
            xn (x,n,y,z);
        if ( n == 0 )
            if ( x == 0 ) return 0;
            else return 1;
        if ( n < 0 )
        {    n = -n;
            xn (1/x,n,y,z);
        }
    }
    else
    {
        y *= x;
        if ( --n > 0 )
            xn(x,n,y,z);
        else return y;
    }
}
搜索更多相关主题的帖子: include double 
2013-04-05 15:07



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




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

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