(1)什么是递归程序? (2)递归程序的优、缺点是什么? (3)递归程序在执行时,应借助于什么来完成? (4)递归程序的入口语句、出口语句一般用什么语句实现?
(1)一个函数在结束本函数运行之前,直接或间接调用函数自身,称为递归。例如,函数f在执行中又调用函数f自身,称为直接递归;若函数f执行中调用函数g,而g执行中又调用函数f,这称为间接递归。在实际应用中,多为直接递归,也常称为递归。[br][/br] (2)递归程序的优点是程序结构简单、易读、清晰,易证明其正确性。缺点是执行中占用内存空间较多,运行效率低,不易优化。 (3)递归程序执行过程中需借助栈这种数据结构来实现。 (4)递归程序的入口语句和出口语句一般用条件判断语句来实现。
本题目来自[网课答案]本页地址:https://www.wkda.cn/ask/eeezozotzozyapjo.html
举一反三
内容
- 0
在系统实现递归调用时需利用递归工作记录保存(),当递归调用程序执行结束时通过它将控制转到上层调用程序。 A: 调用地址 B: 递归入口 C: 返回地址 D: 递归出口
- 1
一般情况下,将递归程序转化成为非递归程序应该设置 (1) ,但是消除 (2) 时不需要使用。 2() A: 直接递归 B: 间接递归 C: 尾递归 D: 递推
- 2
下面的程序的功能是什么?函数递归函数递归函数递归输入数字<br> A: 用递归方式求n的阶乘 B: 求1!+2!+3!+……+n! C: 求n的累加和 D: 判断闰年程序。
- 3
下函数递归函数递归输入数字<br>面的程序的功能是什么?函数递归 A: 用递归方式求n的阶乘 B: 求1!+2!+3!+……+n! C: 求n的累加和 D: 判断闰年程序。
- 4
什么是直接递归和间接递归?消除递归一般要用到什么数据结构?