#include <stdio.h>
double Pow(double x, unsigned int n)
{
double temp = 1;
if(n == 0)
return 1;
while(n > 1)
{
if(n % 2 == 0)
{
x *= x;
n /= 2;
}
else
{
temp *= x;
x *= x;
n /= 2;
}
}
x *= temp;
return x;
}
int main()
{
double x;
unsigned int n;
printf("Please enter the base and exponent:\n");
scanf("%lf %d", &x, &n);
printf("The answer:%f\n", Pow(x, n))
}
不用递归快速求幂(C语言)
最新推荐文章于 2022-12-31 10:15:41 发布