C语言题.用递归法写一个求幂的函数,并在主函数实现调用.要用c语言,不要c++的。 提示

C语言题.用递归法写一个求幂的函数,并在主函数实现调用.要用c语言,不要c++的。提示:例如3∧4=81→①3∧4=3*3∧3,②3∧3=3*3∧2,3∧2=3*3∧1,... C语言题.用递归法写一个求幂的函数,并在主函数实现调用.要用c语言,不要c++的。 提示:例如3∧4=81→①3∧4=3*3∧3,②3∧3=3*3∧2,3∧2=3*3∧1,3∧1=3*3∧0。(当指数等于0时结果为1)。 int power(int x,int n) { } 展开
 我来答
帐号已注销
推荐于2017-12-16 · TA获得超过738个赞
知道小有建树答主
回答量:160
采纳率:0%
帮助的人:161万
展开全部

/*x^n的值必须小于32767,否则输出的就是负数。因为,int只有这么大,正常的pow函数应该是float型或是double型,参数也应是float或是double型。*/

 

#include <stdio.h>

int power(int x,int n)

{

     if (n>1)

     {

         return x*power(x,n-1);

     }

     else

     {

         if (n>0)

             return x;

         else

              return 1;

     }

}

 

void main()

{

      int x,n;

      printf("input x,n:");

      scanf("%d%d",&x,&n);

      printf("%d",power(x,n));

      getch();

      clrscr();

}

 

 

blackangel165
2013-04-25 · TA获得超过237个赞
知道答主
回答量:249
采纳率:0%
帮助的人:119万
展开全部
int power(int x , int n)
{
If(n==0)return 1;
Return x*power(x, n-1);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
koa875
2013-04-25 · TA获得超过183个赞
知道答主
回答量:39
采纳率:0%
帮助的人:51万
展开全部
#include<stdio.h>
int main()
{
int pow(int,int);
int a,b;
scanf("%d%d",&a,&b);
printf("%d",pow(a,b));
return 0;
}
//以下是求幂的函数
int pow(int a,int b)
{
if(b==0)
return 1;
else
return a*pow(a,b-1);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
万杨1
2013-04-25 · 超过34用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:84.6万
展开全部
if(n==0) return 1;
else
x*power(x,n-1);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式