海南省海口市全国计算机等级考试Python语言程序设计预测试题(含答案)_第1页
海南省海口市全国计算机等级考试Python语言程序设计预测试题(含答案)_第2页
海南省海口市全国计算机等级考试Python语言程序设计预测试题(含答案)_第3页
海南省海口市全国计算机等级考试Python语言程序设计预测试题(含答案)_第4页
海南省海口市全国计算机等级考试Python语言程序设计预测试题(含答案)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

海南省海口市全国计算机等级考试Python语言程序设计预测试题(含答案)学校:________班级:________姓名:________考号:________

一、单选题(30题)1.以下代码的输出结果是()。lis=list(range(4))print(lis)

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

2.下面说法错误的是()。

A.在UTF一8编码中一个汉字需要占用3个字节

B.在GBK和CP936编码中一个汉字需要2个字节

C.Python运算符%不仅可以用来求余数,还可以用来格式化字符串

D.Python字符串方法replace()对字符串进行原地修改

3.关于二维数据描述错误的是()。

A.二维列表对象输出为CSV文件,将遍历循环和字符串的split()方法相结合

B.二维数据由关联关系的数据构成

C.二维数据是一维数据的组合形式,由多个一维数据组合形成

D.二维数据可以使用二维列表表示,即列表中的每一个元素对应二维数据的每一行

4.执行以下代码的结果是()A.3B.5C.6D.8

5.属于Python读取文件一行操作的是()。

A.readtextB.readlineC.readallD.read

6.下面的d是一个字典变量,能够输出数字2的语句是()。d={’food’:{’cake’:1,’egg’:5},’cake’:2,’egg’:3}

A.print(d[’food’][’egg’])

B.print(d[’cake’])

C.print(d[’food’][一1])

D.print(d[’cake’][1])

7.以下关于文件的打开和关闭的描述中,正确的是()。

A.二进制文件不能使用记事本程序打开

B.二进制文件可以使用记事本或其他文本编辑器打开,但是一般来说无法正常查看其中的内容

C.使用内置函数openO且以w模式打开文件,若文件存在,则会引发异常

D.使用内置函数open()打开文件时,只要文件路径正确就总可以正确打开

8.执行以下代码的结果是()A.1B.2C.5D.8

9.f=open()可以打开一个文件,关于f的描述错误的是()。

A.f是文件对象引用,在程序中表示文件

B.f是一种特殊的Python变量,执行print(f)时会报错

C.f.read()可以一次性读入文件全部信息

D.执行m=f后,m和f同时表示所打开文件

10.执行以下程序,输出结果是()。y=’中文’x=’中文字’print(x>y)

A.NoneB.FalseC.FalseorFalseD.True

11.以下关于文件的描述中,错误的是()。

A.文件是存储在辅助存储器上的一组数据序列,可以包含任何数据内容

B.可以使用open()打开文件,用close()关闭文件

C.使用read()可以从文件中读人全部文本

D.使用readlines()可以从文件中读入一行文本

12.设栈与队列初始状态为空。首先A,B,C,D,E依次入栈,再F,G,H,I,J依次入队;然后依次出队至队空,再依次出栈至栈空。则输出序列为()。

A.E,D,C,B,A,F,G,H,I,j

B.E,D,C,B,A,J,I,H,G,F

C.F,G,H,I,J,A,B,C,D,E,

D.F,G,H,I,J,E,D,C,B,A

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

A.tryB.elseC.forD.continue

14.以下代码的输出结果是()。forsin”grandfather”:ifs==”d”.ors==’h’:continueprint(s,end=”)

A.grandfatherB.granfaterC.grandD.father

15.算法的空间复杂度是指()。

A.算法在执行过程中所需要的计算机存储空间

B.算法所处理的数据量

C.算法程序中的语句或指令条数

D.算法在执行过程中所需要的临时工作单元数

16.执行以下代码的结果是?3+5j>=5+3j

A.TrueB.FalseC.0D.异常报错

17.循环队列的存储空间为Q(l:50)。经过一系列正常的入队与退队操作后,front=rear=25。然后又成功地将一个元素入队,此时队列中的元素个数为()。

A.50B.1C.26D.2

18.以下对文件描述错误的是()。

A.文件是一个存储在辅助存储器上的数据序列

B.文本文件和二进制文件都是文件

C.文件中可以包含任何数据内容

D.文本文件能用二进制文件方式读入

19.在Python中,关于数据类型的描述错误的是()。

A.整数的书写格式支持十进制、二进制、八进制和十六进制

B.如果想知道参数的数据类型,可以使用type()函数获得

C.整数、浮点数、复数和布尔值都是Python的基本数据类型

