三天不读书,智商输给猪!——递归使用三要素

 2024-01-07 03:02:33  阅读 0

使用if条件来限制并在某种状态下递归调用自己。

(2)条件近似

通过一步一步的递归调用,应该接近if判断条件的方向。

停止递归(找到递归点)

(3)由大到小

每次递归都需要将一个大问题划分为子问题。

定义函数的具体思路

首先我们定义一个函数,我们调用一下,以免和库函数中的pow冲突(是不是可以弄个真孙悟空或者假孙悟空?)

递归实现阶乘c语言_c语言用递归写阶乘_实现利用递归计算阶乘表达式

至于参数,n代表底数,比如2^3,2的立方,n为2,k为3。结果是8

有条件限制

递归是有条件限制的(不能无限制递归,迟早要还钱的)

实现利用递归计算阶乘表达式_c语言用递归写阶乘_递归实现阶乘c语言

由于它是 n 的 k 乘法,因此每次递归后我们都会 k-1。

这样你就知道递归部分怎么写了吧~

条件近似

递归实现阶乘c语言_实现利用递归计算阶乘表达式_c语言用递归写阶乘

每次k-1是近似条件

每次循环最终结束时,都会卡在if的极限处~

最后检查

然而,我们仍然缺少一句话。 否则的话,之前的努力可能都白费了! ! ! !

实现利用递归计算阶乘表达式_递归实现阶乘c语言_c语言用递归写阶乘

函数如何执行递归? ?我们看图

c语言用递归写阶乘_实现利用递归计算阶乘表达式_递归实现阶乘c语言

完整代码

#include
//n^k
int my_pow(int n,int k)
{
	if(k>0)
	{
		return my_pow(n,k-1)*n;
	}
	return 1;
}
int main(void)
{	
	int ret = my_pow(4,4);
	printf("%d\n",ret);
	return 0;
}

附:

最近状态不错,要继续保持,继续写博客~

还有读书~~

俗话说:三天不学习,智商比猪还低。

标签: 递归 递归调用

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码