跳到主要内容

C 编程:计算一个数字的幂

要理解这个例子,你应该掌握以下 C语言编程 主题的知识:

下面的程序从用户那里获取两个整数(一个基数和一个指数),并计算幂。

例如:在 2^3 的情况下

  • 2 是基数
  • 3 是指数
  • 幂等于 2*2*2

使用 while 循环计算数字的幂

#include <stdio.h>
int main() {
int base, exp;
long double result = 1.0;
printf("请输入一个基数:");
scanf("%d", &base);
printf("请输入一个指数:");
scanf("%d", &exp);

while (exp != 0) {
result *= base;
--exp;
}
printf("答案 = %.0Lf", result);
return 0;
}

输出

请输入一个基数:3
请输入一个指数:4
答案 = 81

我们也可以使用 pow() 函数来计算一个数字的幂。

使用 pow() 函数计算幂

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

int main() {
double base, exp, result;
printf("请输入一个基数:");
scanf("%lf", &base);
printf("请输入一个指数:");
scanf("%lf", &exp);

// 计算幂
result = pow(base, exp);

printf("%.1lf^%.1lf = %.2lf", base, exp, result);
return 0;
}

输出

请输入一个基数:2.3
请输入一个指数:4.5
2.3^4.5 = 42.44

上面的程序只能计算基数的幂,如果指数是正数。对于负指数,使用以下数学逻辑:

base(-exponent) = 1 / (baseexponent)

例如,

2-3 = 1 / (2^3)