文档库

最新最全的文档下载
当前位置:文档库 > 全国计算机等级考试二级Python真题及解析(9)

全国计算机等级考试二级Python真题及解析(9)

全国计算机等级考试二级Python真题及解析( 9)

1.下面不属于软件工程的 3 个要素的是 ___________。

A过程

B方法

C环境

D工具

正确答案: C

2.下面不属于软件设计原则的是 ___________。

A模块化

B自底向上

C信息隐蔽

D抽象

正确答案: B

3.在关系数据库中,用来表示实体之间联系的是 ___________。

A网结构

B二维表

C线性表

D树结构

正确答案: B

4.一般情况下,当对关系 R 和 S 进行自然连接时,要求 R 和 S 含有一个或者多个共有的 ___________。

A属性

B元组

C记录

D行

正确答案: A

5.有表示公司和职员及工作的三张表,职员可在多家公司兼职。其中公司

c(公司号,公司名,地址,注册资本,法人代表,员工数),职员s(职员号,姓名,性别,年龄,学历),工作w(公司号,职员号,工资),则表w 的键(码)为 ___________。

A公司号,职员号,工资

B职员号

C职员号,工资

D公司号,职员号

正确答案: D

6. 下列叙述中正确的是 ___________。

A栈是一种先进先出的线性表

B栈与队列都是非线性结构

C队列是一种后进先出的线性表

D栈与队列都是线性结构

正确答案: D

7. 下列叙述中正确的是 ___________。

A线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构

B线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构

C线性表的链式存储结构与顺序存储结构所需要的存储方式是相同的

D线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的

正确答案: B

8. 算法的有穷性是指 ___________。

A算法只能被有限的用户使用

B算法程序所处理的数据量是有限的

C算法程序的运行时间是有限的

D算法程序的长度是有限的

正确答案: C

9.软件设计中划分模块的一个准则是 ___________。

A高内聚高耦合

B低内聚高耦合

C高内聚低耦合

D低内聚低耦合

正确答案: C

10.耦合性和内聚性是对模块独立性度量的两个标准。下面叙述中正确的是A降低耦合性提高内聚性有利于提高模块的独立性

B耦合性是指一个模块内部个元素间彼此结合的紧密程度

C提高耦合性降低内聚性有利于提高模块的独立性

D内聚性是模块间相互连接的紧密程度

正确答案: A

11.每个程序都具有的统一的运算模式是:

A顺序计算模式

B输入输出模式

C函数调用模式

DIPO 模式

正确答案: D

12.以下不是 Python 语言关键字的选项是:

A None

B as

C raise

D function

正确答案: D

13.以下关于同步赋值语句描述错误的选项是:

A同步赋值能够使得赋值过程变得更简洁

B判断多个单一赋值语句是否相关的方法是看其功能上是否相关或相同

C设 x, y 表示一个点的坐标,则 x=a;y=b 两条语句可以用 x,y = a,b 一条语句来赋值

D多个无关的单一赋值语句组合成同步赋值语句,会提高程序可读性

正确答案: D

14.以下代码的输出结果是:

print('{:*^10.4}'.format('Flower'))

A Flow

B Flower

C Flow

D***Flow***

正确答案: D

15.表达式

print(float(complex(10+5j).imag))

的结果是:

A10

B5

C10.0

D5.0

正确答案: D

16.

表达式

print("{:.2f}".format(20-2**3+10/3**2*5))

的结果是:

A17.55

B67.56

C12.22

D 17.56

正确答案: D

17. 如果 p=ord(‘ a’ ),表达式 print(p,chr((p+3)%26+ord('a'))) 的结果是:

A 97 d

B 97 c

C 97 x

D 97 w

正确答案: D

18.以下程序的输出结果是:

chs = "|'\'-'|"

for i in range(6):

for ch in chs[i]:

print(ch,end='')

A|'\'-'

B|\-|

C"|'-'|"

D|''-'|

正确答案: D

19.以下关于随机运算函数库的描述,错误的是:

A random 库里提供的不同类型的随机数函数是基于random.random() 函数扩展的

