21xrx.com
2024-12-22 23:19:22 Sunday
登录
文章检索 我的文章 写文章
C语言中如何实现n次方运算
2023-06-17 03:07:48 深夜i     --     --
C语言 n次方 循环 递归 幂指数 底数

在C语言中,实现n次方运算时,可以通过循环或递归的方式来完成。具体实现方法如下:

1. 循环实现

利用for循环,将底数乘以自身n次,即可得到n次方的值。如下所示:


double power(double base, int exponent) {

  double result = 1.0;

  int i;

  for (i = 0; i < exponent; i++) {

    result *= base;

  }

  return result;

}

2. 递归实现

递归也是一种常用的实现方式。通过将幂指数不断减半,并且递归调用自身,直到幂指数为1时返回底数,即可得到n次方的值。如下所示:


double power(double base, int exponent) {

  if (exponent == 0)   // 幂指数为0时 else if (exponent > 0) {  // 幂指数为正整数时

    if (exponent % 2 == 0) {  // 幂指数为偶数时

      double factor = power(base, exponent / 2);

      return factor * factor;

    } else {  // 幂指数为奇数时

      double factor = power(base, (exponent - 1) / 2);

      return factor * factor * base;

    }

  } else {  // 幂指数为负整数时

    return 1.0 / power(base, -exponent);

  }

}

通过以上两种方法,即可在C语言中实现n次方运算。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复