码迷,mamicode.com
首页 > 编程语言 > 详细

C语言习题【7】递归实现n的k次方

时间:2020-03-19 09:24:23      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:turn   递归   使用   main   scan   pow   int   实现   ret   

编写一个函数实现n的k次方,使用递归实现。

#include<stdio.h>
int my_pow(int m, int n)
{
 if (m > 0)
 {
  if (n > 0)
  {
   return m * my_pow(m, n - 1);
  }
  else
   return 1;
 }
 else if (m < 0)
 {
  if (n % 2 == 0)
  {
   m = -m;
   return my_pow(m, n);
  }
  else
  {
   if (n > 0)
   {
    return m * my_pow(m, n - 1);
   }
   else
    return 1;
  }

 }
 else
  return 1;
}
int main()
{
 int m, n;
 scanf("%d %d", &m, &n);
 int sum = my_pow(m, n);
 printf("%d", sum);
 return 0;
}

C语言习题【7】递归实现n的k次方

标签:turn   递归   使用   main   scan   pow   int   实现   ret   

原文地址:https://blog.51cto.com/14737345/2479832

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!