B伪随机数是计算机按一定算法产生的,可预见的数,所以是“伪”随机

C Python 内置的 random 库主要用于产生各种伪随机数序列

D uniform(a,b) 产生一个 a 到 b 之间的随机整数

正确答案: D

以下关于分支和循环结构的描述,错误的是:

A python 的在分支和循环语句里使用例如x<=y<=z 的表达式是合法的

B分支结构的中的代码块是用冒号来标记的

C while 循环如果设计不小心会出现死循环

D二分支结构的 <表达式 1> if < 条件 > else <表达式 2> 形式,适合用来控制程序分支

正确答案: D

21.

以下程序的输出结果是:

for i in "CHINA":

for k in range(2):

print(i, end="")

if i == 'N':

break

A CCHHIINNAA

B CCHHIIAA

C CCHHIAA

D CCHHIINAA

正确答案: D

22.以下程序的输出结果是:

x= 10

while x:

x -= 1

if not x%2:

print(x,end = '')

print(x)

A86420

B975311

C97531

D864200

正确答案: D

23.用户输入整数的时候不合规导致程序出错,为了不让程序异常中断,需要用到的语句是:

A if 语句

B eval 语句

C循环语句

D try-except 语

句正确答案: D

24.以下关于 python 内置函数的描述,错误的是:

A id() 返回一个变量的一个编号,是其在内存中的地址

B all(ls) 返回 True,如果 ls 的每个元素都是True

C type() 返回一个对象的类型

D sorted() 对一个序列类型数据进行排序,将排序后的结果写回到该变量

中正确答案: D

25.以下关于函数的描述,正确的是:

A函数的全局变量是列表类型的时候,函数内部不可以直接引用该全局变量

B如果函数内部定义了跟外部的全局变量同名的组合数据类型的变量,则函数内部引用的变量不确定

C python 的函数里引用一个组合数据类型变量,就会创建一个该类型对象

D函数的简单数据类型全局变量在函数内部使用的时候,需要在显式声明为全局变量

正确答案: D

26.以下程序的输出结果是:

s1 ="QQ"

s2 ="Wechat"

print("{:*<10}{:=>10}".format(s1,s2))

A********QQWechat====

B QQWechat

C********QQ Wechat====

D QQ********====Wechat

正确答案: D

27.关于以下程序输出的两个值的描述正确的是:da = [1,2,3]

print(id(da))

def getda(st):

fa = da.copy()

print(id(fa))

getda(da)

A两个值相等

B每次执行的结果不确定

C首次不相等

D两个值不相等

正确答案: D

28.以下不是组合数据类型的是:

A集合类型

B序列类型

C映射类型

D引用类型正

确答案: D

29.以下关于组合类型的描述,错误的是:

A可以用大括号创建字典,用中括号增加新元素

B嵌套的字典数据类型可以用来表达高维数据

C字典的 pop 函数可以返回一个键对应的值,并删除该键值对D空字典和空集合都可以用大括号来创建

正确答案: D

30.以下程序的输出结果是:

x = ['90','87','90']

n = 90

print(x.count(n))

A

1

B

2

C

None

D

正确答案: D

31.以下程序的输出结果是:

dict = {'Name': 'baby', 'Age': 7}

print(dict.items())

A[('Age', 7), ('Name', 'baby')]

B('Age', 7), ('Name', 'baby')

C'Age':7, 'Name': 'baby'

D dict_items([('Age', 7), ('Name', 'baby')])

正确答案: D

32.以下程序的输出结果是:

dat=['1', '2', '3', '0', '0', '0']

for item in dat:

if item == '0':

dat.remove(item)

print(dat)

A['1', '2', '3']

B['1', '2', '3', '0', '0']

C['1', '2', '3', '0', '0', '0']

D['1', '2', '3', '0']

正确答案: D

33.

以下程序的输出结果是:

L2 = [[1,2,3,4],[5,6,7,8]]

L2.sort(reverse = True)

print( L2)

A[5, 6, 7, 8], [1, 2, 3, 4]

B[[8,7,6,5], [4,3,2,1]]

