利用归递函数计算x的n次幂,用C语言代码示例。
时间: 2024-02-21 14:58:17 浏览: 96
好的,这是一个简单的C语言代码示例,用于计算x的n次幂,使用了递归函数:
```c
#include <stdio.h>
double power(double x, int n) {
if (n == 0) {
return 1;
} else if (n % 2 == 0) {
double temp = power(x, n / 2);
return temp * temp;
} else {
double temp = power(x, (n - 1) / 2);
return x * temp * temp;
}
}
int main() {
double x;
int n;
printf("请输入 x:");
scanf("%lf", &x);
printf("请输入 n:");
scanf("%d", &n);
printf("%lf 的 %d 次幂为:%lf\n", x, n, power(x, n));
return 0;
}
```
在上面的代码中,我们定义了一个名为`power`的递归函数,它接收两个参数:底数`x`和指数`n`。如果`n`为0,则返回1。如果`n`为偶数,则返回`x`的`n/2`次幂的平方。如果`n`为奇数,则返回`x`乘以`x`的`(n-1)/2`次幂的平方。最后,在`main`函数中,我们从用户输入中获取`x`和`n`,并使用`power`函数计算`x`的`n`次幂。
阅读全文