函数实现n的k次方,使用递归实现 要求:k可以正数或负数
1。具体代码
double power(int n, int k)//定义函数,用double'类型接收
{
if (k < 0)
{
k = -k;//化负为正
return 1 / (n*power(n, k - 1));
}
else if (k == 0)
{
return 1;
}
else if (k>0)
{
return n * power(n, k - 1);
}
}
int main()
{
int n;
int k;
printf("输入底数和指数: \n");
scanf("%d %d", &n, &k);
double ret = power(n, k);//调用函数
printf("%d^%d=%lf\n", n, k, ret);
return 0;
}
2.运行结果