D.浮点数是带有小数的数字,它存在范围的限制,如果计算结果超出上限和下限的范围不会报错,但会有warning的警告

20.以下不是Python文件读写方法的是()。

A.writelineB.readlineC.readD.write

21.以下代码的输出结果是()。print(0.1+0.2==0.3)

A.-1B.TrueC.FalseD.0

22.以下关于程序设计语言的描述,错误的选项是()。

A.Python解释器把Python代码一次性翻译成目标代码,然后执行

B.机器语言直接用二进制代码表达指令

C.Python是一种通用编程语言

D.汇编语言是直接操作计算机硬件的编程语言

23.以下属于turtle库颜色控制函数的是()。

A.right()B.pensize()C.seth()D.pencolor()

24.软件生命周期是指()。A.软件产品从提出、实现、使用维护到停止使用退役的过程

B.软件从需求分析、设计、实现到测试完成的过程

C.软件的开发过程

D.软件的运行维护过程

25.下面代码的输出结果是()。deff(n):ifn==1:return1else:returnn*f(n—1)print(f(4))

A.24B.4C.0D.10

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

A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构

B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况

C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况

D.循环队列中元素的个数由队头指针和队尾指针共同决定

27.将数据和操作置于对象统一体中的实现方式是()。

A.隐藏B.抽象C.封装D.结合

28.下列关于Python内置函数的使用描述错误的是()。

A.int(x)是将x转换为一个整数

B.print(“6+5”)的输出是11

C.die.clear()的结果是清空字典dic

D.使用aPPend()函数可以向列表添加元素

29.给定列表ls=[1,2,3,”1”,”2”,”3”],其元素包含两种数据类型,列表ls的数据组织维度是()。

A.二维数据B.一维数据C.多维数据D.高维数据

30.不属于Python的标准库的是()。

A.osB.sysC.scipyD.glob

二、判断题(10题)31.同一个列表对象中的元素类型可以各不相同。

A.是B.否

32.全局变量会增加不同函数之间的隐式耦合度,从而降低代码可读性,因此应尽量避免过多使用全局变量。

A.是B.否

33.在Python中定义类时实例方法的第一个参数名称不管是什么,都表示对象自身。

A.是B.否

34.当作为条件表达式时,{}与None等价。

A.是B.否

35.在任何时刻相同的值在内存中都只保留一份

A.是B.否

36.加法运算符可以用来连接字符串并生成新字符串。

A.是B.否

37.0o12f是合法的八进制数字。

A.是B.否

38.元组可以作为集合的元素。

A.是B.否

39.在函数内部直接修改形参的值并不影响外部实参的值。

A.是B.否

40.Python2.x和Python3.x中input()函数的返回值都是字符串。

A.是B.否

三、填空题(10题)41.表达式int('123',16)的值为_________。

42.表达式'Helloworld'.lower()的值为_____________。

43.表达式'Helloworld.IlikePython.'.rfind('python')的值为________。

44.Python内置函数____________用来返回序列中的最大元素。

45.表达式{1,2,3}-{3,4,5}的值为_________。

46.表达式'Helloworld'.lower().upper()的值为___________。

47.表达式set([1,1,2,3])的值为____________________。

48.表达式chr(ord('D')+2)的值为__________。

49.Python运算符中用来计算集合并集的是_______。

50.表达式13/4的值为__________。

四、操作题(3题)51.考生文件夹下存在两个Python源文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。马和骆驼都是哺乳动物,它们都有4只脚,体型也差不多大,我们将在这里为它们编写属于它们各自的类。问题1:在“PY301-l.py”文件中修改代码,代码中编写了一个马(Horse)的类,在这个类中马有3个属性,分别是年龄(age)、品种(category)及性别(gender)。在每创建一个马的对象时,我们需要为其指定它的年龄、品种及性别。该类中还编写一个get_descriptive()方法,能够输出马的这3个属性。每一匹马都有自己的最快速度,所以类中有一个speed()方法,可以输出马的最快速度值。并且在马的生命过程中,它的速度一直在变,类中还有一个update_Speed()方法用来更新马当前的最快速度值。例如:一匹12岁的阿拉伯公马,在草原上奔跑的速度为50千米每小时,要求调用get_descriptive()和up-date_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‘+_____+‘,’+‘itsfenderis‘+_____+’,’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()

