用C++语言编写程序,递归函数
设计一个递归函数,求x的n次幂,其中n为非负整数。在main函数中输入x和一个整数n,输出x的n次幂。...
设计一个递归函数,求x的n次幂,其中n为非负整数。在main函数中输入x和一个整数n,输出x的n次幂。
展开
6个回答
展开全部
1、在数学上,关于递归函数的定义如下:对于某一函数f(x),其定义域是集合A,那么若对于A集合中的某一个值X0,其函数值f(x0)由f(f(x0))决定,那么就称f(x)为递归函数。 在编程语言孝困返中,把直接或间接地调用自身的函数称为递归函尺姿数。函数的构建通常需要一个函数或者一个过程来完成。
2、递归函数 是建立在嵌套的基础上的,只不过嵌套调用了自己本身,而且经常不是显式调用。一个含直接或间接调用本函数语句的函数被称之为递归函数,它必须满足以巧饥下两个条件:
1) 在每一次调用自己时,必须是(在某种意义上)更接近于解;
2) 必须有一个终止处理或计算的准则。
例如一个非法的递归(嵌套)调用:
void ff(){
ff();
}
int main()
{
ff();
system("pause");
return 0;
}
2、递归函数 是建立在嵌套的基础上的,只不过嵌套调用了自己本身,而且经常不是显式调用。一个含直接或间接调用本函数语句的函数被称之为递归函数,它必须满足以巧饥下两个条件:
1) 在每一次调用自己时,必须是(在某种意义上)更接近于解;
2) 必须有一个终止处理或计算的准则。
例如一个非法的递归(嵌套)调用:
void ff(){
ff();
}
int main()
{
ff();
system("pause");
return 0;
}
2014-10-23
展开全部
#include <stdio.h>手敲,未测岁扰。
int doit(int x,int n)
{
if(n==1)
return x;
else
return x*doit(x,n-1);
}
void main()
{
int x,n;
printf("Please input x and n:");
培败scanf("%d %d",&x,&n);
if(x <= 0 || n <= 0)
{
printf("\nInput 乎中旦error.");
}
else
{
printf("\nResult is:%d"),doit(x,n));
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
float digui(float x,int n)//递归函数
{
if(n==1)
return x;
扰逗 else
大桥 return x*digui(x,n-1);
}
void main()
{
float x,f;
int n;
printf("请输入x的值:\n");
scanf("%f",&x);
printf("请输入n的值:\n");
scanf("%d",&n);
f = digui(x,n);
printf("缓仿卖x的n次幂: %0.3f\n",f);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
using namespace std;
int fabs(int x,int 枣郑n)
{
if(n 行烂== 1)
return x;
else
return x 档岩漏* fabs(x,n-1);
}
int main()
{
int x,n,result;
cout<<"input x,n:";
cin>>x;
cin>>n; //可以对n进行非负数判断
result = fabs(x,n);
cout<<"result:"<<result<<endl;
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
using namespace std;
int pow(int x,int n)
{
if(n == 1)return x;
return x * pow(x,n-1);
}
int main()
{
int x,n;
cin >模昌> x >> n;
cout <圆码郑橘颂< "pow:" << pow(x,n) << endl;
return 0;
}
using namespace std;
int pow(int x,int n)
{
if(n == 1)return x;
return x * pow(x,n-1);
}
int main()
{
int x,n;
cin >模昌> x >> n;
cout <圆码郑橘颂< "pow:" << pow(x,n) << endl;
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询