一、单选题
1、不超过100个元素的有序数列,使用二分查找能找到指定的元素,可能的查找次数不包括?
A、1次
B、6次
C、7次
D、8次
2、运行以下代码,正确的打印结果是?
A、1
B、2
C、4
D、8
3、10个人站一列,分苹果,问第10个人分到多少个苹果,他说比前面一个人多分到2个,依次往前,都说比前面一个人多分到2个,最后问第一个人,他说分到10个苹果。用以下函数求第10个人分到的苹果数,则应补充选项为?( )
A、apple(n)+2
B、n+2
C、apple(n-1)+2
D、apple(n+1)-2
4、 观察程序段,以下说法错误的是?
A、如果输入m的值为8,打印的结果为20
B、该程序段用了递归来实现
C、如果缺少语句“return s”,程序会报错
D、语句“def fib(n):”中的n为形参
5、关于python函数参数的说法正确的是?
A、函数一定要有参数和返回值
B、在调用一个函数时,若函数中修改了形参变量的值,则对应的实参变量的值也被修改
C、参数的值是否会改变,与函数中对变量的操作有关,与参数类型无关
D、函数的形参在函数被调用时获得初始值
6、关于递归与递推方法的比较,错误的观点是?
A、递归是将复杂问题降解成若干个子问题,依次降解,求出低阶规模的解,代入高阶问题中,直至求出原问题的解;
B、递推是构造低阶的问题,并求出解,依次推导出高阶的问题以及解,直至求出问题的解;
C、数学上的递推关系可以通过递归的方法来实现;
D、递归算法代码简洁,运行速度比递推快,因此应该尽量采用递归的方法;
7、运行以下代码,输出结果正确的是?
A、2 [2] [2]
B、1 [] [2]
C、1 [2] [2]
D、2 [] [2]
8、关于Turtle库的表述中,错误的是?
A、Turtle库是Python语言中一个很流行的绘制图像的函数库。
B、画布就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置。
C、turtle.circle( )是只能画一个指定半径为r的圆。
D、turtle.speed(speed):设置画笔移动速度,画笔绘制的速度范围[0,10]整数,数字越大越快
9、有100枚金币,其中有1枚轻1克的假金币,现在要找出这枚假金币,但身边只有1个没有刻度的天秤。小明先是将金币分成50枚一堆,共两堆称重,在轻的那一堆中又分成两堆,接着在轻的25枚中分成12,12,1三堆称重,若两堆12枚的重量相同,则假币为单独剩下的那一枚,否则在轻的那一堆中继续按照之前的办法称下去,直到找到假金币。请问小明采用的办法与哪个算法有着相似之处?
A、递归
B、分治
C、枚举
D、贪心
10、运行以下代码,正确的打印结果是?
A、0
B、1
C、2
D、3
11、下列关于函数的描述正确的是?
A、函数是可重复使用的,用来实现单一,或相关联功能的代码段
B、函数中必须return语句
C、函数好处是模块性,但不能提高代码的利用率
D、函数内容以冒号起始,可以不缩进
12、调用以下函数时,语句“s=s+i”被执行的次数是?
A、3
B、4
C、5
D、6
13、已知有n本按照书名拼音排序好的图书,使用对分查找法搜索其中任何一本书,最多查找次数为6次,则n的值可能为?
A、20
B、50
C、80
D、100
14、某程序代码设计如下,若输入整数5,则最终输出的结果为?
A、120
B、24120
C、144
D、12024
15、用匿名函数方式求两个数中较大的数,下列定义语句格式正确的是?
A、result = lambda 'x,y': y if x> y else x
B、result= lambda x,y: y if x> y else x
C、result= lambda 'x,y': x if x> y else y
D、result= lambda x,y: x if x> y else y
16、下列程序段的正确运行结果是?
A、4
B、8
C、-8
D、2
17、 运行下列程序,输出结果正确的是?
A、100
B、50
C、10
D、运行出错
18、如果需要在某函数内部调用上一层的局部变量,则可以使用( )关键字
A、Local
B、nonlocal
C、global
D、nonglobal
19、在Python程序中,设已定义函数op,它有一个整型传值参数,一个字符串型传值参数。设x,y为整型变量,z为字符串型变量,则下列能调用该函数的正确语句是?
A、op
B、op(x,y,z)
C、op x,y
D、op(x+y,z)
20、下列哪个语句段的时间复杂度最低?
A
B
C
D
21、下列哪个不是Python中的内建函数?
A、asc(x)
B、ord(x)
C、chr(x)
D、abs(x)
22、关于函数的定义语句,以下几项中正确的是?
A、def f(c=2,a,b):
B、def f(a,b=2,c):
C、def f(*c,**d,a,b):
D、def f(a,b,*c,**d):
23、下列关于递归的描述不正确的是?
A、递归函数一定包含条件控制语句
B、递归函数一定包含调用自身的语句
C、在调用自身函数时需要明确的边界终止条件
D、递归算法一般代码简洁,执行效率高,空间复杂度低
24、下列哪个不是Python第三方库的pip安装方法?
A、使用pip命令
B、使用wheel命令
C、集成安装方法
D、文件安装方法
25、对于下列递归式子,当n=4时,F的值是? F(n)=F(n-1)+3 F(1)=2
A、2
B、5
C、11
D、14
二、判断题
26、这段程序的运行结果为3。
A 正确
B 错误
27、算法复杂度分析的目的是分析算法的效率,以求改进。
A 正确
B 错误
28、运行程序,输出结果是15。
A 正确
B 错误
29、已有函数def demo(*p):return sum(p),表达式 demo(1, 2, 3, 4) 的值为10。
A 正确
B 错误
30、使用python -m pip install --upgrade pip命令能够升级pip。
A 正确
B 错误
31、在python函数中,局部变量不能与全局变量重名。
A 正确
B 错误
32、下列程序段返回的值为“Hello!Python”。
A 正确
B 错误
33、使用分治算法求解,子问题不能重复
A 正确
B 错误
34、设计一个程序来求xn(x的几次方)的值,算法思想是:把xn转换为x*xn-1,而xn-1又可以转换为x*xn-2,如此重复下去,直到x*x0,而x0=1,从而求出了xn的值。这个程序可以用递归来实现。
A 正确
B 错误
35、 下列程序段能正确打印1。
A 正确
B 错误
喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!