简单实现x的n次方
时间: 2023-09-11 17:11:22 浏览: 173
求x的n次方可以用循环或递归的方法实现,下面是两种方法的代码示例:
1. 循环实现:
```
double power(double x, int n) {
double result = 1.0;
for (int i = 0; i < n; i++) {
result *= x;
}
return result;
}
```
这个函数接受两个参数,x为底数,n为指数,返回x的n次方。函数通过循环计算x的n次方,并将结果存储在result变量中,最后返回result。
2. 递归实现:
```
double power(double x, int n) {
if (n == 0) {
return 1.0;
} else if (n > 0) {
double half = power(x, n / 2);
if (n % 2 == 0) {
return half * half;
} else {
return half * half * x;
}
} else {
return 1.0 / power(x, -n);
}
}
```
这个函数同样接受两个参数,x为底数,n为指数,返回x的n次方。函数通过递归实现计算x的n次方,当n为0时,返回1.0。当n为正数时,先计算x的n/2次方的结果half,然后判断n的奇偶性,如果n为偶数,返回half的平方,否则返回half的平方乘以x。当n为负数时,先计算x的-n次方,然后返回1.0除以该结果。
阅读全文