题目
递归函数是指( )。A. 在一个函数内部通过调用自己完成问题的求解B. 在一个函数内部通过不断调用其他函数完成问题的求解C. 一个函数不断被其他函数调用完成问题的求解D. 把函数作为参数的一种函数
递归函数是指( )。
A. 在一个函数内部通过调用自己完成问题的求解
B. 在一个函数内部通过不断调用其他函数完成问题的求解
C. 一个函数不断被其他函数调用完成问题的求解
D. 把函数作为参数的一种函数
题目解答
答案
A. 在一个函数内部通过调用自己完成问题的求解
解析
递归函数的核心特征是函数在定义中调用自身,通过分解问题为更小的子问题来解决问题。本题需明确区分递归与其他函数调用方式的不同:
- 关键点:递归强调函数内部直接调用自身,而非调用其他函数或被外部多次调用。
- 常见误区:选项B、C、D分别涉及调用其他函数、被其他函数调用、函数作为参数,这些均与递归无关。
选项分析
A. 在一个函数内部通过调用自己完成问题的求解
- 正确。递归函数通过自身调用自身,将大问题拆解为小问题。例如:
def factorial(n): if n == 0: return 1 return n * factorial(n-1)函数
factorial在内部调用自身,直到n=0时终止。
B. 在一个函数内部通过不断调用其他函数完成问题的求解
- 错误。调用其他函数属于普通函数调用,与递归无关。
C. 一个函数不断被其他函数调用完成问题的求解
- 错误。递归强调函数自身调用自身,而非被外部多次调用。
D. 把函数作为参数的一种函数
- 错误。这是对高阶函数的描述,与递归无关。