2025届信息技术一轮复习练习:专题16 算法思想(含答案).docxVIP

2025届信息技术一轮复习练习:专题16 算法思想(含答案).docx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

专题16算法思想

知识点递归算法

1.斐波那契数列:1,1,2,3,5,8,13,…现用递归算法求解第n项,代码如下:

deffib(n):

if(n2):

returnfib(n-1)+fib(n-2)

return1

n=int(input(输入一个整数))

print(fib(n))

程序执行时,输入一个整数5,则函数fib被第3次调用时的返回值为()

A.2 B.3

C.5 D.8

2.阅读以下程序:

deff(x):

ifx5orx1:

return无法计算

elifx==5:

return1

else:

return(f(x+1)+1)*2

若输入的x为2,则函数返回值为()

A.22 B.10

C.11 D.无法计算

3.有如下Python程序段判断是否为素数:

frommathimportsqrt

defprime(x,y):

ifyint(sqrt(x))+1:

return____________

elifx2orx%y==0:

return____________

else:

return____________

a=int(input(″请输入正整数:″))

ifprime(a,2):

print(a,″是素数!″)

else:

print(a,″不是素数!″)

划线处应填代码的顺序为()

①True②False③prime(x,y+1)

A.②③① B.②①③

C.①③② D.①②③

4.运行下列Python程序段,输出结果是()

deftrans(n):

ifn=1:

returnstr(n)

else:

returntrans(n//2)+str(n%2)

print(trans(13))

A.1101 B.1011C.13 D.31

5.有两个自定义函数如下:

defp1(a,b):

ifb==0:

return1

ifb%2==0:

returnp1(a,b//2)*p1(a,b//2)

else:

returna*p1(a,b-1)

defp2(a,b):

ifb==0:

return1

returna*p2(a,b-1)

下列说法不正确的是()

A.p2(2,3)的返回值为8

B.函数p2的时间复杂度是O(n)

C.函数p1和函数p2均采用了递归算法

D.计算p1(2,3),函数p1的调用次数为4

6.有如下Python代码:

deff(num):

foriinrange(2,int(num**0.5)+1):

ifnum%i==0:

returnstr(f(num//i))+″*″+str(i)

returnnum

n=int(input(″输入n:″))

print(f(n))

程序运行后,输出的结果不可能是()

A.2 B.3

C.2*2 D.2*3

7.定义如下Python函数;

deffn(n):

ifn==0:

returnn

else:

returnn%10+fn(n//10)

print(fn(2023))

运行程序,输出的结果是()

A.5 B.6

C.7 D.8

8.有如下Python程序段:

deff(n):

ifn2:

return0

elifn%2==0:

returnn+f(n-2)

else:

returnf(n-1)

n=int(input())

print(f(n))

若输入n的值为101,则程序运行后,输出的内容为()

A.100 B.2500

C.2550 D.5050

9.定义如下函数:

defmyfun(a,s):

ifa*2=s:

returna

else:

returnmyfun(a+3,s-2)

执行语句n=myfun(4,18)后,n的值为()

A.4 B.7

C.10 D.13

10.执行下列Python代码,输出结果为()

deff(s):

m=len(s)

ifm==1:

returnint(s)

else:

returnf(s[:m-1])+f(s[m-1])

print(f(101))

A.11 B.2

C.5 D.101

11.有如下Python程序段:

deffun(k):

ifk==0:

return″″

elifk%2==1:

returnchr(k+ord(A))+fun(k-1)

else:

returnfun(k-1)+chr(k+ord(A))

有关该程序段,下列说法正确的是()

A.fun(5)的值为″FDBCE″

B.

您可能关注的文档

文档评论(0)

中小学教学资料 + 关注
实名认证
服务提供商

提供小学、初中、高中信息科技教案、试卷、课件等优质教学资源

1亿VIP精品文档

相关文档