若想定义一个求x的n次方的函数,设传给函数的幂次n为整数,则以下四个函数中正确的是______。
A
double mypow(double x,int n)
{
int signednum, i;
double mul = 1.0;
if(n >=0) signednum = 1;
else
{
signednum = -1;
n = -n;
}
for(i=1;i< =n;i++)
mul *= x;
if(signednum == -1)
mul = 1.0/mul;
return mul;
}
B
double mypow(double x,int n)
{
int i;
double mul=1.0;
n=fabs(n);
for(i=1;i< =n;i++)
mul *= x;
return mul;
}
C
double mypow(double x, int n)
{
int i;
double mul = 1.0;
if(n >0)
{
for(i=1;i< =n;i++)
mul *= x;
}
else
{
for(i=n;i >=0;i--)
mul*=1.0/x;
}
return mul;
}
D
double mypow(double x, int n)
{
int i;
double mul=1.0;
if(n >= 0)
{
for(i=0;i< =n;i++)
mul *=x;
}
else
{
for(i=n;i >=0;i--)
mul *= 1.0/x;
}
return mul;
}