中国电子学会青少年软件编程等级考试标准python三级优质
一、选择题
1.已知a=-2,b=10/3,则python表达式round(b,1)+abs(a)的值为( )
A.1.3 B.5.33 C.5.4 D.5.3
2.关于下列Python程序段的说法正确的是( )
k=1
while 1:
k+=1
A.存在语法错误,不能执行 B.执行1次 C.执行无限次 D.执行k次
3.下列python表达式中, 值为字符串类型的是( )
①Abs(x) ②“abc”*3 ③“123+45” ④ 123+45 ⑤a=input(“请输入a的值:”)
A.①③⑤ B.②④⑤ C.①②③ D.②③⑤
4.在Python中,表达式a**3+b**3+c**3==100*a+10*b+c属于( )
A.算术表达式 B.关系表达式 C.逻辑表达式 D.日期表达式
5.下列选项中不能正确表达Python中的赋值语句的是( )
A.X,Y=5,8 B.X=Y=5 C.X =Y+X D.10=X+Y
6.以下属于计算机高级语言的是( )
A.Python B.自然语言 C.汇编语言 D.机器语言
7.下列选项中,属于Python输入函数的是( )。
A.random() B.linux认证等级print() C.Cout() D.input()
8.在Python中,显示出信息x,并要求输入数据的是( )。
A.abs(x) B.float(x) C.print(x) D.input(x)
9.关于python程序设计语言,下列说法错误的是( )
A.python是一种面向对象的编程语言 B.python代码只能在交互环境中运行
C.python具有丰富和强大的库 D.python是一种解释型的计算机程序设计高级语言
10.关于python程序设计语言,下列说法不正确的是( )
A.python是一种解释型、面向对象的计算机程序设计语言
B.python支持Windows操作系统,但不支持Linux系统
C.python源文件以***.py为扩展名
D.python文件不能直接在命令行中运行
11.下列选项中,合法的Python变量名是( )
A.print B.speed C.Python D.a#2
12.python文件的扩展名是( )
A.py B.pye C.vbp D.pyr
13.下列可以作为python变量名的是( )
A.5x B.x-1 C.if D.x_1
14.Python文件的后缀名是( )
A.pdf B.do C.pass D.py
15.在python 语言中,下列表达式中不是关系表达式( )
A.m==n B.m>=n C.m or n D.m!=n
二、程序填空
16.某字符转置算法描述如下:
将字符串(均为大写字符)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
tmp=tmp十Str(b(i))
If i Mod k=0 Then
List 2. AddItem tmp
tmp="" .
End If
Next i
lens=Len(s):n=lens
For i=1 To n
tmp=Mid(s,i,1)
①__________
Listl. AddItem Str(a(i))
Next i
Do While n Mod k<>0
n=n十1
a(n)=0
Listl. AddItem Str(a(n))
Loop
For i=1 To n
m=(i―1)Mod k+1
t=1
Forj= ②__________
c(i)=a(j) * b((m-1) * k+t)+c(i)
t=t+1
Next j
Next i
For i=1 To n
List 3. AddItem Str(c(i))
Next i
s=″″
For i=1 To lens
③__________
s=s+Chr(t+64)}
Next i
Text 3.Text=s ´在Text 3 中输出转置后的字符串
End Sub
17.现有字典如下,根据题目要求,写出相关的表达式:
xingzuo = { ‘小明’:‘巨蟹座’,‘小红’:‘处女座’,‘小兰’:‘金牛座’}
(1)现要取出小红所对应的星座,写出相关表达式:
___________________________________________________________
(2)现发现,“小兰”同学的星座应该是“水瓶座”,请帮忙修改。
__________________________________________________________
(3)现发现,在字典中漏写了关于“小贝”的信息,现已知“小贝”为“双子座”,请帮忙添加。
_________________________________________________________
(4)写出删除该字典的表达式:
___________________________________________________________
18.(最大公约数)用辗转相除法求两个正整数的最大公约数。
代码如下:
def gcd (m,n):
r=
while r!=0:
m=n
n=
return
a=int(input(‘请输入a的值:’))
b=int(input(‘请输入b的值:’))
print(‘最大公约数是:' )
填空:
________ ________ ________ ________ ________
19.操作说明:打开文件“Y:/1/1.py”,将程序补充完整,不得增加,删除语句、或改变程序原有结构,操作结束后保存。
以下程序段的功能是:根据从键盘上输入的表示星期几的数字,若输入的数字不是在范围(1至7)输出“输入错误!”,否则输出对应的英文星期的简称如“Mon、Tue、Wed、Thu、Fri、Sta、Sun”。
n=int(input(“请输入一个数:”))
list=[ “Mon”,”Tue”,”Wed”,”Thu”,”Fri”,”Sta”,”Sun”]
if ________:
print(“输入错误!”)
else:
print(________)
20.编写一个程序,判定用户输入的两个数 a和 b,如果用户输入的第一个数大,则两数互换,否则原样输出。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论