我正在尝试在不使用 math.h/pow() 的情况下编写递归幂函数,但我不断收到 .h 的垃圾值-1.#IND
。我想我在调用 power 函数的新实例时遗漏了一些东西,但我不太明白如何绕过它。我的完整代码相当短:
#include <iostream>
using namespace std;
double power(double b, int e){
double x;
if(e == 0){
x = b;
}
else if(b == 0){
x = 1;
e = 0;
}
else if(e < 0){
x = (1 / b) * power(b, ++e);
}
else{
x = b * power(b, --e);
}
return x;
}
int main(){
double num;
int exp;
cout << "Please Enter Your Number: ";
cin >> num;
cout << "Please Enter The Explonent: ";
cin >> exp;
cout << power(num, exp);
cin >> num;
}