安徽省巢湖市全国计算机等级考试Python语言程序设计重点汇总(含答案)_第1页
安徽省巢湖市全国计算机等级考试Python语言程序设计重点汇总(含答案)_第2页
安徽省巢湖市全国计算机等级考试Python语言程序设计重点汇总(含答案)_第3页
安徽省巢湖市全国计算机等级考试Python语言程序设计重点汇总(含答案)_第4页
安徽省巢湖市全国计算机等级考试Python语言程序设计重点汇总(含答案)_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

安徽省巢湖市全国计算机等级考试Python语言程序设计重点汇总(含答案)学校:________班级:________姓名:________考号:________

一、单选题(30题)1.下面关于递归函数,描述错误的是()。

A.递归函数必须有一个明确的结束条件

B.递归函数就是一个函数在内部调用自身本身

C.递归效率不高,递归层次过多会导致栈溢出

D.每进入更深一层的递归时,问题规模相对于前一次递归是不变的

2.在数据管理技术发展的三个阶段中,数据共享最好的是()。

A.人工管理阶段B.文件系统阶段C.数据库系统阶段D.三个阶段相同

3.以下程序的输出结果是()。x=10whilex:x-=1ifnotx%2:print(x,end=‘’)else:print(x)A.86420B.975311C.97531D.864200

4.以下关于Python函数的描述中,错误的是()。

A.函数代码是可以重复使用的

B.每次使用函数需要提供相同的参数作为输入

C.函数通过函数名进行调用

D.函数是一段具有特定功能的语句组

5.用Pylnstaller工具把Python源文件打包成一个独立的可执行文件,使用的参数是()。

A.-LB.-C.-FD.-i

6.以下程序的输出结果是()。lis=list(range(4))print(lis)

A.[0,1,2,3,4]B.[0,1,2,3]C.0,1,2,3,D.0,1,2,3,4

7.执行以下代码的结果是?intx=-3;inty=-10;System.out.println(y%x);A.-1B.2C.1D.3

8.下面代码的输出结果为()。foriinrange(8):ifi%2!=1:continueelse:print(i,end=”,”)

A.0,B.1,C.1,3,5,7,D.0,2,4,6,

9.列表变量Is共包含10个元素,Is索引的取值范围是()。

A.(0,10)B.[0,10]C.(l,10]D.[0,9]

10.在数据库设计中,将E-R图转换成关系数据模型的过程属于()。

A.物理设计阶段B.需求分析阶段C.概念设计阶段D.逻辑设计阶段

11.S=’1234567890’,以下表示’1234’的选项是()。

A.s[1:5]B.s[0:3]C.s[一10:-5]D.s[0:4]

12.跳出所处的最近层循环的是()

A.breakB.continuesC.continueD.Pass

13.若想要在屏幕上打印输出Hello,World,应该使用下列哪个语句?()

A.printf(”Hello,World”)

B.printf(Hello,World)

C.print(”Hello,World”)

D.print(Hello,World)

14.关系数据库中的键是指()。

A.关系的所有属性B.关系的名称C.关系的专用保留字D.能唯一标识元组的最小属性或属性集

15.以下保留字不用于循环逻辑的是()。

A.tryB.elseC.forD.continue

16.下列叙述中正确的是()。

A.快速排序适用于顺序存储的线性表

B.快速排序适用于链式存储的线性表

C.链式存储的线性表不可能排序

D.堆排序适用于非线性结构

17.以下代码的输出结果是()。x=’R\OS\OT’print(len(x))

A.3B.5C.7D.6

18.以下程序的输出结果是()。ss=set(“htslbht”)sorted(ss)foriinss: print(i,end=‘’)

A.hlbstB.htslbhtC.tsblthD.hhlstt

19.Python中匿名函数的关键字是()。

A.lambdaB.globalC.withD.I)ass

20.以下选项中不是Python文件目录操作方法的是()。

A.split()B.rename()C.getcwd()D.rmdir()

