【编程】中国电子学会青少年软件编程等级考试标准python一级
一、选择题
1.下列哪条赋值语句在Python中是非法的:( )
A.X=Y=Z=1 B.X=(Y=Z+1) C.X,Y=Y,X D.X+=Y
2.在Python程序中,已知x=2,y=1,当执行语句y+=x*2,y的值是( )
A.3 B.4 C.5 D.6
3.在python中,下列哪个选项是正确的赋值语句( )
A.5s= 80 B.2018 =x C.a+b=c D.s=s+5
4.在Python中,input()函数的返回结果的数据类型为( )
A.Number型 B.String型 C.List型 D.Sets型
5.有如下 VB 程序段:
s1 = "python": s2 = "visual"
i = 1: j = 1: s = ""
Do While i <= Len(s1) And j <= Len(s2)
If Mid(s1, i, 1) >= Mid(s2, j, 1) Then
s = s + Mid(s1, i, 1)
Else
j = j + 1
End If
i = i + 1
Loop
执行该程序后,j的值是( )
A.2 B.3 C.5 D. 7
6.以下不属于高级程序设计语言的是( )。
A.C++ B.VB C.机器语言 D.Python
7.以下python程序段运行后,x和st的值分别是( )
x= 123 + 678
st = "123" + "678"
A.123678 "123678" B.123678 "801" C.801 "123678" D.801 "801"
8.以下选项中,不是Python中文件操作的相关函数是( )。
A.open () B.load ()
C.read () D.write ()
9.下列Python程序运行后的输出结果是( )。
步进电动机和异步电动机的区别s=0
for i in range(1,10):
s=s+i
print("s=",s)
A.s=35 B.s=45 C.s=55 D.s=65
10.关于python程序设计语言,下列说法错误的是( )
A.python是一种面向对象的编程语言 B.python代码只能在交互环境中运行
C.python具有丰富和强大的库 D.python是一种解释型的计算机程序设计高级语言
11.python文件的扩展名是( )
A.py B.pye C.vbp D.pyr
12.运行如下Python程序,结果为( )。
A.1 B.3 C.6 D.18
13.Python文件的后缀名是( )
A.pdf B.do C.pass D.py
14.下列python表达式结果为5的是( )
A.abs(int(-5.6)) B.len("3+5>=6") C.ord("5"envincible的意思) D.round(5.9)
15.下列属于正确的Python变量名的是( )
A.True
B.88abc
C.abc&88
D._abc88
二、程序填空
16.模拟一个简单计算器,实现如下功能:输入两个整数和一个运算符(加、减、乘、除),进行算术运算,并输出运算结果。程序运行时,依次输入第一个数、运算符和第二个数,输出运算结果。当输入的运算符是加减乘除(+-*/)四种以外的符号时,则输出“运算符不正确”。当进行除法运算时,如果除数为“0”,提示输出“除数不能为0!”。Python程序实现如下,在划线处填入合适的代码。
a=int(input("请输入第一个数: "))
fh=input ("请输入运算符: ")
b=int(input("请输入第二个数: "))
flag=True
s= ____
if fh in s:
if fh=="+":
c=a+b
elif fh=="-":
c=a-b
elif fh=="*":
c=a*b
else:
if ____
print("除数不能为0! ")
flag=False
else:
c=a/b
if flag==True:
print("运算的结果为schedule的英语: "+____)
else:
print ("运算符不正确")
17.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。为求解规模为N的问题,设法将它分解成规模较小的问题,从小问题的解容易构造出大问题的解,并且这些规模问题较小的问题也能采用同样的分解方法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。一般情况下,规模N=1数据库工程师含金量时,问题的解是已知的。已知:从1到n的连续自然数相乘的积、叫做阶乘
、用符号n!表示。如5!=1×2×3×4×5,规定0!=1。我们用递归算法可以较容易求n的阶乘。求n的阶乘算法可以描述如下:
n!=n*(n-1)! (n-1)!=(n-1)*(n-2)! (n-2)!=(n-2)*(n-3)!
2!=2*1! 1!=0! 0!=1
如果把n!写成函数形式,即f(n),f(n)=n*f(n-1)。如f(5)就是表示5!,求5!的过程可以写成如下形式:
f(5)=5*f(4) f(4)=4*f(3) f(3)=3*f(2) f(2)=2*f(1) f(1)=1
(问题求解)在python中用递归算法求1!+2!+……+n!(python解析json文件n的值为整数,从键盘输入)。请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。
def f(n):
if n==0:
return 1
else:
return _________
s=0
n=int(input("请输入n:"))
for i in_______:
s=________
print(s)
18.阅读程序。观察使用随机数求解百钱白鸡问题的代码并回答问题。
百千白鸡问题是经典的数学问题,原题为“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?”翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?
import random
while True:
x=random.randrange(0,20)
y=random.randrange(0,33)
z=random.randrange(0,100)
if 5*x+3*y+z/3==100 and x+y+z==100:
print('公鸡',x)
print('母鸡',y)
print('小鸡',z)
(1)Python中导入库文件的命令是________。
(2)random.randrange(0,20)生成的随机数的范围是_________ 。
(3)如果不想写类似random.randrange(0,20)这么长的句子,可以修改程序中的第一行为
________
(4)while True 的作用是______ 。
(5)如果while True造成程序无法停止,我们可以在程序中添加一行 _________。
19.哥德巴赫在1742年提出了以下猜想:任何一个大于2的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。
import math
def ss(n):
Flag=True
i=2
while i <= int(math.sqrt(n))and Flag:
if _____________
Flag = False
_____________
return Flag
n=int(input(“输入一个大于2的偶数”))
for i in rang(2,n//2+1):
if____________
print(str(n)+"="+str(i)+"+"+str(n-i))
如果输入“8”则结果显示_____
20.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
*
如何获取pycharm激活码* *
* * *
* * * *
21.冠军在A、B、C、D四位同学中。A说:“不是我”,B说:“是C”,C说:“是D”, D说:“C说的不对”,已知四人中有一人说了假话。判断出到底谁是冠军。
请在空格处填写正确的代码,使程序完善。
champion=['A','B','C','D'] #设置选手列表
for i in__________: #循环读取选手编号
cond=(i!='A') +(i=='C') + (i=='D')+(i!='D') #查符合条件的选手
if cond== _____: #说真话是否是3人
print("冠军是:",_________) #输出冠军
input("运行完毕,请按回车键退出...")
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.B
【详解】
本题考查Python语句。选项A,X=Y=Z=1是合法的赋值语句;选项B,X=(Y=Z+1),X被赋值“Y=Z+1”,但这个所谓的“Y=Z+1”并不返回任何值,所以这是一个错误的赋值语
解析:B
【详解】
本题考查Python语句。选项A,X=Y=Z=1是合法的赋值语句;选项B,X=(Y=Z+1),X被赋值“Y=Z+1”,但这个所谓的“Y=Z+1”并不返回任何值,所以这是一个错误的赋值语句,这是非法的;选项C,X,Y=Y,X这是交换语句,合法;选项D,X+=Y相当于X=X+Y,故本题选B。
2.C
【详解】
本题主要考查Python程序语句。x=2,y=1,语句y+=x*2等价于y=y+x*2=1+2*2=5,故y的值是5,故本题选C选项。
解析:C
【详解】
本题主要考查Python程序语句。x=2,y=1,语句y+=x*2等价于y=y+x*2=1+2*2=5,故y的
值是5,故本题选C选项。
3.D
【详解】
本题主要考查Python赋值语句。“5s”不是一个合法的变量名,不能将变量x赋给一个数值或表达式,可以将s+5赋给变量s,故本题选D选项。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论