1、中国电子学会青少年软件编程等级考试标准python三级精品word练习中国电子学会青少年软件编程等级考试标准python三级精品word练习一、选择题1如图Python代码执行后,a,b的值分别为:( )A5,10 B10,5 C5,5 D10,102在Python中,表达式2*3的结果是( )A5 B8 C6 D33python语言的特点( )。A简单 B免费、开源 C可移植性 D以上都是4在Python中print(8+7%2*2)的执行结果是( )A5 B1 C6 D115Python文件的后缀名是( )。A.doc B.vbp C.py D.exe6下列选项中,合法的Python变量名
2、是( )Aprint Bspeed CP Da#27Python程序文件的扩展名是( )。A.python B.pyt C.pt D.py8在python中,运行以下程序,结果应为( )a=5b=7b+=3a=b*20a+=2a=a%bprint(a,b)A5 7 B20 10 C22 7 D2 109在python中,想输出一行文字,要用到的函数是( )。Ainput() Bint() Cprint() Dfloat()10Python使用函数( )接收用 输入的数据Aaccept() Binput() Creadline() Dprint()11在python中,运行下列程序,正确的结果是
3、( )s=0for i in range (1,5): s=s+iprint(i=,i,s=,s)Ai=4 s=10 Bi=5 s=10 Ci=5 s=15 Di=6 s=1512以下python程序段运行后,x和st的值分别是( )x=123+678st=123+678A123678 123678 B123678 801 C801 123678 D801 80113利用Python求100以内所有能被3整除的正整数,代码如下:则下列程序第3行的横线应该填( )Ai=i*3 Bi=i%3 Ci%3=0 Di/3=114如下Python程序段 x = 0 while x = D=17下列不可以作
4、为Python合法变量名的是( )Ac0 B2a Ca_3 D小河18以下 Python 代码的运行结果是( )。a = 3b = 4a = a * b print(a) A3 B4 C12 Da*b19我们可以对文本中词频较高的分词,通过词云图给予视觉上的突出,小明打算用Python程序来生成词云图,程序中需要用到以下哪个第三方库?( )AWordCloud Bmath Crandom Dturtle20王明编写了Python程序,根据输入的体重和身高计算BM值并显示是否超标。王明体重80kg,身高170cm。其中“体重80kg”“身高170cm”是对王明体重身高的符号记录属于( )A数据
5、B信息 C知识 D智慧21Python中变量的命名遵循的规则,不正确的是( )A以字母或下划线开头,后面可以是字母、数字或下划线。 B区分大小写C以数字开头,后面可以是字母、数字或下划线。 D不能使用保留字22小林同学想要利用Python来编写一道程序,解决“1+2+3+100”这个问题,那么小林同学在编写程序的过程中可能会用到哪些语句( )A赋值语句B循环语句C条件语句D输出语句23下列与数学表达式对应的python表达式,正确的是( )。A( - b + math. sqrt (b * b 4 * a * c) /a * aB- b + math. sqrt (b * b 4 * a *
6、c) /2*aC( -b + math. sqrt (b * 2 4 * a * c) /(2 * a)D( -b + math. sqrt ( b * b 4 * a * c) / (2 * a)24关于Python的内存管理,下列说法错误的是( )A变量不必事先声明 B变量无需先创建和赋值就可直接使用C变量无须制定类型 D可以使用del释放资源25王明同学运用 Python语言编写程序,根据输入的体重和身高计算BM值并验算其体重指数是否超标,属于( )A数据 B信息 C知识 D智慧26下列Python程序段运行的结果是( )。i=0sum=0while i10: if i%2=0: sum
7、+=i i+=2print(sum=,sum)Asum=17 Bsum=18 Csum=19 Dsum=2027已知列表list1=8,22,34,9,7,则python表达式len(list1)+min(list1)的值为( )A5 B34 C7 D1228如下Python程序段x = 2print (x+1)print (x+2)运行后,变量x的值是( )A2 B3 C5 D29在python中,下列哪个选项是正确的赋值语句( )A5s= 80 B2018 =x Ca+b=c Ds=s+530在数学中,我们一般使用“=“表示相等关系,那么“=”在Python语言中的写法为( )A= B=
8、C:= D二、程序填空31某餐馆近期推出“消费1000元及以上享受8折优惠,1000元以下享受每满100减15优惠”的活动。以下Python程序段实现了生成顾客消费清单的功能,请补全处代码。def gs(n): #字符串长度统一if len(n)=5:n=_ #取字符串的前5个字符else:n=n+ *(5-len(n)return nr=1000;x=100;y=15;z=0.8 #从系统中分别获取消费额度、满和减以及打折的数值dis=红烧排骨,香炸刀鱼,虾仁,菜心,米饭 #某顾客所点菜品名称num=1,1,1,1,3 #某顾客所点菜品数量mon=46,45,68,16,1 #某顾客所点菜品
9、单价print(菜品名称,数量,小计)_for i in range(len(dis):print(gs(disi),numi, ,numi*moni)s=s+numi*moniif s=r:total=s*zelse:_print(消费合计:,s)print(应收现金:,total)32现今信息化时代,信息的传输十分迅速,足不出户便知天下事。许多社交平台都有设置本平台的热点排行榜,方便用户了解正在发生的热门事件。但社交平台数量众多,平台用户种类和数量也大不相同,导致不同平台热点的实际热度大小也不同。小钟为了确保自己知道的热点是真正的热点,于是打算用功能强大的python把各个平台的热点排行榜
10、进行合并,形成自己的热点排行榜。为了热点之间比较方便,小钟设置了一个热度值来衡量一个热点的热度大小,热度值越大说明这个热点的热度越高。现在小钟已经获得了如下两个平台的热度值从小到大的排行榜,正当他打算将之合并为一个从小到大的排行榜时,却被老师叫走了。于是他决定把这个小功能交给他的好朋友你来实现,你想到2种算法,请把下列程序填写完整。AP10P9P8P7P6P5P4P3P2P11166116329438582652714756925BE10E9E8E7E6E5E4E3E2E135116215271309428576772806950Python程序如下:A= 11,66,116,329,438,
11、582,652,714,756,925B = 35,116,215,271, (5)_,428,576,772,806,950算法一:myRank = i = 0j = 0while (i len(A) and j len(B): if (Ai Bj): (6)_ i += 1 else: myRank.append(Bj) j += 1while (i = len(A): myRankk = Bj j += 1 elif (j = len(B): myRankk = Ai i += 1 elif (9)_): myRankk = Ai i += 1 else: myRankk = Bj j
12、+= 1print(myRank)33学习了Python绘制图形操作后,信息小组接到了编程演示的任务。为此,小组同学编写了一段代码,绘制出多个不同颜色的圆形。代码如下:import turtleturtle. bgcolor(black)colors=red, green, blue, yellowfor x range(100):turtle. pencolor(colorsx%4)turtle. circle(x)turtle. left(90)请分析任务,完成下列题目。(1)程序中处应填写(_) 。Aprint Binput Cin Dcolors(2)程序中x%4的作用是(_)。A计算
13、x乘以4的结果B计算x除以4的整数部分C计算x除以4的小数部分D计算x除以4的余数(3)执行此程序,绘制出圆形的总颜色数是(_)。A1 B4 C5 D100(4)执行此程序,绘制出圆形的总个数是(_)。A1 B4 C99 D100(5)此程序属于程序设计结构中的(_)。A顺序结构 B分支结构C循环结构 D跳转结构34辗转相除法,又称欧几里德算法,用于计算两个正整数m、n的最大公约数。它是已知最古老的算法,其可追溯至公元前300年前。辗转相除法的算法步骤是,对于给定的两个正整数m、n(mn),用m除以n得到余数r,若余数r不为0,就将n和r构成新的一对数(m=n,n=r),继续上面的除法,直到余
14、数为0,这时m就是原来两个数的最大公约数。因为这个算法需要反复进行除法运算,故被形象地命名为“辗转相除法”。小曲设计了辗转相除法的算法,请根据下面算法回答问题。描述一描述二描述三输入两个正整数m,n(mn);计算m除以n所得的余数r;m=n,n=r;若r=0,则m,n的最大公约数等于m;否则转到步骤;输出最大公约数m;结束。(1)描述一是_描述法;描述二是流程图描述法;描述三是计算机程序语言描述法。(2)在描述三中代码4到6行作用是_。(3)在描述三程序设计中,补充代码第8行划线处为_。35完善代码并保存。实现功能:从键盘输入10个学生的测试成绩,输出最高分和最低分。cj= for i in
15、range(0,_): x=float(input(请输入一个数) cj.append(_) print(max(cj), min(_)input(运行完毕,请按回车键退出.)36完善程序实现以下功能并保存。输入一元二次方程的系数a,b,c的值,求解一元二次方程 ax2+bx+c=0(a0)#请不要更改源程序的结构,删除原题里的、。填写正确的代码,使程序完善import matha=float(input(请输入方程系数a(!=0):)b=float(input(请输入方程系数b:)c=float(input(请输入方程系数c:)delta=b*b-4*a*cif delta_: x1=(-b
16、+math.sqrt(delta)/(2*a) x2=(-b-math.sqrt(delta)/(2*a) print(方程有两个不同的解,x1,x2)elif delta=0: x1=_ print(方程有两个相同的解,x1)else: print(方程无解)input(运行完毕,请按回车键退出.)37分析完善程序某市出租车收费标准如下:(1)3公里内(含3公里),收费8元(2)超过3公里但未超过6公里部分,按1.5元/公里收费(3)超过6公里部分,按2.25元/公里收费。根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?算法分析假设总费用为p,则可以分段计算p=8 (s3)p=
17、1.5*(s-3)+8 (36)参考代码a=float(input(“s=”)if s 6 : p=2.25*(s-6)+1.5*3+8print( p)根据上述回答如下问题:(1)本题采用的算法是_(填:解析法/枚举法/排序法/递归法)。(2)程序代码中空白处应填写的条件是_(填: A/B/C/D)。A3s=6 B3=s3 and s3 Or s=638编写程序,找到并输出100以内的素数。39阅读程序。阅读求水仙花数的代码并回答问题。“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=13+53+33,请计算并输出所有三位数的水仙花数。fo
18、r n in range(100,1000): i=n/100 j=n/100%10 k=n%10 if n=i*i*i+j*j*j+k*k*k:print(n)(1)/的符号作用是 _ 。(2)%的符号作用是 _ 。(3)=的符号作用是 _ 。(4)在代码中,变量i表示的是三位数中的 _ 位。(5)在代码中,变量j 表示的是三位数中的 _ 位。(6)在代码中,变量k表示的是三位数中的 _ 位。(7)在range(100,1000)这个区域内,变量n无法取到的数值是_。40“百鸡百钱”问题是一个有名的数学问题,出自张丘建算经。其内容是:公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文
19、钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?(1)请在空格处填写正确的代码,使程序完善实现以下功能。money=100 #一共100文钱num=100 #一共100只鸡cock_price=5 #公鸡价格5文hen_price=3 #母鸡价格3文threechick_price=1 #3只小鸡1文for cock_num in range(1,_): #公鸡只数可能为1-20 for hen_num in range(1,_): #母鸡只数可能为1-33 for chick_num in range(1,101): #(3小鸡)只数可能为1-100 money1
20、=cock_num*cock_price+hen_num*hen_price+chick_num/threechick_price num1=cock_num+hen_num+chick_num if money1=money and num1=num: print (cock_num,hen_num,_)input(运行完毕,请按回车键退出.)(2)运行程序,运行结果如图所示。【参考答案】*试卷处理标记,请不要删除一、选择题1B【详解】本题主要考查Python程序的执行。a=5,b=10,c=a=5,a=b=10,b=c=5,故代码执行后,a,b的值分别为:10和5,故本题选B选项。解析:B
21、【详解】本题主要考查Python程序的执行。a=5,b=10,c=a=5,a=b=10,b=c=5,故代码执行后,a,b的值分别为:10和5,故本题选B选项。2B【详解】本题主要考查Python基本运算符。“*”是幂运算,x*y为返回x的y次幂,因此B选项正确。【点睛】解析:B【详解】本题主要考查Python基本运算符。“*”是幂运算,x*y为返回x的y次幂,因此B选项正确。【点睛】3D【详解】本题考查的是python语言的特点。Python语言的三个特点是语法简单(函数式语言与面向对象语言的结合)、使用直接(大量丰富的库)、开发周期短(代码量小)。故选项D正确。解析:D【详解】本题考查的是p
22、ython语言的特点。Python语言的三个特点是语法简单(函数式语言与面向对象语言的结合)、使用直接(大量丰富的库)、开发周期短(代码量小)。故选项D正确。4D【详解】本题考查的是Python表达式。*是幂次方优先级最高,%是求余。8+7%2*2=8+7%4=8+3=11,print是输出语句。故选项D正确。解析:D【详解】本题考查的是Python表达式。*是幂次方优先级最高,%是求余。8+7%2*2=8+7%4=8+3=11,print是输出语句。故选项D正确。5C【详解】本题主要考查Python相关知识点知识点。.doc是文字处理软件(word后缀名),.vbp是VisualBasic工
23、程文件后缀名,.exe是可执行文件后缀名,.py是Python文件解析:C【详解】本题主要考查Python相关知识点知识点。.doc是文字处理软件(word后缀名),.vbp是VisualBasic工程文件后缀名,.exe是可执行文件后缀名,.py是Python文件的后缀名,故本题选C选项。6B【详解】本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故合法的Python变量名是speed,故本题选B选项。解析:B【详解】本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故合
24、法的Python变量名是speed,故本题选B选项。7D【详解】本题考查Python文件扩展名相关知识点Python程序文件的扩展名是 .py。故本题选D选项解析:D【详解】本题考查Python文件扩展名相关知识点Python程序文件的扩展名是 .py。故本题选D选项8D【详解】本题考查Python程序的运算。a=5,b=7,b+=3=10,a=b*20=200,a+=2=202,a=a%b=2。最后a=2,b=10,故本题选D。解析:D【详解】本题考查Python程序的运算。a=5,b=7,b+=3=10,a=b*20=200,a+=2=202,a=a%b=2。最后a=2,b=10,故本题选
25、D。9C【详解】本题考查的是python基本函数相关知识。input函数接受一个标准输入数据,返回为 string 类型,故选项A错误;int可以将一个指定进制的数字型字符串或者十进制数字转化为整形,解析:C【详解】本题考查的是python基本函数相关知识。input函数接受一个标准输入数据,返回为 string 类型,故选项A错误;int可以将一个指定进制的数字型字符串或者十进制数字转化为整形,故选项B错误;print是输出函数,故选项C正确;float用于将整数和字符串转换成浮点数,故选项D错误。10B【详解】本题主要考查Python函数。accept()接受一个客户端的连接请求并返回一个
26、新的套接字,input函数用于数据的输入,readline() 函数用于读取文件中的一行,print()解析:B【详解】本题主要考查Python函数。accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline() 函数用于读取文件中的一行,print()函数用于打印输出数据,故本题选B选项。11A【详解】本题考查Python程序实现。变量i的范围是从1到4,当i=4时,跳出循环,此时s=0+1+2+3+4=10。故本题选A选项解析:A【详解】本题考查Python程序实现。变量i的范围是从1到4,当i=4时,跳出循环,此时s=0+1+2+3+4=10。故本题选A选项12C【详解】本题主要考查Python程序的执行。x= 123 + 678=801,st = 123 + 678= 123678 (字符串类型相加等于字符串的拼接),故本题选C选项。解析:C【详解】本题主要考查Python程序的执行。x= 123 + 678=801,st = 123 + 678= 123678 (字符串类型相加等于字符串的拼接),故本题选C选项。13C【详解】本题主要考查Python程序的执行。该程序实现求100以内所有能被3整除的正整数,故第3行的横线应该填i%3=0,故本题选C选