C[8,7,6,5], [4,3,2,1]

D[[5, 6, 7, 8], [1, 2, 3, 4]]

正确答案: D

34.关于数据维度的描述,错误的是:

A一维数据采用线性方式组织,对应于数组概念

C高维数据由键值对类型的数据组成,采用对象方式组织

D一维数据是由对等关系的有序数据构成,无序数据不是一维数据正确答案: D

35.以下程序的输出结果是:

fo = open("text.txt",'w+')

x,y ='this is a test','hello'

fo.write('{}+{}\n'.format(x,y))

print(fo.read())

fo.close()

A this is a test hello

B this is a test

C this is a test,hello.

D this is a test+hello

正确答案: D

36.文件 dat.txt 里的内容如下:

QQ&Wechat

Google & Baidu

以下程序的输出结果是:

fo = open("tet.txt",'r')

fo.seek(2)

print(fo.read(8))

fo.close()

A Wechat

B&Wechat G

C Wechat Go

D &Wechat

正确答案: D

37.以下属于 Python HTML 和 XML 解析的第三方库的是:

A Django

B Networkx

C Requests

D Beautiful Soup

正确答案: D

38.以下属于 Python 打包源文件为可执行文件的第三方库的是:

A PIL

B Matplotlib

C Sklearn

D Pyinstaller

正确答案: D

39.以下属于 Python Web 开发框架第三方库的是:

A WeRoBot

B Wheel

C Pygame

D Django

正确答案: D

40.以下关于 Python 内置库、标准库和第三方库的描述,正确的是:

A第三方库需要单独安装才能使用

B内置库里的函数不需要 import 就可以调用

C第三方库有三种安装方式,最常用的是 pip 工具

D标准库跟第三方库发布方法不一样,是跟 python 安装包一起发布的正确答案: D

二、操作题

1.101

参照代码模板完善代码,实现下述功能。从键盘输入一个整数和一个字

符,以逗号隔开,在屏幕上显示输出一条信息。

示例如下:

输入

10,@

输出

@@@@@@@@@@ 10 @@@@@@@@@@

输入输出示例

输入输出

示例 110,@@@@@@@@

@@@ 10

@@@@@@@@@@

习题讲解

答案 :

a,x = input().split(',') # 请输入 1 个整数和 1 个符号,逗号隔开

print(x*eval(a),a,x*eval(a))

要点:

1.输入两个值组成的字符串,要用 split()分割开

2.同时赋值给两个变量

3.利用 eval 得到数值做运算,给字符做乘法,得到需要的格式

2.102

参照代码模板完善代码,实现下述功能。从键盘输入一个由 1 和 0 组成的二进制字符串 s,转换为八进制数输出显示在屏幕上,示例如下:

输入:

1100

输出:

转换成八进制数是: 14

输入输出示例

输入输出

示例 1110014

习题讲解

答案:

s = input() # 请输入一个由 1 和 0 组成的二进制数字串

d = 0whil

e s:

d = d*2 + (ord(s[0]) -ord('0'))

s = s[1:]print(" 转换成八进制数是: {:o}".format(d))

要点:

1.print 和 format 的格式用法,字符串的内置处理函数,切片

2.理解数据类型及其转换

3.103

参照代码模板完善代码,实现下述功能。文件data.txt 文件中有多行数据,打开文件,读取数据,并将其转化为列表。统计读取的数据,计算每一行的总和、平均值,在屏幕上输出结果。

文件内容示例如下:

Chinese: 80,Math:85,English:92, Physical: 81,Art:85,Chemical:88

屏幕输出结果示例如下:

总和是: 511.0,平均值是: 85.17

输入输出示例

输入输出

示例 1从文件data.txt中读取总和是:511.0,平均值

是: 85.17

习题讲解

答案:

fi = open("data.txt", 'r')

for l in fi:

l = l.split(',')

s = 0.0

n = len(l)

for cours in l:

items = cours.split(':')

s += eval(items[1])

print(" 总和是: {} ,平均值是: {:.2f}".format(s,s/n))

fi.close()

4.201

