以下有关递归过程调用的叙述中,错误的是()
A.可能需要执行递归过程很多次,因而时间开销大
B.每次递归调用都会生成一个新的栈帧.因而空间开销大
C.每次递归调用在栈帧中保存的返回地址都不相同
D.递归过程第一个参数的有效地址为R[ebp]+8
A.可能需要执行递归过程很多次,因而时间开销大
B.每次递归调用都会生成一个新的栈帧.因而空间开销大
C.每次递归调用在栈帧中保存的返回地址都不相同
D.递归过程第一个参数的有效地址为R[ebp]+8
第1题
下列关于函数的递归调用描述不正确的是()
A.函数的递归调用就是函数对自身的调用
B.向下的递归调用过程被称为是"递归过程"
C.向上携带返回表达式的过程被称为是"回溯过程"
D.递归过程必须解决的问题有三个
第2题
A.尾递归是一种递归,它首先执行计算,然后进行递归调用。
B.尾递归当前步骤的结果被传递到下一个递归调用。
C.尾递归遵循一个实现规则: 递归调用必须是方法的最后一次调用。
D.要将递归声明为尾递归,需要在递归函数之前使用tail修饰符。
第3题
以下叙述中正确的是
A.函数既可以直接调用自己,也可以间接调用自己
B.任何情况下都不能用函数名作为实参
C.函数的递归调用不需要额外开销,所以效率很高
D.简单递归不需要明确的结束递归的条件
第5题
A.在Sub或Function过程中不能再定义其他Sub或Function过程
B.在调用过程时,与使用ByRef说明的形参对应的实参只能按地址传递方式结合
C.递归过程既可以是递归Function过程,也可以是递归Sub过程
D.在调用过程时,形参为数组的参数对应的实参只能是数组
第6题
A.递归是将一个规模较大的问题分解为若干个规模较小的子问题
B.递归算法中拆分出来的子问题可以与原问题不同
C.递归函数至少要有一个出口,也就是判断结束调用的条件来结束递归体
D.递归算法按照先递推再回归的过程执行
第7题
关于递归调用不正确的描述是()。
(A)递归调用和嵌套调用都是通过堆栈管理实现的
(B)函数直接或间接调用自己称为递归调用
(C)递归终止条件必须为参数值等于0
(D)递归算法的问题规模必须是逐步缩小的
第10题
A.一般来说,递归函数的执行效率高于非递归函数
B.边界条件和递归关系是递归函数编写的关键
C.递归函数的嵌套调用次数没有限制
D.递归函数不可以改写为非递归函数