编写求x的n次方的递归函数,在主函数调用并输出。
时间: 2023-06-02 20:04:51 浏览: 202
好的,这是一个关于编程的问题,可以回答。以下是一个C++代码的例子:
```
#include <iostream>
using namespace std;
int power(int x, int n){
if(n == 0){
return 1;
}
else{
return x * power(x, n-1);
}
}
int main(){
int x, n;
cout << "请输入x和n:" << endl;
cin >> x >> n;
cout << x << "的" << n << "次方是:" << power(x, n) << endl;
return 0;
}
```
在这个程序中,我们首先定义了一个名为power的递归函数,用于计算x的n次方。如果n等于0,则函数直接返回1;否则,函数会调用自身,并将n-1作为新的n值传递进去。在主函数中,我们首先接收用户输入的x和n值,然后调用power函数,最终输出结果。
相关问题
编写求x的n次方的递归函数,在主函数调用并输出。C语言
好的,我可以帮你编写一个求x的n次方的递归函数,在主函数调用并输出。以下是代码:
```
#include <stdio.h>
double power(double x, int n) {
if (n == 0) {
return 1;
} else {
return x * power(x, n - 1);
}
}
int main() {
double x;
int n;
printf("请输入一个实数x:");
scanf("%lf", &x);
printf("请输入一个整数n:");
scanf("%d", &n);
printf("%lf的%d次方为%lf", x, n, power(x, n));
return 0;
}
```
你可以把这段代码复制到你的编辑器中,然后运行它,输入x和n,就可以求出x的n次方了。如果你有其他问题,欢迎随时问我。
编写求x的n次方的递归函数,在主函数调用并输出。(x为double型,n为整型,函数类型为double型)
好的,我明白了。以下是相应的代码实现:
```c++
#include <iostream>
using namespace std;
double pow(double x, int n) {
if (n == 0) {
return 1;
}
double t = pow(x, n / 2);
if (n % 2) {
return x * t * t;
} else {
return t * t;
}
}
int main() {
double x;
int n;
cout << "请输入底数x和指数n: ";
cin >> x >> n;
double res = pow(x, n);
cout << x << "的" << n << "次方为:" << res << endl;
return 0;
}
```
以上的代码中,我们使用了递归的方式实现求x的n次方。主函数中输入了底数x和指数n,然后调用了求幂的函数,并输出结果。在函数内部,如果n为0,则返回1;如果n为奇数,则返回x * (t * t);如果n为偶数,则返回t * t。其中,t代表递归计算中的中间值。
阅读全文