试题青少年编程等级考试∶Python编程二级试卷6
一、选择题
1.以下哪个不是python关键字( )
A.cout B.from C.not D.or
2.在python计数循环中,列表正确的输写方式是( )。
A.(1,2,3) B.(1,2.3) C.[1,2.3 ] D.[1,2,3]
3.有如下 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
4.在 Python中常用的输入输出语句分别是( )
A.input() output() B.input() print()
C.input() printf() D.scandf() printf()
5.在Python程序中,要求s=3+6+9+…+300的值,可以采用如下代码,下列选项中的说法不正确的是( )。
A.for循环语句中步长为3 B.语句s=0应改为s=1
C.语句s=s+i共循环执行了100次 D.程序使用了循环结构
6.两个阻值分别为R1、R2的电阻并联后,电路阻值R可由公式求解,下面能正确求出R的Python表达式是( )
A.(R1+ R2)/(R1*R2) B.R1+R2/(R1*R2)
C.R1*R2/R1+R2 D.R1*R2/(R1+R2)
7.小王编写了出租车收费的python程序,代码如下:
s1=float(input('请输入行驶路程(公里):'))
if s1<=3:
f=10
elif s1<=10:
f=10+2.5*(s1-3)
else:
f=27.5+3.5*(s1-10)
print(f)
要测试所有分支程序代码是否正确,以下测试数据中,最恰当的一组是( )
A.3,8 B.-1,5,12
C.1,6,20 D.3,12,20
8.下列Python程序段
a = 0
b = 4
if b > a :
a = 3 * b
else:
a = 10
程序运行后,a的值是( )
A.10 B.0 C.12 D.4
9.下列定义变量的python程序语句变量赋值错误的是( )
A.x=y=1 B.x,y=1,2 C.x==1 D.x=1,2
10.运行下列Python程序,输出结果为0,则空白处应为( )
a=14
b=7
c=_______
print(c)
A.a-b B.a+b C.a/b D.a%b
11.在python中,运行下列程序,正确的结果是( )
x=1
while x>0:
x=x+1
print( x)
A.1 B.1 2 3 4 5 6 7 8 9…………………
C.无输出 D.100
12.下列可以被计算机直接执行的程序是( )
A.机器语言程序 B.高级语言程序 C.汇编语言程序 D.Python源程序
13.下列选项中,不属于Python特点的是( )。
A.面向对象 B.运行效率高 C.可读性好 D.开源
14.下列选项中,合法的Python变量名是( )
A.print B.speed C.Python D.a#2
15.在Python中,判断n是否为偶数的表达式是( )
A.n/2=0
B.n%2==0
C.n%2=0
D.n/2==0
二、程序填空
16.小明用Python语言写了一个货币兑换程序如下:
(1)参数currency指:____________。
(2)该程序用了哪一种算法结构:_____________。
(3)输出结果为“50$= 325.25人民币”。则代码应该如何编写:____________。
17.编写Python程序实现如下功能:输入年月日,输入格式如“2021-06-21”,年月日之间用“-”分隔。判断这一天是这一年的第几天。以2021-06-21为例,前面5个月总天数,加上21天即这一天是本年的第几天。特殊情况,当输入的年份是闰年时,2月份有29天。闰年的判断方式如下:
I、能被4整除,但不能被100整除;python货币转换
II、能被400整除;
(1)“2020-05-20”这一天是这一年的第_________天。
(2)编写Python代码如下,在划线处填入正确的代码
_________________
_________________
_________________
(3)加框处的代码有误,请改正。
改正:_________________
mon=[31, 28, 31, 30, 31, 30,31, 31, 30, 31, 30,31] #mon 中存储1-12每个月的天数
s=input("请输入年月日: ")
'month=int(s[5:7])
①
sum=0
for i in range( ② ):
sum+=mon[i]
sum+=day
if :
isleap=True
else:
isleap=False
if ③
sum+=1
print("这一天是当年的第" +str (sum)+''天'')
18.模拟一个简单计算器,实现如下功能:输入两个整数和一个运算符(加、减、乘、除),进行算术运算,并输出运算结果。程序运行时,依次输入第一个数、运算符和第二个数,输出运算结果。当输入的运算符是加减乘除(+-*/)四种以外的符号时,则输出“运
算符不正确”。当进行除法运算时,如果除数为“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("运算的结果为: "+____)
else:
print ("运算符不正确")
19.某字符转置算法描述如下:
将字符串(均为大写字符)s依次转换为相对应的数值(字符A~Z对应数值1~26);
·转换后的数值以K个数据为一段,将n个待处理的数据依次分割成若干段(最后一段不足部分用0来补充);
每一段中K个数据与K*K转置矩阵进行乘法运算;
将乘法运算得到的每一个结果值除以26求余数,依次转换成相应字符(数值1~26对应字符A~Z),最后按原始字符串长度输出。
乘法运算规则如下:
第i个元素c(i)=第j个元素a(j)*转置矩阵第j行第i个元素b(t)的乘积之和(其中j=1,2…K)
例如:字符串s=PYTHON,区块大小K=4,的转置过程如下:
(1)根据算法描述,上述示例中,字符“N”的相乘结果(即图中(★)处)为________。
(2)请在划线处填入合适代码。
Private Sub Commandl_Click()
Dim a(1 To 100)As Integer ´存储字符串,长度不超过100个字符
Dim b(1 To 100)As Integer 存储转置矩阵,长度不超过 10*10
Dim c(1 To 100)As Long
Dim s As String, tmp As String
Dim k As Integer, t As Integer, i As Integer, j As Integer
Dim n As Integer, m As Integer, lens As Integer
s=Textl. Text ´在 Textl 中输入原始字符串
k=Val(Text 2.Text) ´在 Text 2 中输入区块大小K
Randomize
For i=1 To k^2
b(i)=Int(Rnd*9)+1
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论