用C++语言编写程序,递归函数

设计一个递归函数,求x的n次幂,其中n为非负整数。在main函数中输入x和一个整数n,输出x的n次幂。... 设计一个递归函数,求x的n次幂,其中n为非负整数。在main函数中输入x和一个整数n,输出x的n次幂。 展开
 我来答
tattackor
推荐于2016-03-02 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:872万
展开全部
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;
}
匿名用户
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));
    }
}
手敲,未测岁扰。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
夜礼服假面MP
2014-10-23 · TA获得超过3437个赞
知道大有可为答主
回答量:1034
采纳率:77%
帮助的人:349万
展开全部
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);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小雯杀猪
2014-10-23 · 超过42用户采纳过TA的回答
知道答主
回答量:100
采纳率:0%
帮助的人:88.2万
展开全部
#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;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
幻之勇
2014-10-23 · TA获得超过661个赞
知道小有建树答主
回答量:370
采纳率:0%
帮助的人:389万
展开全部
#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;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式