求X的N次方
方法1:直接用库函数double pow( double base, double exp );
方法2:非递归求解
方法3:递归求解
详见代码:
#include<stdio.h>
#include<math.h>
//方法2:非递归求解
int x_power_y1(int x,int y)
{
int temp=1;
for(int i=0; i<y; i++) {
temp=temp*x;
}
return temp;
}
//方法3:递归求解
int x_power_y2(int x,int y)
{
if(y==0) {
return 1;
} else {
return x*x_power_y2(x,y-1);
}
}
int main()
{
//测试方法1:直接用库函数double pow( double base, double exp );
printf("pow()=%f\n",pow(2,3));
//测试方法2:
printf("x_power_y1(2,3)=%d\n",x_power_y1(2,3));
//测试方法3:
printf("x_power_y2(2,3)=%d\n",x_power_y2(2,3));
return 0;
}