21.下列关于栈的叙述正确的是()。

A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据C.只能在栈底插入数据D.不能删除数据

22.不能使下面代码结束的是()。whileTrue:inp=eval(input(请输入一个数值:’.))ifinp//3:break

A.2B.3C.4D.5

23.以下代码的输出结果是()。lis=list(range(4))print(lis)

A.[0,1,2,3,4]B.[0,1,2,3]C.0,1,2,3,D.0,1,2,3,4,

24.字典d={‘Python’:123,‘C’:123,‘C++’:123},len(d)的结果是()。

A.12B.6C.9D.3

25.下面代码的输出结果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(C))

A.3B.5C.2D.0

26.ls=[2,”apple”,[42,”yellow”,”misd”],1.2],表达式ls[2][一1][2]的结果是()。

A.mB.iC.sD.d

27.以下关于字符串的描述正确的是()。

A.字符应视为长度为1或2的字符串

B.字符串中的字符可进行数学运算,但进行数学运算的字符必须为数字

C.在三引号字符串中可包含换行回车等特殊的字符

D.字符串可以进行切片赋值

28.下面代码的输出结果是()。foriinrange(0,10,2):print(i,end="")

A.02468B.2468C.0246810D.246810

29.学校规定一个年级的所有班配备一名辅导员,则实体班级与实体辅导员之间的联系是()。

A.多对多B.多对一C.一对多D.一对一

30.数据库管理系统能实现对数据库中数据的查询、插入、修改及删除,这类功能称为()。

A.数据控制功能B.数据定义功能C.数据存储功能D.数据操纵功能

二、判断题(10题)31.Python字符串方法replace()对字符串进行原地修改。

A.是B.否

32.如果定义类时没有编写析构函数,Python将提供一个默认的析构函数进行必要的资源清理工作。

A.是B.否

33.假设已成功导入os和sys标准库,那么表达式os.path.dirname(sys.executable)的值为Python安装目录。

A.是B.否

34.Python3.x和Python2.x唯一的区别就是:print在Python2.x中是输出语句,而在Python3.x中是输出函数。

A.是B.否

35.在循环中continue语句的作用是跳出当前循环。

A.是B.否

36.pip命令支持使用扩展名为whl的文件离线安装Python扩展库。

A.是B.否

37.在Python3.x中语句print(*[1,2,3])不能正确执行。

A.是B.否

38.在编写函数时,建议首先对形参进行类型检查和数值范围检查之后再编写功能代码,或者使用异常处理结构,尽量避免代码抛出异常而导致程序崩溃。

A.是B.否

39.运算符“-”可以用于集合的差集运算。

A.是B.否

40.删除列表中重复元素最简单的方法是将其转换为集合后再重新转换为列表。

A.是B.否

三、填空题(10题)41.表达式len([iforiinrange(10)])的值为__________。

42.表达式3&6的值为_________。

43.已知列表x=[1,3,2],那么执行语句y=list(reversed(x))之后,x的值为__________。

44.已知x=(3),那么表达式x*3的值为__________。

45.代码foriinrange(3):print(i,end=',')的执行结果为_________________。

46.表达式[indexforindex,valueinenumerate([3,5,7,3,7])ifvalue==max([3,5,7,3,7])]的值为__________________。

47.已知x为非空列表,那么执行语句y=x[:]之后,id(x[0])==id(y[0])的值为__________。

48.表达式sorted([13,1,237,89,100],key=lambdax:len(str(x)))的值为___________________________________。

49.已知x为非空列表,那么表达式random.choice(x)inx的值为___________。

50.表达式list(filter(lambdax:x>2,[0,1,2,3,0,0]))的值为_________。

四、操作题(3题)51.考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代码,实现以下功能:使用循环输出从1到50之间的奇数。

试题程序:

#请在_____处使用一行代码或表达式替换

#注意:请不要修改其他已给出代码______whilecount<50:

ifcount%2==0:

