作业帮 > 综合 > 作业

递归函数计算x^n#include double fun(int n,double x);int main(void){

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/04/28 08:24:12
递归函数计算x^n
#include
double fun(int n,double x);
int main(void)
{
\x05int n;
\x05double x,root;
\x05scanf("%lf%d",&x,&n);
\x05root = fun(n,x);
\x05printf("Root = %0.2f\n",root);
}
double fun(int n,double x){
\x05int y;
\x05
\x05
\x05if(n==1) return x;
\x05else y=fun(n-1,x)*x;
\x05
\x05return y;
\x05
}
这段程序提交上去显示答案错误
但是把后面改成
double fun(int n,double x){
\x05int y;
\x05
\x05
\x05if(n==1) return x;
\x05else return fun(n-1,x)*x;
\x05
}
就对了
为什么呢.
递归函数计算x^n#include double fun(int n,double x);int main(void){
fun函数是double类型的,而返回的y是int类型,二者不匹配,将y强制为double类型就可以了