52.考生文件夹下存在一个Python源文件“PY301.py”,请按照文件内说明修改代码,实现以下功能。恺撒密码是一种非常古老的加密算法,相传当年恺撒大帝行军打仗时为了保证自己的命令不被敌军知道,它采用了替换方法将信息中的每一个英文字母循环替换为字母表序列中该字母后面的第三个字母,即循环后三位,对应关系如下。原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ密文:DEFGHIJKLMNOPQRSTUVWXYZABC原文字母P,其密文字母C满足如下条件。C=(P+3)mod26解密方法反之,满足如下条件。P=(C-3)mod26恺撒密码包括加密算法和解密算法两个部分。恺撒密码的加密算法程序首先接收用户输入的文本,然后对字母a?z和字母A?Z按照密码算法进行转换,同时输出。其他非英文字母原样输出。试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#注意..提示框架的代码可以任意修改,以完成程序功能为准intxt=input(“请输入明文:")

53.考生文件夹下存在一个文件“PY102.py”,请写代码替换横线,不修改其他代码,实现以下功能。根据斐波那契数列的定义,F(0)=0,F(l)=l,F(n)=F(n-1)+F(n-2)(n≥2),输出不大于50的序列元素。例如:屏幕输出实例为0,1,1,2,3,…试题程序:#请在_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码a,b=0,1While_____(1)_____:print(a,end=’,’)a,b=_____(2)_____

参考答案

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

2.D字符串方法replace()用来替换字符串中指定字符或子字符串的所有重复出现,每次只能替换一个字符或一个字符串,把指定的字符串参数作为一个整体对待。该方法并不修改原字符串,而是返回一个新字符串。

3.A在Python中,二维列表对象输出为CSV文件,将遍历循环和字符串的join()方法相结合。split()方法一般在将文件中的数据转换为列表时使用。本题选择A选项。

4.A

5.B在Python语言中,文件读取方法有(设f代表文件变量):\nf.read():从文件中读入整个文件内容。\nf.readline():从文件中读入一行内容。\nf.readlines():从文件中读人所有行,以每行为元素形成一个列表。\nf.seek():改变当前文件操作指针的位置。本题选B选项。

6.B在Python语言中,字典是存储可变数量键值对的数据结构,键和值可以是任意数据类型,通过键索引值,并可以通过键修改值。因此,可以直接利用键值对关系索引元素。索引模式:<值>=<字典变量>[<键>]。故能够正确索引字典并输出数字2的语句是pnnt(d[’cake’]),B项正确。

7.B二进制文件可以使用记事本或其他文本编辑器打开,但是一般来说无法正常查看其中的内容;用内置函数open()且以w模式打开文件,若文件存在,则会覆盖原来的内容而不会引发异常。本题选择B选项。

8.C

9.Bf=open(),f是文件对象的引用,在程序中f代表打开的文件,执行print(f)不会报错,故B项错误、A项正确;f.read()方法如果不给出参数,则从文件中读入整个文件内容,故C项正确;执行m=f后,m也是该文件对象的引用,m与f都表示该打开文件对象,故D项正确。

10.D在Python中比较两个字符串的大小,要从第一个字符开始比较,只要比较出了大小就结束。本题中,x和y的前两个字符相同,但y没有第三个字符,所以x大,则x>y的结果为True。

11.D文件是存储在辅助存储器上的一组数据序列,可以包含任何数据内容。A项正确。可以使用open()打开文件,用close()关闭文件,B项正确。在Python语言中,文件读取方法有(设f代表文件变量):\nf.read():从文件中读入整个文件内容。\nf.readline():从文件中读入一行内容。\nf.readlines():从文件中读入所有行,以每行为元素形成一个列表。\nf.seek():改变当前文件操作指针的位置。C项正确。本题选择D选项。

12.D栈称为“后进先出”表或“先进后出”的线性表;队列称为“先进先出”或“后进后出”的线性表。F,G,H,I,J依次人队,则依次出队顺序为F,G,H,I,J;A,B,c,D,E依次人栈,则依次出栈顺序为E,D,C,B,A。故输出顺序为F,G,H,I,J,E,D,c,B,A。本题选D选项。

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

14.Bfor循环将字符串”grandfather。”中的字符依次赋给变量s,当s==”d”或s==”h”时,结束本次循环,不执行print(s,end=”);反之,执行print(s,end=“)。故输出结果为granfater。本题选B选项。

15.A算法的空间复杂度是指算法在执行过程中所需要的内存空间。本题选择A选项。

16.D

17.B当front=rear=25时可知队列要么为空,要么为满,题目中又成功地将一个元素入队,说明之前队列为空(为满时队列中无法入队元素),为空的队列入队一个元素后队列中元素个数为1。本题选择B选项。

18.D文件是存储在辅助存储器上的一组数据序列,可以包含任何数据内容。文件包括文本文件和二进制文件两种类型。文本文件和二进制文件的存储方式不同,所以文本文件不可以用二进制文件方式读入。本题选择D选项。