print(count,end=”,”)

52.考生文件夹下存在两个Python源文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能:马和骆驼都是哺乳动物的一种,它们都有四只脚,体型也差不多大,作为现实世界中的一个类生物,我们将在这里为它们编写属于它们各自的类。

问题1:在PY301一1.py文件中修改代码,代码中编写了一个马(Home)的类,在这个类中马有三个属性,分别是年龄(age)、品种(category)和性别(gender)。在每创建一个马的对象时,我们需要为其指定它的年龄、品种和性别。该类中还编写一个get_deseriptive()方法,能够打印出马的这三个属性。每一匹马都有自己的最快速度,所以类中有一个speed()方法,可以打印出马的最快速度值。并且在马的生命过程中,它的速度一直在变,类中还有一个update_speed()方法用来更新马当前的最快速度值。

例如:一匹12岁的阿拉伯公马,在草原上奔跑的速度为50km/h,要求调用get_descriptive()和update_speed()方法,将输出的结果保存在考生文件夹下,文件命名为“PY301—1.txt”。

试题程序:

#以下代码为提示框架

#请在…处使用一行或多行代码替换

#请在_____处使用一行代码替换

#注意:提示框架代码可以任意修改,以完成程序功能为准

fo=open(“PY301—1.txt”,”W”)______Horse():

def______(self,category,gender,age):

defget_descriptive(self):

info=’thishorseis’+_____+’yearsold,’+’itscategoryis’+_+’,’+’itsfenderis’+_______+’.’

fo.write(info+“\n”)

defupdate_speed(self,new_speed):________

fo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.”)

fo.close()

问题2:在PY301—2.py文件中修改代码,该代码编写了一个骆驼类(Camel),这个类继承自上一个文件中的马类但是不对马类中的属性和方法进行操作。因为每个骆驼的驼峰数量不一致,我们在类中添加驼峰数目这个新属性,并且添加一个打印出骆驼驼峰数量的方法。

例如:一个双峰驼20岁的母骆驼以每小时40千米的速度奔跑在沙漠中,调用父类的方法和Camel类本身的方法将结果保存在“PY301—2.txt”中,保存在考生文件夹下。试题程序:#以下代码为提示框架#请在…处使用一行或多行代码替换

#请在________处使用一行代码替换

#注意:提示框架代码可以任意修改,以完成程序功能为准

fo=open(”PY301—2.txt”,”W”)

________Horse():

def_______(self,category,gender,age):

defget_descriptive(self):

info=’thishorseis’+________+’yearsold,’+’itscategoryis’+_______+’,’+’itsfendemis’+_______+’.’

fo.write(info+"\n")

defupdate_speed(self,new_speed):

________fo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.\n”)clasSCamel(Horse):

def__init__(self,category,gender,age):

______.__init__(category,gender,age)

self.hump_size=2defdescribe_hump_size(self):

fo.write(’thiscamelhas’+str(self.hump_size)+’hump.’)

fo.close()

53.考生文件夹下存在一个文件“PY201.py”,请写代码替换横线,不修改其他代码,实现以下功能。使用turtle库的turtle.right()函数和turtle.fd()函数绘制一个五角星,边长为200像素,5个内角度数为36度,效果如下所示。试题程序:#请在程序的_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码fromturtleimport*foriin_____(1)_____:fd(_____(2)_____)_____(3)_____

参考答案

1.DA选项正确,递归函数必须要有一个明确的结束条件作为递归的出口;B选项正是递归函数的含义,正确;C选项正确,在计算机中,函数调用是通过栈这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧,由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出;D选项,每当进入更深一层的递归时,问题规模显然会相对前一次递归减小。

2.C数据管理发展至今已经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。其中最后一个阶段结构简单,使用方便逻辑性强物理性少,在各方面的表现都最好,一直占据数据库领域的主导地位,所以选择C)。

3.D

