思路:
- 先判断底数是不是0或者1; 如果是0的话 那么指数不能是负数;如果是1那么值为它本身
- 如果指数是0的话 那么结果1;当然0的0次方除外;
class Solution {
public:
double Power(double base, int exponent)
{
if(base==0)//如果底数是0;结果为0;
return 0;
if(base==1)//如果底数为1结果为1;
return 1;
int abs_exponent=((exponent<0)?(-exponent):exponent);//先求指数的绝对值;
double result=1.0;//让初始值为1.0;结果值为double值;
while(abs_exponent!=0)
{
result*=base;
abs_exponent--;
}
if(exponent>0)
return result;
else
return 1/result;
}
};