函数递归 羊

一、概念

函数体内调用本函数自身,直到符合某一条件不可继续调用。

二、应满足的条件

(1).有反复执行的过程(调用自身)。

(2).有跳出反复执行过程的条件(函数出口)。

三、注意事项

1.递归中必须要存在一个循环结束的条件。

2.递归函数的每次调用都需要栈来存储,如果次数太多的话容易造成栈溢出。




class Program { /// <summary> /// 每过一个村庄丢失之前的一般还多一只,7个村后还剩下2只 /// </summary> /// <param name="cun"></param> /// <returns></returns> public int yangshu(int cun) { int sum = 0; if (cun==7) { sum = 2; return sum; } sum = (yangshu(cun + 1) + 1) * 2;//5天为例:sum=(yangshu(cun+1)+1)*2→sum=(yangshu(5+1)+1)*2→sum=((yangshu(6+1)+1)*2+1)*2 return sum;//yangshu(5+1)=(yangshu(6+1)+1)*2 } static void Main(string[] args) { int sum = new Program().yangshu(0); Console.WriteLine(sum); Console.ReadLine(); } }

 

转载于:https://www.cnblogs.com/Mr-xue/p/4425751.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值