C/C++中的幂函数

时间:2020-02-23 14:30:02  来源:igfitidea点击:

在本文中,我们将了解C/C++中的幂函数。

幂函数计算底数的幂,并提高到指数数。

让我们通过一些示例更详细地了解此功能。

C/C++中Power函数的基本语法

函数pow()接受一个基数和一个指数,并返回值base(指数)。

所有这些值的类型均为" double"。

另外,该函数是<math.h>头文件的一部分,因此我们必须首先将其导入。

#include <math.h>

double pow(double base, double exponent);

如果输入的范围不正确,我们将得到" NAN"结果。

例如,如果" base"是负的有限值,而" exponent"是有限的非整数,则将得到域错误,因为负数的十进制幂是复数,因此不在范围内C数据类型。

现在来看一些示例。

在C/C++中使用Power函数–一些示例

我们先取两个整数,然后求出它们的幂。

#include <stdio.h>
#include <math.h>

int main() {
  int base = 3;
  int exponent = 5;

  int result = (int) pow(base, exponent);

  printf("Base = %d, Exponent = %d, Result = %d\n", base, exponent, result);

  return 0;
}

输出

Base = 3, Exponent = 5, Result = 242

如您所见,pow()确实计算了3 ^ 5 = 243。

现在让我们检查一下浮点数。

#include <stdio.h>
#include <math.h>

int main() {
  double base = 3.45;
  double exponent = 5.6;

  double result = pow(base, exponent);

  printf("Base = %.4lf, Exponent = %.4lf, Result = %.4lf\n", base, exponent, result);

  return 0;
}

输出

Base = 3.4500, Exponent = 5.6000, Result = 1027.5121

确实,它似乎也适用于浮点指数和基数!

让我们再举一个例子,它将使我们得到" NAN"结果。

include <stdio.h>
#include <math.h>

int main() {
  double base = -1;
  double exponent = 5.6;

  double result = pow(base, exponent);

  printf("Base = %.4lf, Exponent = %.4lf, Result = %.4lf\n", base, exponent, result);

  return 0;
}

输出

Base = -1.0000, Exponent = 5.6000, Result = -nan

其中由于-1 ^ 5.6是复数,因此它将成为nan值!因此,您必须非常小心以确保输入和输出不是nan值!