永发信息网

c#递归啊啊 啊?

答案:3  悬赏:60  手机版
解决时间 2021-01-24 04:51
  • 提问者网友:低吟詩仙的傷
  • 2021-01-23 17:14
好像多写了一个 乘号 谁知道怎么弄的 原理是啥
最佳答案
  • 五星知识达人网友:野慌
  • 2021-01-23 18:32
int fun(int a)
{
if(1 == a)
return ;
else
return fun(a -1);
}
这就是递归,说白了就是自己调用自己,直到满足条件为止
全部回答
  • 1楼网友:纵马山川剑自提
  • 2021-01-23 20:12
递归就是重复调用。只是每次调用的参数可能不同。 就拿你说的这个计算阶乘的方法来说; 当n=5时,调用fact(5),因为5不小于1,所以返回5*fact(4); 由于4也不小于1,所以fact(4)返回4*fact(3),整个式子返回5*4*fact(3); 一次类推,最后会得到5*4*3*2*fact(1),由于1还是不小于1,所以fact(1)将返回1*fact(0),整个式子返回5*4*3*2*1*fact(0); 由于0小于1,所以fact(0)返回1,整个式子返回5*4*3*2*1*1;它在数值上正好等于5的阶乘,不过最后一个1看着好像很便扭。 将代码改为 if(1==n) {return 1;}就不会出现最后一个1了。 最后要说的是 递归就是重复调用同一个方法,通过每次调用时传递不同的参数可达到不同的目的,求阶乘就是利用了这种思想。还有文件目录的遍历等都需要利用这种思想。
  • 2楼网友:持酒劝斜阳
  • 2021-01-23 19:46
递归就是一个函数自己调用自己,并且在内部设置了边界(就是设置了一个满足条件结束递归)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