Python代码:
""" i = 998 时,正常 i = 999 时,报错:maximum recursion depth exceeded in comparison 由此可知Python递归默认深度为 998 如果超过998,则最大递归深度至少+2 """ import sys def fact(n): if n==1: return 1 return n + fact(n - 1) i = 999 sys.setrecursionlimit(i+2) #设置最大递归深度,如果注释该行代码则执行报错 s = fact(i) print(" 1-%s的整数之和是:%s" % (i,s))
输出结果:
E:pythonalgorithm>python3 recursive.py 1-999的整数之和是:499500 E:pythonalgorithm>
=====结束=====