参照代码模板完善代码,实现下述功能,不得修改其它代码。使用turtle 库的 turtle.circle() 函数和 turtle.seth() 函数绘制同心圆套圈,最小的圆圈半径为10 像素,不同圆圈之间的半径差是40 像素,效果如下图所示。

---------------------------------------------------------------

自动评阅说明

使用字符串形式输出____①____,____②____,____③ ____中应填代码即可以自动评阅得分

例如,如果代码为:

# 代码模板| # 你的代码 import turtle|import turtle

d = 0| d = 0for i in range(__1__): |for i in range(1):

turtle.fd(__2__) |turtle.fd(100)

turtle.__3__|turtle.fd(100 + (i * 3))

turtle.seth(d)|turtle.seth(d)

则在提交代码页面输入:

print('1', '100', 'fd(100 + (i * 3))')

提交后即可以查看得分

注:如果有运算符,请在运算符两侧加上空格

习题讲解

答案:

#请在 ______处填写一行代码 # 请不要修改其他代码

import turtle

r = 10

dr = 40

head = 90for i in range (4):

turtle.pendown()

turtle.circle(r)

r += dr

turtle.penup()

turtle.seth(-head)

turtle.fd(dr)

turtle.seth(0)

turtle.done()

要点:

1. 同心圆主要问题是要挪动画笔,用到pendown 和 penup

2.用循环来处理重画的个数

5.202

参照代码模板完善代码,实现下述功能。从键盘输入一个中文字符串变量

s,内部包含中文标点符号。

问题 1:( 8 分)用 jieba 分词,计算字符串 s 中的中文词汇个数,不包括中文标点符号。显示输出分词后的结果,用”/ 分”隔,以及中文词汇个数。示例如下:

输入:

工业互联网”实施的方式是通过通信、控制和计算技术的交叉应用,建造

一个信息物理系统,促进物理系统和数字系统的融合。

输出:

工业 / 互联网 /实施 / 的/ 方式 /是/ 通过 / 通信 /控制 / 和 / 计算技术 /的/ 交叉 / 应

用/建造 / 一个 / 信息 /物理 / 系统 / 促进 /物理 / 系统 / 和/数字 / 系统 / 的/融合 / 中文词语数是: 27

问题 2:( 7 分)在问题 1 的基础上,统计分词后的词汇出现的次数,用字典结构保存。显示输出每个词汇出现的次数,以及出现次数最多的词汇。如果有多个词汇出现次数一样多,都要显示出来。示例如下:

继续输出:

控制 : 1

物理 : 2

通信 : 1

交叉 : 1

互联网 : 1

和: 2

是: 1

计算技术 : 1

一个 : 1

的: 3

数字 : 1

促进 : 1

信息 : 1

方式 : 1

建造 : 1

应用 : 1

系统 : 3

通过 : 1

实施 : 1

融合 : 1

工业 : 1

出现最多的词是(的系统):3次

输入输出示例

输入输出

问题 1“工业互联网”实施中文词语数是:27

的方式是通过通信、控

制和计算技术的交叉应

用,建造一个信息物理

系统,促进物理系统和

数字系统的融合。

问题 2控制: 1

物理 : 2

通信 : 1

交叉 : 1

互联网 : 1

和: 2

是: 1

计算技术 : 1

一个 : 1

的: 3

数字 : 1

促进 : 1

信息 : 1

方式 : 1

建造 : 1

应用 : 1

系统 : 3

通过 : 1

实施 : 1

融合 : 1

工业 : 1

出现最多的词是

(的系统): 3 次习题讲解

答案:

#请在 .....处填写多行表达式或语句#可以修改其他代码

import jieba

#s = ' 工“业互联网”实施的方式是通过通信、控制和计算技术的交叉应

用,建造一个信息物理系统,促进物理系统和数字系统的融合。 '

s = input("请输入一个中文字符串,包含逗号和句号:")

s = s.replace(',','').replace('。','').replace('、 ','').replace('“ ','').replace('” ','') k=jieba.lcut(s)

d1 = {}

maxc = 0

wo = ''for i in k: