编写一个函数实现n^k,使用递归实现
使用尾递归的方法,当传入的参数k等于0的时候返回num;
参数不为0是返回num*num(每使用一次递归调用一次函数k都要减去1)
递归必须要有限定条件,否则递归会无限制的进行下去,程序会出现溢出的崩溃问题
#include<stdio.h>
#include<stdlib.h>
int power(int num, int k)
{
k--;
if (k == 0)
return num;
else
return num*power(num, k);
}
int main()
{
int n = 0;
int k = 0;
scanf("%d%d", &n, &k);
printf("%d\n", power(n, k));
system("pause");
return 0;
}
转载于:https://blog.51cto.com/iynu17/1711613