浙教版(2019)信息技术选考二轮复习系列专题配套练习——python自定义函数和递归函数专题

2023-01-29
| 2份
| 5页
| 1140人阅读
| 34人下载

内容正文:

Python自定义和递归函数专题 班级 姓名 1.有如下python程序段: def double_fac(m): if m==1 or m==2: return m else: return double_fac(m-2)*m n=int(input("请输入一个正整数n:")) sum=0 for m in range(1,n+1): sum+=double_fac(m) print(sum) 若输入n的值为5,则程序运行后,输出sum的值为( ) A.14 B.15 C.29 D.77 2.小明学习了算法后,写了以下两段代码来求斐波那契数列的第6项 下列说法正确的是( ) A.两种算法的时间复杂度均为O(1) B.算法一是迭代算法,算法二是递归算法,相比之下,算法二的时间效率更高 C.执行算法二代码,f(4)共被调用了2次 D.执行算法一代码,当i=4这一遍循环刚结束时,a的值等于5 3.有如下两个Python程序段: 下列关于两个程序段的说法,正确的是( ) A.程序段1和程序段2的输出结果不相同 B.程序段1和程序段2都采用了递归算法 C.若问题规模为 n,程序段2的时间复杂度为O(n2) D.程序段1中,①和②两方框处中的数字1同时修改为0,输出结果不变 4.丑数是指不能被2、3、5以外的质数整除的数。判断丑数的自定义函数程序如下: def ugly(n): for i in[2,3,5]: while n%i==0: n=n//i return n==1 若调用执行自定义函数ugly(30),下列说法正确的是( ) A.函数返回值为False B.方框处程序应用了迭代算法 C.该程序的时间复杂度为0(n2) D.条件语句n%i=0执行了3次 5.将十进制正整数转化为二进制数,对应的python程序如下: def toStr(n,base): s="01" if n<base: return s[n] else: return n=int(input("请输入正整数:")) result=toStr(n,2) print(result) 则代码中处的语句可为( ) A.toStr(n//base,base)+s[n%base] B.s[n%base]+toStr(n//base,base) C.toStr(n%base,base)+s[n//base] D.s[n//base]+toStr(n%base,base) 6.有如下Python 程序段: def sp(a,i): if "a"<=a[i]<= "z": a=a[:i]+a[i+1:] elif "0"<=a[i]<= "9": a=a[:i]+str((int(a[i])+3)%10)+a[i+1:] return a s="cfi3H8qwz4" ; i=0 while i<len(s): s=sp(s,i) i+=1 执行上述程序段后,s的值为( ) A.”f3H1w4” B.”3H84” C.”6H17” D.”f6H1w7” 7.Python 自定义函数中允许为参数设置默认值,调用函数时,缺省参数的值如果没有传入,则被认为是默认值。某Python自定义函数如下: def px(a,x=1): if x==0: return a[0] if a[x]>a[x-1]: a[x],a[x-1]=a[x-1],a[x] y=px(a,x-1) return y 若数据d=[74,11,75,10,80,60,36,22],通过以下语句调用该函数后,结果正确的是( ) A.执行语句:ans=px(d) 变量 ans 的值:11 B.执行语句:ans=px(d,2) 变量

资源预览图

浙教版(2019)信息技术选考二轮复习系列专题配套练习——python自定义函数和递归函数专题
1
浙教版(2019)信息技术选考二轮复习系列专题配套练习——python自定义函数和递归函数专题
2
所属专辑
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。