4.B函数是一段具有特定功能的、可重用的语句组,通过函数名来表示和调用。经过定义,一组语句等价于一个函数,在需要使用这组语句的地方,直接调用函数名称即可。采用参数名称传递方式不需要保持参数传递的顺序,参数之间的顺序可以任意调整,只需要对每个必要参数赋予实际值即可,每次使用函数不需要提供相同的参数作为输入。

5.CPylnstaller工具没有-L参数;-D是默认值,生成dlst目录;-F是指在dlst文件夹中只生成独立的打包文件;-i是指定打包程序使用的图标文件。本题选择C选项。

6.B用方括号([])表示列表类型,也可以通过list(x)函数将集合或字符串类型转换成列表类型。此代码生成列表lis=[0,1,2,3],最后通过print()函数输出。本题选择8选项。

7.A

8.C该程序段是输出8以内的奇数,continue语句只结束本次循环,不终止整个循环的执行。

9.D列表使用方括号作为索引操作符,索引从0开始,即第一个元素的索引是0,第二个元素的索引是1,依此类推。本题列表中有10个元素,则索引取值范围是[0,9]。本题选择D选项。

10.D数据库的逻辑设计工作主要是将E-R图转换成指定关系数据库管理系统(RelationalDa-tabaseManagement\nSystem,RDBMS)中的关系模式。本题选择D选项。

11.D对字符串中某个子串或区间的检索称为切片。切片的使用方式如下:\n<字符串或字符串变量>[N:M]\n切片获取字符串从N到M(不包含M)的子字符串,其中N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号。切片要求N和M都在字符串的索引区间,如果N大于等于M,则返回空字符串。如果N缺失,则默认将N设为0;如果M缺失,则默认表示到字符串结尾。\n题干中s[1:5]=’2345’,s[0:3]=’123’,s[一10:一5]=’12345’,s[0:4]=’1234’。

12.A

13.Cptint()函数用于输出运算结果,根据输出内容不同,有3种用法:①仅用于输出字符串,格式为:print(<待输出字符串>),字符串需要用单引号或者是双引号括起来;②仅用于输出一个或多个变量,格式为:print(<变量1>,<变量2>,…<变量n>);③用于混合输出字符串与变量值,格式为:print(<输出字符串模板>.format(<变量1>,<变量2>,…<变量n>))。该题考查的是第一种用法。

14.D在关系(二维表)中凡是能唯一标识元组的最小属性或属性集称为该关系的键或者码。本题选择D选项。

15.A用于循环逻辑的保留字:while、for、else、break、continue。try用于捕捉异常。

16.A排序可以在不同的存储结构上实现,但快速排序法适用于顺序存储的线性表,不适用于链式存储的线性表。堆排序适用于线性结构,不适用于非线性结构。本题选择A选项。

17.B在Python中len()函数是输出字符串长度,x=’R\0S\0T’,分别有R、\0、S、\0和T5个字符,所以len(x)=5,print(len(x))是将5打印出来。这里要注意,Python中len()函数遇见’\0’不结束,’\0’算是一个转义字符。本题选择B选项。

18.Aset()函数是将其他的组合数据类型变成集合类型,返回结果是一个无重复且排序任意的集合n因此,set(“htslbht”)的返回值是一个类似{‘h’,‘l’,‘b’,‘s’,‘t’}的集合,然后将其赋值给ss。sorted(ss)的返回值是对ss进行排序后的结果,即执行sorted(ss)后,ss的值并没有改变,最后仍输出hlbst。本题选择A选项。

19.AB项是定义全局变量的关键字,C项是with…as用来代替传统的try…finally语法,D项的意思是程序什么都不做。

20.Arename():给文件重命名;getcwd():得到当前工作目录,即当前Python脚本工作的目录路径;rmdir():删除目录。split():按给出的分隔符分隔字符串,返回的是列表类型。

21.B栈是按“先进后出”的原则组织数据的,数据的插入和删除都在栈顶进行操作。

