计算一个数的 n 次方,例如: 23,其中 2 为基数,3 为指数,我来为大家科普一下关于c语言中计算一个数的n次方的算法?下面希望有你要的答案,我们一起来看看吧!

c语言中计算一个数的n次方的算法(语言实例-计算一个数的)

c语言中计算一个数的n次方的算法

计算一个数的 n 次方,例如: 23,其中 2 为基数,3 为指数。

实例 - 使用 while

#include <stdio.h>

int main()

{

int base, exponent;

long long result = 1;

printf("基数: ");

scanf("%d", &base);

printf("指数: ");

scanf("%d", &exponent);

while (exponent != 0)

{

result *= base;

--exponent;

}

printf("结果:%lld", result);

return 0;

}

运行结果:

基数: 2 指数: 3 结果:8

实例 - 使用 pow() 函数

#include <stdio.h>

#include <math.h>

int main()

{

double base, exponent, result;

printf("基数: ");

scanf("%lf", &base);

printf("指数: ");

scanf("%lf", &exponent);

// 计算结果

result = pow(base, exponent);

printf("%.1lf^%.1lf = %.2lf", base, exponent, result);

return 0;

}

运行结果:

基数: 2 指数: 3 2.0^3.0 = 8.00

实例 - 递归

#include <stdio.h>

int power(int n1, int n2);

int main()

{

int base, powerRaised, result;

printf("基数: ");

scanf("%d",&base);

printf("指数(正整数): ");

scanf("%d",&powerRaised);

result = power(base, powerRaised);

printf("%d^%d = %d", base, powerRaised, result);

return 0;

}

int power(int base, int powerRaised)

{

if (powerRaised != 0)

return (base*power(base, powerRaised-1));

else

return 1;

}

,