试题青少年编程等级考试∶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程序中,要求s369300的值,可以采用如下代码,下列选项中的说法不正确的是(    )。
A.for循环语句中步长为3    B.语句s0应改为s1
C.语句ssi共循环执行了100    D.程序使用了循环结构
6.两个阻值分别为R1R2的电阻并联后,电路阻值R可由公式求解,下面能正确求出RPython表达式是(  )
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依次转换为相对应的数值(字符AZ对应数值126);
·转换后的数值以K个数据为一段,将n个待处理的数据依次分割成若干段(最后一段不足部分用0来补充);
每一段中K个数据与K*K转置矩阵进行乘法运算;
将乘法运算得到的每一个结果值除以26求余数,依次转换成相应字符(数值126对应字符AZ),最后按原始字符串长度输出。
乘法运算规则如下:
i个元素c(i)=j个元素a(j)*转置矩阵第j行第i个元素b(t)的乘积之和(其中j=12…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小时内删除。