原标题:模拟试卷 B
一、单项选择题
1. 关于算法的描述,以下选项中错误的是
算法是指解题方案的准确而完整的描述
算法具有可行性、确定性、有穷性的基本特征
算法的复杂度主要包括时间复杂度和数据复杂度
算法的基本要素包括数据对象的运算和操作及算法的控制结构
2. 关于数据结构的描述,以下选项中正确的是
数据结构指相互有关联的数据元素的集合
数据的存储结构是指反映数据元素之间逻辑关系的数据结构
数据的逻辑结构有顺序、链接、索引等存储方式
数据结构不可以直观地用图形表示
3. 在深度为7的满二叉树中,结点个数总共是
32
64
127
63
4. 对长度为n的线性表进行顺序查找,在最坏的情况下所需要的比较次数是
n+1
n×(n+1)
n-1
n
5. 关于结构化程序设计方法原则的描述,以下选项中错误的是
自顶向下
逐步求精
多态继承
模块化
6. 与信息隐蔽的概念直接相关的概念是
软件结构定义
模块独立性
模块类型划分
模块耦合度
7. 关于软件工程的描述,以下选项中描述正确的是
软件工程是应用于计算机软件的定义、开发和维护的一整套方案、工具、文档和实践标准和工序
软件工程包括3要素:结构化、模块化、面向对象
软件工程工具是完成软件工程项目的技术手段
软件工程方法支持软件的开发、管理、文档生成
8. 在软件工程详细设计阶段,以下选项中不是详细设计工具的是
判断表
程序流程图
CSS
PAL
9. 以下选项中表示关系表中的每一横行的是
元组
属性
列
码
10. 将E-R图转换为关系模式时,可以表示实体与联系的是
属性
关系
键
域
11. 以下选项中Python用于异常处理结构中用来捕获特定类型的异常的保留字是
while
except
do
pass
12. 以下选项中符合Python语言变量命名规则的是
Templist
*i
3_1
AI!
13.
关于赋值语句,以下选项中描述错误的是
在 Python 语言中,“=”表示赋值,即将“=”右侧的计算结果赋值给左侧变量,包含“=”的语句称为赋值语句
在 Python 语言中,有一种赋值语句,可以同时给多个变量赋值
设 x = "alice";y = "kate",执行“x,y = y,x”可以实现变量 x 和 y 值的互换
设 a = 10;b = 20,执行“a,b = a,a + b;print(a,b)”和 “ a = b;b = a + b;print(a,b) 之后,得到同样的输出结果:10 30
14.关于 eval 函数,以下选项中描述错误的是
eval 函数的定义为:eval(source, globals=None, locals=None, /)
eval 函数的作用是将输入的字符串转为 Python 语句,并执行该语句
如果用户希望输入一个数字,并用程序对这个数字进行计算,可以采用 eval(input(<输入提示字符串>)) 组合
执行 eval("Hello") 和执行 eval(" 'Hello' ") 得到相同的结果
15. 关于 Python 语言的特点,以下选项中描述错误的是
Python 语言是脚本语言
Python 语言是非开源语言
Python 语言是跨平台语言
Python 语言是多模型语言
16. 关于 Python 的数字类型,以下选项中描述错误的是
Python 语言提供 int、float、complex 等数字类型
Python 整数类型提供了 4 种进制表示:十进制、二进制、八进制和十六进制
Python 语言要求所有浮点数必须带有小数部分
Python 语言中,复数类型中实数部分和虚数部分的数值都是浮点类型,复数的虚数部分通过后缀“C”或者“c”来表示
17. 关于Python循环结构,以下选项中描述错误的是
Python通过for、while等保留字提供遍历循环和无限循环结构
遍历循环中的遍历结构可以是字符串、文件、组合数据类型和range()函数等
break用来跳出最内层for或者while循环,脱离该循环后程序从循环代码后继续执行
每个continue语句只有能力跳出当前层次的循环
18. 关于Python的全局变量和局部变量,以下选项中描述错误的是
全局变量指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效
局部变量指在函数内部使用的变量,当函数退出时,变量依然存在,下次函数调用可以继续使用
使用global保留字声明简单数据类型变量后,该变量作为全局变量使用
简单数据类型变量无论是否与全局变量重名,仅在函数内部创建和使用,函数退出后变量被释放
19. 关于Python的lambda函数,以下选项中描述错误的是
lambda用于定义简单的、能够在一行内表示的函数
可以使用lambda函数定义列表的排序原则
f = lambda x,y:x+y 执行后,f的类型为数字类型
lambda函数将函数名作为函数结果返回
20.下面代码实现的功能描述的是
def fact(n):
if n==0:
return 1
else:
return n*fact(n-1)
num =eval(input("请输入一个整数:"))
print(fact(abs(int(num))))
接受用户输入的整数 n,输出 n 的阶乘值
接受用户输入的整数 n,判断 n 是否是素数并输出结论
接受用户输入的整数 n,判断 n 是否是完数并输出结论
接受用户输入的整数 n,判断 n 是否是水仙花数
21.执行如下代码:
import time
print(time.time())
以下选项中描述错误的是
输出自1970年1月1日00:00:00 AM 以来的秒数
time 库是 Python 的标准库
可使用 time.ctime(),显示为更可读的形式
time.sleep(5) 推迟调用线程的运行,单位为毫秒
22.执行后可以查看Python的版本的是
import sys print(sys.version)
import sys print(sys.Version)
import system print(system.version)
import system print(system.Version)
23. 关于Python的组合数据类型,以下选项中描述错误的是
Python组合数据类型能够将多个同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序、更容易
组合数据类型可以分为3类:序列类型、集合类型和映射类型
Python的str、tuple和list类型都属于序列类型
24. 以下选项中,不是Python对文件的读操作方法的是
read
readline
readall
readtext
25. 关于Python文件处理,以下选项中描述错误的是
Python能处理Excel文件
Python能处理JPG图像文件
Python不可以处理PDF文件
Python能处理CSV文件
26. 以下选项中,不是Python对文件的打开模式的是
'r'
'w'
'+'
'c'
27. 关于数据组织的维度,以下选项中描述错误的是
高维数据由键值对类型的数据构成,采用对象方式组织
28. Python数据分析方向的第三方库是
numpy
pdfminer
beautifulsoup4
time
29. Python机器学习方向的第三方库是
random
PIL
PyQt5
TensorFlow
30. Python Web开发方向的第三方库是
requests
Django
scipy
pandas
31.
x=0b1010
print(x)
10
16
256
1024
32.下面代码的输出结果是
x=10
y=-1+2j
print(x+y)
(9+2j)
9
2j
11
33.
x=3.1415926
print(round(x,2) ,round(x))
3.14 3
3 3.14
2 2
6.28 3
34.下面代码的输出结果是
for s in "HelloWorld":
if s=="W":
break
print(s, end="")
Helloorld
Hello
World
HelloWorld
35. 以下选项中,输出结果是False的是
5 is 5
5 is not 4
5 != 4
False != 0
36.下面代码的输出结果是
a = 1000000
b = "-"
print("{0:{2}^{1},}n{0:{2}>{1},}n{0:{2}<{1},}".format(a,30,b))
----------1,000,000----------- ---------------------1,000,000 1,000,000---------------------
1,000,000--------------------- ---------------------1,000,000 ---------1,000,000-----------
---------------------1,000,000 1,000,000--------------------- ----------1,000,000-----------
---------------------1,000,000 ----------1,000,000----------- 1,000,000---------------------
37.下面代码的输出结果是
s =["seashell","gold","pink","brown","purple","tomato"]
print(s[4:])
['purple', 'tomato']
['purple']
['seashell', 'gold', 'pink', 'brown']
38.执行如下代码:
import turtle as t
def DrawCctCircle(n):
t.penup()
t.goto(0,-n)
t.pendown()
t.circle(n)
for i in range(20,80,20):
DrawCctCircle(i)
t.done()
在 Python Turtle Graphics 中,绘制的图形是
太极
同切圆
同心圆
笛卡尔心形
39.给出如下代码:
fname = input("请输入要打开的文件: ")
fo = open(fname, "r")
for line in fo.readlines():
print(line)
fo.close()
关于上述代码的描述,以下选项中错误的是
用户输入文件路径,以文本文件方式读入文件内容并逐行打印
通过fo.readlines()方法将文件的全部内容读入一个字典fo
通过fo.readlines()方法将文件的全部内容读入一个列表fo
上述代码可以优化为:
fname = input("请输入要打开的文件: ")
fo = open(fname, "r")
for line in fo.readlines():
print(line)
fo.close()
40.能实现将一维数据写入CSV文件中的是
fname = input("请输入要写入的文件: ") fo = open(fname, "w+") ls = ["AAA", "BBB", "CCC"] fo.writelines(ls) for line in fo: print(line) fo.close()
fo = open("price2016bj.csv", "w") ls = ['AAA', 'BBB', 'CCC', 'DDD'] fo.write(",".join(ls)+ "n") fo.close()
fr = open("price2016.csv", "w") ls = [] for line in fo: line = line.replace("n","") ls.append(line.split(",")) print(ls) fo.close()
fo = open("price2016bj.csv", "r") ls = ['AAA', 'BBB', 'CCC', 'DDD'] fo.write(",".join(ls)+ "n") fo.close()
CACDC BACAB
BADDB DDBCA
DACDC DAADB
AAABD AACBB
二、基本编程题
1、编写 Python 程序输出一个具有如下风格效果的文本,用作文本进度条样式,部分代码如下,填写空格处。
10%@==
20%@====
100%@====================
前三个数字,右对齐;后面字符,左对齐
文本中左侧一段输出 N 的值,右侧一段根据 N 的值输出等号,中间用 @ 分隔,等号个数为 N 与 5 的整除商的值,例如,当 N 等于 10 时,输出 2 个等号。
N = eval(input()) # N取值范围是0—100,整数
print(____①____)
2、以论语中一句话作为字符串变量 s,补充程序,分别输出字符串 s 中汉字和标点符号的个数。
s = "学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?"
n = 0 # 汉字个数
m = 0 # 标点符号个数
____①____ # 在这里补充代码,可以多行
print("字符数为{},标点符号数为{}。".format(n, m))
3、使用程序计算整数 N 到整数 N+100 之间所有奇数的数值和,不包含 N+100,并将结果输出。整数 N 由用户给出,代码片段如下,补全代码。不判断输入异常。
N = input("请输入一个整数: ")
____①____ # 可以是多行代码
输入输出示例
输入输出
32600
三、简单应用题
1、使用 turtle 库的 turtle.fd() 函数和 turtle.left() 函数绘制一个六边形,边长为 200 像素,效果如下图所示,请结合格式框架,补充横线处代码。
import turtle as t
for i in range(___①___):
t.fd(___②___)
t.left(___③___)
2、经常会有要求用户输入整数的计算需求,但用户未必一定输入整数。为了提高用户体验,编写 getInput() 函数处理这样的情况。请补充如下代码,如果用户输入整数,则直接输出整数并退出,如果用户输入的不是整数,则要求用户重新输入,直至用户输入整数为止。
def getInput():
____①____ # 可以是多行代码
return ____②____ # 只能是单行代码
print(getInput())
四、综合应用题
《天龙八部》是著名作家金庸的代表作之一,历时4年创作完成。该作品气势磅礴,人物众多,非常经典。这里给出一个《天龙八部》的网络版本,文件名为“天龙八部-网络版.txt”。
问题1:请编写程序,对这个《天龙八部》文本中出现的汉字和标点符号进行统计,字符与出现次数之间用冒号:分隔,输出保存到“天龙八部-汉字统计.txt”文件中,该文件要求采用 CSV 格式存储,参考格式如下(注意,不统计空格和回车字符):
天:100, 龙:110, 八:109, 部:10
(略)
问题2:请编写程序,对《天龙八部》文本中出现的中文词语进行统计,采用 jieba 库分词,词语与出现次数之间用冒号:分隔,输出保存到“天龙八部-词语统计.txt”文件中。参考格式如下(注意,不统计任何标点符号):
天龙:100, 八部:10
责任编辑: