编写一个函数实现n^k, 使用递归实现
指数为负的时候, 很容易翻车, 注意好这点就行了~
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
double func(int n, int k)
{
if (k == 0)
return 1;
else if (k > 0)
return n * func(n, k - 1);
else
return 1.0 / func(n, -k);
}
int main()
{
int n, k;
double ans = 0;
printf("输入n,k:\n");
scanf("%d,%d", &n, &k);
ans = func(n, k);
printf("%f\n", ans);
return 0;
}