




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖北省咸宁市全国计算机等级考试Python语言程序设计专项练习(含答案)学校:________班级:________姓名:________考号:________
一、单选题(30题)1.下面代码的输出结果是()。deff(n):ifn==1:return1else:returnn*f(n-1)print(f(4))
A.24B.4C.0D.10
2.以下程序的输出结果是()。f=lambdax,y:xifx<yelseya=f(“aa”,“bb”)b=f(“bb”,“aa”)print(a,b)
A.aaaaB.aabbC.bbaaD.bbbb
3.以下程序的输出结果是()。sum=1foriinrange(1,11):sum+=iprint(sum)
A.1B.56C.67D.56.0
4.表达式divmod(40,3)的结果是()。
A.13,1B.(13,1)C.13D.1
5.下面这段代码的输出是()。l=’abcd’deff(x,result=['a','b,'c','d']):ifx:result.remove(x[一1])f(x[:一1])returnresultprint(f(l))
A.[’a’,,b’,’c’,’d’]B.['b',’c’,’d’]C.[’a’,'b',’c’]D.[]
6.Python提供3种基本的数字类型,它们是()。
A.整数类型、浮点数类型、复数类型
B.整数类型、二进制类型、浮点数类型
C.整数类型、二进制类型、布尔类型
D.整数类型、二进制类型、复数类型
7.以下程序的输出结果是()。try:print((3+4j)*(3-4j))except:print(”运算错误!!”)
A.(25+0j)B.5C.运算错误!!D.3
8.ls=[2,”apple”,[42,”yellow”,”misd”],1.2],表达式ls[2][一1][2]的结果是()。
A.mB.iC.sD.d
9.以下程序的输出结果是()。l=‘abcd’deff(x,result=[‘a’,‘b’,‘c’,‘d’]): ifx: result.remove(x[-1]) f(x[:-1]) returnresultprint(f(l))
A.[‘a’,‘b’,‘c’,‘d’]
B.[‘b’,‘c’,‘d’
C.[‘a’,‘b’,‘c’]
D.[]
10.以下代码的输出结果是()。whileTrue:guess=eval(input())ifguess==0x452//2:breakprint(guess)
A.0x452B.breakC.553D.”0x452//2”
11.以下代码的输出结果是()。forsin"grandfather":ifs==”d”ors==’h’:continueprint(s,end=")
A.grandfatherB.granfaterC.grandD.father
12.假设country.csv文件内容如下:巴哈马,巴林,孟加拉国,巴巴多斯白俄罗斯,比利时,伯利兹以下代码的输出结果是()。f=open(“country.csv”,“r”)ls=f.read().split(“,”)f.close()print(ls)
A.[‘巴哈马’,‘巴林’,‘孟加拉国’,‘巴巴多斯\n白俄罗斯’,‘比利时’,‘伯利兹’]
B.[‘巴哈马巴林’,‘孟加拉国’,‘巴巴多斯’,‘白俄罗斯’,‘比利时’,‘白利兹’]
C.[‘巴哈马,巴林,孟加拉国,巴巴多斯,白俄罗斯,比利时,伯利兹’]
D.[‘巴哈马’,‘巴林’,‘孟加拉国’,‘巴巴多斯’,‘\n’,‘白俄罗斯’,‘比利时’,‘伯利兹’]
13.树的度为3,共有29个结点,但没有度为1和2的结点。则该树中叶子结点数为()。
A.OB.9C.18D.不可能有这样的树
14.以下代码的输出结果是()。print(0.1+0.2==0.3)
A.一1B.TrueC.FalseD.0
15.程序流程图中带有箭头的线段表示的是()。
A.图元关系B.数据流C.控制流D.调用关系
16.以下代码的输出结果是()。ls=[”apple”,”red”,”orange”]deffunC(a):ls.append(a)returnfunC(”yellow”)print(ls)
A.[]
B.[”apple”,”red”,”orange”]
C.[“yellow”]
D.[”apple”,”red”,”orange”,”yellow”]
17.执行以下代码的结果是?A.(1,2,3,4)B.(1,2,3,[1,2,4])C.异常报错D.(1,2,3,[1,2,3],4)
18.以下关于Python函数的描述中,错误的是()。
A.函数代码是可以重复使用的
B.每次使用函数需要提供相同的参数作为输入
C.函数通过函数名进行调用
D.函数是一段具有特定功能的语句组
19.下列关于Python的描述正确的是()。
A.代码的缩进错误导致的是逻辑错误
B.跳跃结构是Python的流程结构之一
C.Python支持的数据类型包括char、int和float等
D.Python内存管理中,变量无须事先创建和赋值,而是可以直接使用
20.以下关于程序的异常处理的描述中,错误的是()。
A.except语句后面可以指定异常类型
B.异常和错误是两个相同的意思
C.带有else子句的异常处理结构,当try中的语句块正常执行结束且没有异常时执行else子句中的代码
D.异常处理机制虽然可以解决程序的一些错误,但不建议过度依赖
21.一棵二叉树共有25个节点,其中5个是叶子节点,则度为1的节点数为()。
A.16B.10C.6D.4
22.下面代码的输出结果是()。deffun(x,y,z):u=x+y—zprint(u)fun(1+2j,5,4一1j)
A.NameErrorB.(2+3j)C.2D.3j
23.以下程序执行后,book.txt文件的内容是()。fo=open(“book.txt”,“w”)ls=[‘book’,‘23’,‘201009’,‘20’]fo.write(str(ls))fo.close()
A.[‘book’,‘23’,‘201009’,‘20’]
B.book,23,201009,20
C.[book,23,201009,20]
D.book2320100920
24.下面关于递归函数,描述错误的是()。
A.递归函数必须有一个明确的结束条件
B.递归函数就是一个函数在内部调用自身本身
C.递归效率不高,递归层次过多会导致栈溢出
D.每进入更深一层的递归时,问题规模相对于前一次递归是不变的
25.在Python中,能够处理图像的第三方库是()。
A.PylnstallerB.PyserialC.PygameD.PIL
26.下面代码的输出结果是()。foriinrange(3):print(i,end=’,')
A.0,l,2B.0,l,2,C.l,2,3D.l,2,3,
27.运行以下Python中表达式后,X的值为是x=3==3,5
A.3B.5C.(True,5)D.(False,5)
28.以下程序的输出结果是()。print(0.1+0.2==0.3)
A.-1B.TrueC.FalseD.0
29.下列算法中,最坏情况下时间复杂度最低的是()。
A.堆排序B.寻找最大项C.顺序查找D.有序表的对分查找
30.以下程序的输出结果是()。foriin”miss”:forjinrange(3):print(i,end=”)ifi==”i”:break
A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss
二、判断题(10题)31.Python使用缩进来体现代码之间的逻辑关系。
A.是B.否
32.调用函数时,在实参前面加一个型号*表示序列解包。A.是B.否
33.在异常处理结构中,不论是否发生异常,finally子句中的代码总是会执行的。
A.是B.否
34.在Python中可以为自定义类的对象动态增加新成员。
A.是B.否
35.同一个列表对象中的元素类型可以各不相同。
A.是B.否
36.Python字典中的“值”不允许重复。
A.是B.否
37.异常处理结构也不是万能的,处理异常的代码也有引发异常的可能。
A.是B.否
38.只能对列表进行切片操作,不能对元组和字符串进行切片操作。
A.是B.否
39.如果在函数中有语句return3,那么该函数一定会返回整数3。
A.是B.否
40.在Python3.x中可以使用中文作为变量名。
A.是B.否
三、填空题(10题)41.执行语句x,y,z=map(str,range(3))之后,变量y的值为___________。
42.已知x=3,那么执行语句x+=6之后,x的值为_______________。
43.已知x=[1,2,3,4,5],那么执行语句delx[1:3]之后,x的值为____________。
44.已知x,y=3,5,那么执行x,y=y,x之后,x的值为__________。
45.表达式chr(ord('D')+2)的值为__________。
46.表达式(1,2,3)+(4,5)的值为__________________。
47.表达式[iforiinrange(10)ifi>8]的值为________________。
48.语句x,y,z=[1,2,3]执行后,变量y的值为__________。
49.任意长度的Python列表、元组和字符串中最后一个元素的下标为________。
50.表达式''.join(re.split('[sd]','asdssfff'))的值为_______________。
四、操作题(3题)51.考生文件夹下存在一个文件“PY102.py”,请写代码替换横线,不修改其他代码,实现以下功能。a和b是两个列表变量,列表a为[11,3,8]已给定,输入列表b,计算a中元素与b中对应元素乘积的累加和。例如:输入的列表b为[4,5,2],累加和为11*4+5*3+8*2=75,因此,屏幕输出的计算结果为75。试题程序:#请在程序的_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码a=[11,3,8]b=eval(input())#例如..[4,5,2]—(1)—foriin(2):s+=a[i]*b[i]print(s)
52.考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代码,实现以下功能:使用循环输出从1到50之间的奇数。
试题程序:
#请在_____处使用一行代码或表达式替换
#注意:请不要修改其他已给出代码______whilecount<50:
ifcount%2==0:
print(count,end=”,”)
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.A该代码的功能是根据传入的参数求取该数的阶乘,经过一系列的运算将结果返回,4的阶乘为24。本题选择A选项。
2.Alambda关键字用来定义匿名函数,语法为<函数名>=lambda<参数列表>:<表达式>。本题比较字符串大小,因为aa<bb,所以输出均为aa。本题选择A选项。
3.Bforiinrange(1,11)是将1,2,3,4,5,6,7,8,9,10依次赋给变量i,用变量sum累加每一次变化的i的值,最终sum=56。本题选择B选项。
4.Bdivmod(x,y)函数用来计算x和y的除余结果,返回两个值,分别是:x与y的整数除,即x//y,以及x与y的余数,即x%y。返回的两个值组成了一个元组类型,即小括号包含的两个元素(x//y,x%y)。40//3=13,40%3=1,故答案为B项。
5.D这段代码是一个递归函数,作用是把result列表中所有与1中一致的元素删除,所以最后的结果是一个空的列表,即[]。
6.APython提供的3种基本的数字类型为整数类型、浮点数类型、复数类型,分别对应数学中的整数、实数和复数。本题选择A选项。
7.A(3+4j)*(3-4j)是复数的乘法运算。设c1=a+bj,c2=c+dj(a、b、c、d均为实数),c1*c2=\n(ac-bd)+(bc+ad)j0结果是(25+0j)。本题选择A选项。
8.C列表索引正向递增索引从0开始,反向递减索引从一1开始,ls[2][一1][2]指的是列表中下标为2的元素下的下标为一1元素下的下标为2的元素,输出结果是s。本题选择C选项。
9.D这段代码是一个递归函数,作用是把result列表中所有与1中一致的元素删除,所以最后的结果是一个空的列表,即[]。本题选择D选项。
10.C该程序最外层是while循环,while循环的条件是True,由此可知while内的语句会无限循环。input()函数是用来获取用户从键盘输入的内容并以字符串类型返回。eval()函数是把字符串转换成Python可用的语言。if语句的作用是来控制程序是否继续循环,判断条件中0x452是十六进制数,对2整除的结果是553,如果用户输入的数据是553,则将结果输出并终止循环;如果输入其他数据,程序会一直要求用户输入直到输入正确的数据才会终止循环。本题选C选项。
11.Bfor循环将字符串grandfather中的字符依次赋给变量s,当s==”d”或s=='\nh”时,结束本次循环,不执行print(s,end=”);反之,则执行print(s,end\n=')。故输出结果为granfater。本题选择B选项。
12.A在Python中,split()方法通过指定分隔符对字符串进行切片,返回分隔后的字符串列表。以split(“,”)方法从CSV文件中获得内容时,无法去除换行符。‘巴巴多斯\\n白俄罗斯’作为一个列表元素出现,所以ls=[‘巴哈马’,‘巴林’,‘孟加拉国’,‘巴巴多斯\\n白俄罗斯’,‘比利时’,‘伯利兹’],最后输出列表。本题选择A选项。
13.D树的度为3,即树中只存在度为0、1、2、3的结点,假设叶子结点数为n,由于没有度为1和2的结点,则度为3的结点数为29一n,根据树中的结点数=树中所有结点的度之和+1,得3×(29一n)+0×1+0×2+n×0+1=29,得出的n不为整数,因此不存在这样的树。本题选择D选项。
14.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,因此只能精确表示分母质因子是2的分数。二进制中,1/2、1/4和1/8都可以被精确表示,但1/5或者1/10就变成了循环小数。所以,在十进制中能够精确表示的0.1与0.2(1/10与1/5),到了计算机所使用的二进制中就变成了循环小数。当对这些循环小数进行数学运算并将二进制数据转换成人类可读的十进制数据时,会对小数尾部进行截断处理。在不同的语言中,运行0.1+0.2会输出不同的结果。
15.C解析:程序流程图是人们对解决问题的方法、思路或算法的一种描述。其中,图框表示各种操作的类型,图框中的文字和符号表示操作的内容,流程线表示操作的先后次序。带箭头的线段在数据流程图中表示数据流。带箭头的线段在程序流程图中表示控制流。题中给出的选项中,在图元之间用带有箭头的线段表示图元关系。在模块之间用带有箭头的线段表示调用关系。构成程序流程图的基本图符及含义:→或↓表示控制流;□表示加工步骤;
表示逻辑条件。
16.D列表ls中有三个元素,函数funC(”yellow”),将”yellow”传递给形参a,用append()方法将a中内容添加到列表ls中,最后返回,故最终的ls=[”apple”,”red”,”orange”,”yellow”],print(ls),即将列表ls中的内容输出。
17.B
18.B函数是一段具有特定功能的、可重用的语句组,通过函数名来表示和调用。经过定义,一组语句等价于一个函数,在需要使用这组语句的地方,直接调用函数名称即可。采用参数名称传递方式不需要保持参数传递的顺序,参数之间的顺序可以任意调整,只需要对每个必要参数赋予实际值即可,每次使用函数不需要提供相同的参数作为输入。
19.APython包括三种控制结构:顺序结构、分支结构和循环结构;Python支持的数据类型有数字类型和字符串类型;Python变量使用前需要定义。
20.B编程语言的异常和错误是两个相似但不相同的概念。异常和错误都可能引起程序执行错误而退出,它们属于程序没有考虑到的例外情况。
21.A根据二叉树的性质3:在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个,所以本题中度为2的结点是5-1\n=4个,所以度为1的结点的个数是25-5-4=16个。本题选择A选项。
22.Bfun()函数进行加减计算,输入为复数,按复数加减运算法则计算结果为(2+3j)。
23.A执行fo=open(“book.txt”,“W”),打开book.txt文件,打开模式为“W”(覆盖写模式);创建列表ls=[“book”,“23”,“201009”,“20”];str()函数返回一个对象的字符串格式,str(ls)将列表类型的ls转换为字符串类型,fo.write(str(ls))将字符串写入book.txt文件中。本题选择A选项。
24.DA选项正确,递归函数必须要有一个明确的结束条件作为递归的出口;B选项正是递归函数的含义,正确;C选项正确,在计算机中,函数调用是通过栈这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧,由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出;D选项,每当进入更深一层的递归时,问题规模显然会相对前一次递归减小。
25.DPIL库是Python在图像处理方向的重要的第三方库,支持图像存储、处理和显示,它能够处理几乎所有的图片格式,可以完成对图像的缩放、剪裁、叠加,以及为图像添加线条和文字等。使用Python处理图像相关的程序,首选PIL库。本题选择D选项。
26.Brange()函数与for循环结合使用可以创建一个整数列表,且range(start,stop[,step])包含3个,代表列表的开始、结束以及步长,但其中不包含stop参数的范围,即区间为左闭右开。print()函数的end参数用来设置输出格式,默认为换行。该题表示输出数字之间使用逗号分隔。本题选择B选项。
27.C
28.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,因此只能精确表示分母质因子是2的分数。二进制中,1/2、1/4和1/8都可以被精确表示,但1/5或者1/10就变成了循环小数。所以,在十进制中能够精确表示的0.1与0.2(1/10与1/5),在计算机所使用的二进制中就变成了循环小数。当对这些循环小数进行数学运算并将二进制数据转换成人类可读的十进制数据时,会对小数尾部进行截断处理。在不同的语言中,运行0.1+0.2会输出不同的结果。本题选择C选项。
29.D对于长度为n的有序线性表,在最坏情况下,二分法查找(对分查找)需比较l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 消防分区施工方案(3篇)
- 铜梁拓展公司活动策划方案(3篇)
- 铝板石材施工方案(3篇)
- 观看廉洁影片活动方案策划(3篇)
- 交通管道过路施工方案(3篇)
- 建房封顶施工方案(3篇)
- 北京市朝阳区2023-2024学年七年级上学期期中考试生物考题及答案
- 安徽省芜湖市南陵县2024-2025学年高二上学期第一次月考地理试题含参考答案
- 心理基础考试题目及答案
- 校园美食问答题目及答案
- 《教育强国建设规划纲要(2024-2035年)》全文
- 2025年中国人寿:养老险总公司招聘笔试参考题库含答案解析
- 《中国动漫发展史》课件
- DB52-T1631-2021自然保护区综合科学考察技术规程
- 学校安保合同范本
- 客服外包合同范例
- 六年级阅读题打印20篇
- 制造业安全隐患举报与奖励制度
- 华师大版(新)七年级上册数学全册教案(教学设计)及教学反思
- 初中道德与法治教师培训
- 全过程工程造价咨询投标方案(技术方案)
评论
0/150
提交评论