用c语言编写递归求幂函数
时间: 2023-12-20 11:11:29 浏览: 45
以下是用 C 语言编写的递归求幂函数:
```c
#include <stdio.h>
double power(double base, int exponent);
int main()
{
double base;
int exponent;
printf("Enter base: ");
scanf("%lf", &base);
printf("Enter exponent: ");
scanf("%d", &exponent);
double result = power(base, exponent);
printf("%lf ^ %d = %lf", base, exponent, result);
return 0;
}
double power(double base, int exponent)
{
if (exponent == 0) {
return 1;
} else if (exponent < 0) {
return 1 / power(base, -exponent);
} else {
return base * power(base, exponent - 1);
}
}
```
这个函数的实现比较简单,它使用了递归的思想,将求幂的问题转化为了多次相乘的问题。当指数为 0 时,返回 1;当指数为负数时,先将指数取绝对值,然后将结果取倒数;当指数为正数时,递归调用函数,每次将指数减 1,并将结果与基数相乘。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)