22.Awhile循环条件一直为Tme,即无限循环,只要inp\n/门条件为真,进入循环,执行break语句,即可跳出while循环。2//3的值为0,条件为假,不执行break语句,无法结束程序执行。本题选择A选项。

23.B用中括号([])表示列表类型,也可以通过list(x)函数将集合或字符串类型转换成列表类型。此代码生成列表lis=[0,1,2,3],最后通过print()函数输出。本题选B选项。

24.Dlen(d)方法返回字典d的键值对个数。字典的每个键值对用冒号(:)连接,不同键值对之间用逗号(,)隔开,整个字典包括在花括号({})中。字典d中共有3个键值对,故len(d)=3。本题选择D选项。

25.Adivmod(a,b)函数返回的是两个数值的商和余数,那么a和b的值就分别是(2,1)和(0,2),而C是把a、b相加后转为集合型,那么a\n+b为(2,1,0,2),转成集合后即为{0,1,2},最后是取总和的sum()函数,所以相加起来是的总和为3。本题选择A选项。

26.C列表索引正向递增索引从0开始,反向递减索引从一1开始,ls[2][一1][2]指的是列表中下标为2的元素下的下标为一1元素下的下标为2的元素,输出结果是s。本题选择C选项。

27.C字符应视为长度为1的字符串;字符串中的字符不可以进行数学运算,如果是数字字符串需要将其转换为数值类型方可计算;字符串可进行切片,但不能赋值。

28.Arange(start,\nend,step)产生的是以[start,end)为区间并且步长为step的一个序列。通过for循环遍历输出,元素之间以空格符分隔。本题选择A选项。

29.B一个年级有很多班,这些班只配备一个名辅导员,因此实体班级与实体辅导员之间的联系是多对一。

30.D数据定义功能:负责数据的模式定义与数据的物理存取构建。数据操纵功能:负责数据的操纵,包括查询与增、删、改等操作。数据控制功能:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。本题选择D选项。

31.N

32.Y

33.Y

34.N

35.N

36.Y

37.N

38.Y

39.Y

40.Y

41.10

42.2

43.[1,3,2]

44.9

45.0,1,2,

46.[2,4]

47.True

48.[1,13,89,237,100]

49.True

50.[3]51.count=0\r\n

whilecount<50:\r\n

count+=1\r\n

ifcount%2==0:\r\n

continue\r\n

print(count,end=”,”)判断一个数是否为奇数,即判断这个数能否被2整除,可以被整除则为偶数,结束本次循环,使用continue语句;不可以被整除则为奇数,输出该数。while循环不具有自动计数的功能,所以需要定义一个变量,初始值为0,每经过一次循环,变量加1;当变量超过50时,停止循环。

52.(1)fo=open(”PY301一1.txt”,”w”)\r\nclassHorse():

def==init==(self,category,gender,age):\r\n

self.category=category\r\n

self.gender=gender\r\n

self.age=age\r\n

self.horse_speed=0\r\n

defget_descriptive(self):\r\n

info=’thishorseis’+str(self.age)+’yearsold,’+’itscategoryis’+self.category+’,’+'itsfenderis'+self.gender+’.’\r\n

fo.write(info+”\n”)\r\ndefupdate_speed(self,new_speed):\r\n

self.horse_speed=new_speed\r\n

fo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.”)\r\nhorse=Horse("Arab","male","12")\r\nhorse.get_deseriptive()\r\nhorse.update_speed(50)\r\nfo.close()\r\n(2)fo=open(”PY301~2.txt”,”w”)\r\nclassHorse():\r\n

def__init__(self,category,gender,age):\r\n

self.category=category\r\n

self.gender=gender\r\n

self.age=age\r\n

self.horse_speed=0\r\ndefget_descriptive(self):\r\n

info=’thishorseis’+str(self.age)+’yearsold,’+’itscategoryis’+self.category+’,’+\r\n'itsfenderis’+self.gender+’.’\r\n

fo.write(info+”\n”)\r\ndefupdat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论