请问怎么理解C#的递归调用?
答案:1 悬赏:30 手机版
解决时间 2021-12-04 09:18
- 提问者网友:爱唱彩虹
- 2021-12-03 19:16
请问怎么理解C#的递归调用?
最佳答案
- 五星知识达人网友:三千妖杀
- 2021-12-03 20:14
最好的办法是自己调试。看的最清楚。
递归调用就是 函数内部的某一句调用函数本身。递归调用函数体内部必须有终止条件,就像循环一样,不然会无限递归导致程序堆栈不够用,然后报错。追问那么根据例子,return temp+x是temp 和x每变一次就返回给sum进行记录,在得到具体的temp值后再进行输出?还是在return temp+x中进行记录每次循环结果,得到temp实值再返回给sum?追答temp先接收上一次的累加值,然后又与X累加又返回给temp 当X=1 时 函数不再调用本身。递归调用结束。
sum不记录,sum只是得到最终结果。每次累加是在 temp+x中记录的,这个结果最后又通过temp = getadd(x-1)赋给temp
递归调用就是 函数内部的某一句调用函数本身。递归调用函数体内部必须有终止条件,就像循环一样,不然会无限递归导致程序堆栈不够用,然后报错。追问那么根据例子,return temp+x是temp 和x每变一次就返回给sum进行记录,在得到具体的temp值后再进行输出?还是在return temp+x中进行记录每次循环结果,得到temp实值再返回给sum?追答temp先接收上一次的累加值,然后又与X累加又返回给temp 当X=1 时 函数不再调用本身。递归调用结束。
sum不记录,sum只是得到最终结果。每次累加是在 temp+x中记录的,这个结果最后又通过temp = getadd(x-1)赋给temp
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