计算机等级考试二级Python语言程序设计模拟题2020年(5)
(总分100,考试时间120分钟)
单项选择题
1. 1.下列叙述中正确的是( )。 A. 循环链表中至少有一个结点 B. 双向链表有两个头指针 C. 双向链表有两个头结点
D. 循环链表是循环队列的链式存储结构
2. 2.下列算法中,最坏情况下时间复杂度最低的是( )。 A. 堆排序 B. 寻找最大项 C. 顺序查找 D. 有序表的对分查找
3. 3.树的度为3,且有9个度为3的结点,20个叶子结点,但没有度为1的结点。则该树总的结点数为( )。 A. 29 B. 30 C. 47 D. 不可能有这样的树
4. 4.设二叉树的中序序列为BDCA,后序序列为DCBA,则前序序列为( )。 A. BCDA B. CBDA C. ABCD D. ACDB 5. 5.下面描述正确的是( )。 A. 软件测试是软件调试的一部分 B. 软件测试是证明软件正确的方法 C. 软件测试的目的是发现程序中的错误 D. 软件测试是保障软件质量的唯一方法
6. 6.对软件系统总体结构图描述正确的是( )。 A. 深度等于控制的层数
B. 扇入是一个模块直接调用的其他模块数 C. 结构图是描述软件系统功能的 D. 从属模块一定是原子模块
7. 7.下面属于应用软件的是( )。 A. 安卓(Android)操作系统 B. 交通管理app C. C语言编译器 D. 数据库管理系统 8. 8.概念模型是( )。
A. 用于现实世界的建模,与具体的DBMS有关 B. 用于信息世界的建模,与具体的DBMS有关
C. 用于现实世界的建模,与具体的DBMS无关 D. 用于信息世界的建模,与具体的DBMS无关 9. 9.中学教师和授课班级之间的联系是( )。 A. 一对一 B. 一对多 C. 多对一 D. 多对多
10. 10.定义学生选修课程的关系模式如下:
SC(S#,Sn,C#,Cn,G,Cr)(其属性分别为学号、姓名、课程号、课程名、成绩、学分) 则对主属性部分依赖的是( )。 A. C#→Cr
B. (S#,C#)→G C. (S#,C#)→S# D. (S#,C#)→C#
11. 11.以下不是Python语言所使用特殊含义符号的是( )。 A. $ B. ** C. & D. +=
12. 12.以下不是Python语言保留字的是( )。 A. await B. pass C. do D. lambda
13. 13.以下保留字不用于循环逻辑的是( )。 A. try B. else C. for D. continue
14. 14.S=’1234567890’,以下表示’1234’的选项是( )。 A. s[1:5] B. s[0:3]
C. s[一10:-5] D. s[0:4]
15. 15.表达式3+5%6*2//8的值是( )。 A. 5 B. 4 C. 6 D. 7
16. 16.以下不是函数作用的选项是( )。 A. 提高代码执行速度 B. 增强代码可读性 C. 复用相同功能代码 D. 降低编程复杂度
17. 17.关于Python全局变量和局部变量,以下选项描述错误的是( )。 A. 全局变量在源文件顶层,一般没有缩进
B. 程序中的变量包含两类:全局变量和局部变量
C. 函数内部使用各种全局变量,都要用globle语句声明 D. 不是在程序最开头定义的全局变量,不是全过程均有效 18. 18.关于函数定义,以下形式错误的是( )。 A. def foo(*a,b) B. def foo(a,b=10) C. def foo(a,*b) D. def foo(a,b)
19. 19.字典d={‘Python’:123,’C’:123,’C++’:123},len(d)的结果是( )。 A. 12 B. 6 C. 9 D. 3
20. 20.以下不是Python组合数据类型的是( )。 A. 元组类型 B. 字符串类型 C. 数组类型 D. 列表类型
21. 21.对于序列s,能够返回序列s中第i到第j以k为步长的子序列的表达是( )。 A. s[i:j:k] B. s[i,j,k] C. s[i;j;k] D. s(i,j,k)
22. 22.对于序列s,以下选项对min(s)描述正确的是( )。
A. 可以返回序列s中的最小元素,如果存在多个相同的最小元素,则返回一个列表类型 B. 一定能够返回序列s中的最小元素
C. 可以返回序列s中的最小元素,如果存在多个相同的最小元素,则返回一个元组类型 D. 可以返回序列s中的最小元素,但要求s中元素可比较 23. 23.以下程序的输出结果是( )。 x=10 y=0
if(x>5)or(x/y>5): print(’Right’) else:
print(’Wrong’) A. Right B. Wrong
C. 报错:ZeroDivisionError D. 不报错,但不输出任何结果
24. 24.以下程序的输出结果是( )。 for c in’Python NCRE’: if c==’N’: break print? A. 无输出 B. Python C. Pytho
D. Python CRE
25. 25.以下程序的输出结果是( )。 s=2
for i in range(1,10): S + =i print(s) A. 55 B. 45 C. 57 D. 47
26. 26.以下程序被调用后,能够正确执行的是( )。
def f(x,y=1,z=2): pass
A. f(x=1,2)
B. f(x=1,y=2,z=3) C. f(1,x=2,z=3) D. f(1,y=2,3)
27. 27.以下程序的输出结果是( )。
ls=[’绿茶’,’乌龙茶’,’红茶’,’白茶’,’黑茶’] x=’乌龙茶’
print(ls.index(x,0)) A. 一3 B. 0 C. 1 D. 一4
28. 28.关于字典的描述,错误的是( )。 A. 字典的元素以键为索引进行访问 B. 字典的一个键可以对应多个值 C. 字典长度是可变的
D. 字典是键值对的结合,键值对之间没有顺序 29. 29.以下不是Python文件读写方法的是( )。 A. writeline B. readline C. read D. write
30. 30.关于Python文件打开模式,表示错误的是( )。 A. rt B. nb C. ab D. wt
31. 31.表格类型数据的组织维度最可能是( )。 A. 多维数据 B. 一维数据 C. 二维数据 D. 高维数据
32. 32.二维列表ls=[[9,8],[7,6],[5,4],[3,2],[1,0]],能够获得数字4的选项是( )。 A. ls[一3][一1] B. ls[3][一1] C. ls[2][0] D. ls[一2][0]
33. 33.在进行CSV文件读写时,最不可能使用的字符串处理方法是( )。 A. strip() B. join() C. index() D. split()
34. 34.f=open()可以打开一个文件,关于f的描述错误的是( )。 A. f是文件对象引用,在程序中表示文件
B. f是一种特殊的Python变量,执行print(f)时会报错 C. f.read()可以一次性读入文件全部信息 D. 执行m=f后,m和f同时表示所打开文件
35. 35.下列函数中,不是Python内置函数的是( )。
A. perf_counter() B. all() C. abs() D. format()
36. 36.安装一个第三方库的命名格式是( )。 A. pip uninstall<第三方库名> B. pip install<第三方库名> C. pip download<第三方库名> D. pip search<第三方库名>
37. 37.生成一个[1,99]之间随机整数的函数是( )。 A. random.randint(1,100) B. random.randint(0,99) C. random.randint(1,99) D. random.uniform(1,99)
38. 38.以下用于计算机视觉领域的Python第三方库是( )。 A. OpenCV—Python B. Matplotlib C. Flask D. PyMongo
39. 39.以下不属于数据分析领域的Python第三方库是( )。 A. Pandas B. PyQt5 C. Numpy D. Seabom
40. 40.以下不属于人工智能领域的Python第三方库是( )。 A. Keras B. PyTorch C. MXNet D. PyOCR
基本编程题
41. 41.考生文件夹下存在一个文件PY101.PY,请写代码替换横线,不修改其他代码,实现以下功能:
将字符串中每个单词的首字母都变为大写,输出到屏幕。例如: After Fresh Rain In Mountains Bare 试题程序:
#请在________处使用一行代码或表达式替换 #注意:请不要修改其他已给出代码 line=”After fresh rain in mountains bare” print(_______)
42. 42.考生文件夹下存在一个文件PY102.py,请写代码替换横线,不修改其他代码,实现以下功能:
键盘输入直角三角形的两条直角边长度,计算三角形的面积。例如:
输入三角形第一条直角边长:3 输入三角形第二条直角边长:4 直角三角形的面积为:6.0 试题程序:
#请在______处使用一行代码或表达式替换 #注意:请不要修改其他已给出代码
a=float(inptlt(”输入三角形第一条直角边长:“)) b=float(input(”输入三角形第二条直角边长:”)) _______
print(”直角三角形的面积为:{_____}”.format(area))
43. 43.考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代码,实现以下功能:
键盘输入十进制整数,按要求将这个整数转化为二进制、八进制和十六进制(大写)屏幕输出。例如:
输人数字:425
对应的二进制数:11010100l 八进制数:651 十六进制数:1A9 试题程序:
#请在_______处使用一行代码或表达式替换 #注意:请不要修改其他已给出代码 num=eval(input(”输入数字:”))
print(\"对应的二进制数:{______}\n八进制数:{______}\n十六进制数:{_______}\".format(num))
简单应用题
44. 44.考生文件夹下存在一个文件PY201.py,请写代码替换横线,不修改其他代码,实现以下功能:
使用tunle库中的pencolor()和fillcolor()方法为图形着色,使用setup()方法在桌面屏幕(400,400)位置创建600×600大小的画布窗体。效果如下图所示。
试题程序
#请在________处使用一行代码或表达式替换 #注意:请不要修改其他已给出代码 from turtle import* def curvemove():
for i in range(200): right(1) forward(1)
setup(6 00,60 0,40 0,4 00) hidetur七le() _______('black’) _______(”red”)
pensize(2) begin_fill() left(140)
forward(111.65) curvemove() left(120) curvemove()
forward(111.65) end_fill() penup()
goto(一27,85) pendown() done()
45. 45.考生文件夹下存在一个文件PY202.py,该文件是本题目的代码提示框架,其中代码可以任意修改,请在该文件中编写代码,以实现如下功能: 九九乘法表输出。按照乘法表的格式打印输出九九乘法表,并将打印的结果保存在考生文件夹下,命名为“PY202.txt”。 试题程序:
#以下代码为提示框架
#请在…处使用一行或多行代码替换 #请在______处使用一行代码替换
#注意:提示框架代码可以任意修改,以完成程序功能为准 fo=open(”PY202.txt”,”w”) …
fo.close()
综合应用题
46. 46.考生文件夹下存在一个Python源文件PY301.py,请按照文件内说明修改代码,实现以下功能:
凯撒密码是一种非常古老的加密算法,相传当年凯撒大帝行军打仗时为了保证自己的命令不被敌军知道,它采用了替换方法将信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即循环后三位,对应关系如下:
原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C 原文字符P,其密文字符C满足如下条件: C=(P+3)mod 26
解密方法反之,满足如下条件: P=(C-3)mod 26
凯撒密码包括加密和解密两个部分。
凯撒密码的加密算法程序首先接收用户输人的文本,然后对字母a—z和字母A—Z按照密码算法进行转换,同时输出。其他非英文字母原样输出。 试题程序:
#以下代码为提示框架
#请在…处使用一行或多行代码替换 #请在_______处使用一行代码替换
#注意:提示框架代码可以任意修改,以完成程序功能为准 intxt=input(”请输入明文:“) …
因篇幅问题不能全部显示,请点此查看更多更全内容