如果求取k的n次方,既可以用普通的方法实现,也可以用函数的递归来实现。
函数的递归即是自己调用自己的函数应用形式,即在main函数下定义一个函数,然后在这个函数内自己为了实现某个目的,函数自身反复调用自己来完成这个目标的形式叫做函数递归。
因此,这个算法的思路即是自己调用自己,每次实现调用函数时 *k,然后根据 n 的变化最终完成所有的k相乘,实现目标的求取。
#include
int del(int n, int k,int ant)
{
if (n != 1)
{
return del(n - 1, k,ant*k);
}
else
return ant*k;
}
int main()
{
int num = 0;
int n = 0;
int k = 0;
int tmp = 1;
scanf_s("%d%d", &n,&k);
num = del(k, n,tmp);
printf("%d", num);
system("pause");
return 0;
}