19.D浮点数的取值范围在一10308到10308之间,浮点数之间的区分精度约为2.22×10-16。对于除高精度科学计算外的绝大部分运算来说,浮点数类型的数值范围和小数精度足够“可靠”,一般认为浮点数类型没有范围限制。如果计算结果超出上限和下限的范围会产生溢出错误。

20.APython文件的读写方法有(file表示使用open函数创建的对象):\nfile.read([size]):参数可选,若未给定参数或参数为负则读取整个文件内容;若给出参数,则读取前size长度的字符串或字节流。\nfile.readline([size]):参数可选,若未给定参数或参数为负则读取一行内容;若给出参数,则读取该行前size长度的字符串或字节流。\nfile.readlines([hint]):参数可选,若未给定参数或参数为负则从文件中读取所有行,以每行为元素形成一个列表;若给出参数,则读取hint行。\nfile.write(str):将字符串或字节流写入文件。\nfile.writelines(1ines):向文件写入一个序列字符串列表。

21.C在Python中,0.1+0.2=0.30000000000000004。原因是:对于十进制,它只能表示以进制数的质因子为分母的分数。10的质因子有2和5,因此1/2、1/4、1/5、1/8及1/10都可以精确表示;相反,1/3、1/6及1/7都是循环小数,因为它们的分母使用了质因子3或者7。二进制中,只有一个质因子,即2,因此只能精确表示分母质因子是2的分数。二进制中,1/2、1/4及1/8都可以被精确表示,但1/5或者1/10就变成了循环小数。所以,在十进制中能够精确表示的0.1与0.2(1/10与1/5),到了计算机所使用的二进制中就变成了循环小数。当对这些循环小数进行数学运算并将二进制数据转换成人类易读的十进制数据时,会对小数尾部进行截断处理。在不同的编程语言中,运行0.1+0.2会输出不同的结果。本题选择C选项。

22.Apython语言属于脚本语言,脚本语言采用解释方式执行。解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程,不是一次性翻译的。

23.Dturtle库中,pencolor()用于设置画笔的颜色;color()用于设置画笔和填充颜色;pensize()用于设置画笔线条的粗细为指定大小;seth(angle)用于设置当前朝向为angle角度;right(angle)用于设置向右旋转angle角度。本题选择D选项。

24.A通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。

25.A该代码的功能是根据传人的参数求取该数的阶乘,经过一系列的运算将结果返回,4的阶乘为24。

26.D循环队列有队头和队尾两个指针,但是循环队列仍是线性结构的,所以A错误;在循环队列中需要队头指针与队尾指针来共同反映队列中元素的动态变化情况,所以选项B,C错误。本题选择D选项。

27.C对象具有封装性,从外面看只能看到对象的外部特性,对象的内部对外是封闭的。即封装实现了将数据和操作置于对象统一体中。本题答案为C选项。

28.BB选项中正确的输出应为6+5,当Print()函数圆括号内的变量被引号标注,则该变量被视为字符串。本题选择B选项。

29.B二维数据由多个一维数据构成,可以看作是一维数据的组合形式。本题中该列表中虽然包含两种数据类型,但仍然是一维数据。

30.Cscipy是Python的数据分析方向的第三方库。

31.Y

32.Y

33.Y

34.Y

35.N

36.Y

37.N

38.Y

39.Y

40.N

41.291

42.'helloworld'

43.-1

44.max()

45.{1,2}

46.'HELLOWORLD'

47.{1,2,3}

48.'F'

49.|

50.3.25

51.(1)fo=open(”PY301一1.txt”,”w”)classHorse():Def__init__(self,category,gender,age):self.category=categoryself.gender=genderself.age=ageself.horse_speed=0defget_descriptive(self):info=’thishorseis’+str(self.age)+’yearsold,’+’itscategory\r\nis’+self.category+’,’+'itsfenderis'+self.gender+’.’fo.write(info+”\\n”)defupdate_speed(self,new_speed):self.horse_speed=new_speedfo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.”)\r\nhorse=Horse("Arab","male","12")horse.get_deseriptive()horse.update_speed(50)fo.close()(2)fo=open(”PY301-2.txt”,”w”)classHorse():def__init__(self,category,gender,age):self.category=categoryself.gender=genderself.age=ageself.horse_speed=0defget_descriptive(self):info=’thishorseis’+str(self.age)+’yearsold,’+’itscategory\r\nis’+self.category+’,’+'itsfenderis’+self.gender+’.’fo.write(info+”\\n”)defupdate_speed(self,new_speed):self.horse_speed=new_speedfo.write(’thespeed0fthishorseis’+str(self.horse_speed)+”km/h.\\n”)classCamel(Horse):def_init_(self,

温馨提示

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

最新文档

评论

0/150

提交评论