您的位置:首页 > 其它

编写一个函数实现n^k,使用递归实现

2015-11-24 20:00 197 查看
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>

double my_pow(const double number, int n)
{
assert(number);
if (n > 0)
{
return number*my_pow(number, n - 1);
}
else if (n < 0)
{
return (1 / number)*my_pow(number, n + 1);
}
else
return 1;
}
int main()
{
double n = 0.0;
int k = 0;
printf("请输入n^k:\nn = ");
scanf("%lf", &n);
printf("k = ");
scanf("%d", &k);
printf("%lf^%d的结果为%lf\n", n, k, my_pow(n, k));
system("pause");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息