一、单选题
1、下列不是评判一个算法优劣的标准是?( )
A、时间复杂度
B、空间复杂度
C、难易度
D、健壮性
2、某自定义函数中使用了3个变量,其中2个变量都指定了默认值,调用该函数时,参数的个数最少为几个?( )
A、0
B、2
C、3
D、1
3、Python中用于字符与其ASCII码相互转换的内置函数是?( )
A、float() abs()
B、pow() format()
C、ord() chr()
D、round() import()
4、Python中,可以将数字类字符串转换成整数的函数是?( )
A、int( )
B、float( )
C、bool( )
D、class( )
5、运行下列这段程序,正确的输出结果是?( ) LS = ["apple", "red", "orange"] def funb(a): LS.append(a) funb("yellow") print(LS)
A、["apple","red","orange"]
B、["apple","red","orange","yellow"]
C、[]
D、["yellow"]
6、下列代码的输出结果是?( ) def func(a, b): c=a**2+b b=a return c a=10 b=2 c=func(b,a)+a print(c,b)
A、102 2
B、24 10
C、24 2
D、102 10
7、下列关于函数返回值的描述正确的是?( )
A、函数可以没有返回值,也可以有一个或多个返回值
B、函数定义中最多含有一个return语句
C、在函数定义中用return语句时,至少给一个返回值
D、函数中 return语句只能放在函数定义的最后
8、运行下列这段程序,正确的输出结果是?( ) def reverseA(s): t="" for i in range(0,len(s)): t=s[i]+t return t print(reverseA("reverse"))
A、esrever
B、reverse
C、rsereve
D、rseveer
9、下列导入pandas模块的方法不正确的是?( )
A、import pandas
B、import pandas as p
C、import pandas *
D、from pandas import *
10、Python中提供了大量的标准库模块,比如利用time模块可以获取计算机的时钟信息,包括日期和时间,若想要实现延时1分钟,则应该使用的语句是?( )
A、sleep(3600)
B、time.time(60)
C、time.asctime(1)
D、time.sleep(60)
11、使用分治算法的基本步骤是?( )
A、分解、解决、合并
B、分解、解决
C、合并、解决
D、合并、解决、分解
12、二分查找法是运用哪种策略实现的算法?( )
A、分治法
B、贪心法
C、回溯法
D、动态规划法
13、下列程序是分治算法的典型应用,其运行结果是?( ) def dividAndConquer(arr,left,right): if (right == left + 1) or (right == left): return max(arr[left],arr[right]) mid = int((left + right) / 2) leftMax = dividAndConquer(arr,left,mid) rightMax = dividAndConquer(arr,mid,right) return max(leftMax,rightMax) arr1 = [8, 1, 14, 19, 5] print(dividAndConquer(arr1,0,4))
A、1
B、19
C、8
D、5
14、列程序输出的结果是?( ) def change(a,b): a=10 b+=a a=4 b=5 change(a,b) print(a,b)
A、4 5
B、10 5
C、4 15
D、10 15
15、下列程序运行的结果是?( ) def a(): print("here") b() a() def b(): print("there") a() b()
A、出错
B、死循环
C、here
D、herethere
16、设函数f定义如下: def f(x,y = 0): pass下列选项执行时,出现错误的是?( )
A、f(,2)
B、f(1,2)
C、f(1)
D、f(1,)
17、下列程序段运行的结果是?( ) def check(x = 2,y = 3): print(x,y) check(y=6,x=5)
A、5 6
B、6 5
C、2 3
D、3 2
18、def AddApple(fruit=None): if fruit is None: fruit=[] fruit.append('Apple') return fruit AddApple() AddApple() print(AddApple(['Pear'])) 以上程序段运行的结果是?( )
A、['Pear','Apple']
B、['Pear','Apple','Apple']
C、['Apple','Pear','Apple','Apple']
D、['Apple']
19、def ThankYou(name): print("感谢%s对公司的贡献!" %name) ThankYou('张三') ThankYou() 以上程序运行的结果是?( )
A、打印输出:感谢张三对公司的贡献!
B、打印输出:感谢张三对公司的贡献!感谢对公司的贡献!
C、无法输出。
D、需要增加main函数才能正确运行。
20、编写程序计算1+1/2+1/3+……+1/n的结果,可以使用哪种调用函数自身的算法?( )
A、枚举
B、递归
C、解析
D、分治
21、用下面的程序求解计算s=1+3+5+7+9的值,请选择横线处应填写的代码?( ) def Sum(n): if n<=1: return 1 else: return ________ print(Sum(9))
A、n+Sum(n-1)
B、n+Sum(n+1)
C、n+Sum(n+2)
D、n+Sum(n-2)
22、下列选项中,哪一项不是递归函数必须要具备的条件?( )
A、明确的边界条件
B、边界值
C、循环语句
D、终止条件
23、用递归算法实现5的阶乘,则下方的程序中横线上需要的代码是?( )def func(n): if n<_______: return func(n+1)*n else: return 1 print(func(1))
A、4
B、5
C、6
D、7
24、执行以下代码,程序的输出结果是?( ) def weight(n): if n==1: return 100 else: return weight(n-1) +10 print(weight(3))
A、100
B、110
C、120
D、130
25、以下关于递归与递推的说法,错误的是?( )
A、递归算法不涉及高深的数学知识,比较容易理解。
B、递归过程一般通过函数或子过程来实现。
C、递归算法是递推分解问题,然后再将最简单情况的解回归成大问题的解。
D、存在既可以用递归算法解决,也可以用递推算法解决的问题。
二、判断题
26、函数中return语句只能放在函数定义的最后。( )
A 正确
B 错误
27、Python定义函数时如果没有参数,也不能省略后面的空括号。( )
A 正确
B 错误
28、函数的参数分为形参和实参两种,函数调用中实参和形参的值可以互相传递。( )
A 正确
B 错误
29、导入模块中指定成员时,可采用的语句是:import 成员名1,成员名2 from 模块名。( )
A 正确
B 错误
30、二分搜索、快速排序可以使用分治算法进行求解。( )
A 正确
B 错误
31、调用带有默认值参数的函数时,不能为默认值参数传递任何值,只能使用函数定义时设定的默认值。( )
A 正确
B 错误
32、在Python中,可以在自定义函数中再定义函数。( )
A 正确
B 错误
33、在定义一个函数时,如果出现调用自身的成分,则称为递推。( )
A 正确
B 错误
34、递归算法通常显得很简洁,因为多次调用自身,所以运行效率较高,应该大力提倡用递归算法设计程序。( )
A 正确
B 错误
35、同样的问题使用不同的算法编程解决,其时间复杂度可能不一样。( )
A 正确
B 错误
喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!