编程NCT全国青少年编程能力等级测试python一级word练习.docx
- 文档编号:5172096
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:23
- 大小:305.71KB
编程NCT全国青少年编程能力等级测试python一级word练习.docx
《编程NCT全国青少年编程能力等级测试python一级word练习.docx》由会员分享,可在线阅读,更多相关《编程NCT全国青少年编程能力等级测试python一级word练习.docx(23页珍藏版)》请在冰豆网上搜索。
编程NCT全国青少年编程能力等级测试python一级word练习
【编程】NCT全国青少年编程能力等级测试python一级word练习
一、选择题
1.以下Python中变量的命名正确的是()
A.1a=4
B.print=5
C._A=2
D.a+b=3
2.下列语言中()不属于高级语言
A.pythonB.VCC.JAVAD.汇编语言
3.下列变量名在Python中合法的是()
A.36BB.F55#C.forD._Good
4.以下Python程序运行后的输出结果为()
A.0B.45C.46D.362880
5.已知a=6,b=-4,则Python表达式a/2+b%2*3的值为()
A.3B.3.0C.5D.5.0
6.关于python程序设计语言,下列说法不正确的是()。
A.python源文件以***.py为扩展名
B.python的默认交互提示符是:
>>>
C.python只能在文件模式中编写代码
D.python具有丰富和强大的模块
7.已知列表list1=[88,22,34,89,67],则python表达式min(list1)的值为()
A.22B.88C.89D.67
8.下列选项中,不属于Python语言基本数据类型的是()
A.str
B.int
C.float
D.char
9.Python使用函数()接收用输入的数据
A.accept()B.input()C.readline()D.print()
10.有python程序如下:
S=input()
print(S*3)
运行后通过键盘输入6,则运算结果是()
A.666B.SSSC.18D.S*3
11.以下python程序段运行后,x和st的值分别是()
x= 123 + 678
st = "123" + "678"
A.123678"123678"B.123678"801"C.801"123678"D.801"801"
12.Python中的数据类型float表示()
A.布尔型B.整型C.字符串型D.浮点型
13.下列不是Python程序基本结构的是()。
A.顺序结构B.树形结构C.分支结构D.循环结构
14.下列python表达式结果为5的是()
A.abs(int(-5.6))B.len("3+5>=6")C.ord("5")D.round(5.9)
15.下列选项中,能作为python程序变量名的是()
A.s%1B.3stuC.whileD.dist
16.Python中幂运算(指数运算)的运算符为()。
A.*B.**C.%D.//
17.对于Python语言中的语句“x=(num//100)%10”,当num的值为45376时,x的值应为()
A.3B.4C.5D.6
18.运行下列Python程序,结果正确的是()
a=32
b=14
c=a%b
print(c)
A.2B.4C.32D.14
19.运行下列Python程序,结果正确的是( )
a=18
b=7
c=a%b
b=a%b
print(a,b)
A.185B.518C.184D.418
20.运行下列Python程序,结果正确是()
a=32
b=14
c=a//b
print(c)
A.2.2B.2C.“2”D.4
21.小明想要通过编程来解决由昆明到景东锦屏耗时最短行程问题时,最核心的工作是()
A.设计出解决问题的算法B.设计出解决问题的PPT
C.编写出Python代码D.选择一种编程软件
22.在python中能实现下面结果的代码是()。
请输入你的性别:
A.print(“请输入你的性别:
”)B.print(请输入你的性别:
)
C.input(“请输入你的性别:
”)D.input(请输入你的性别:
)
23.在Python语言中,以下简单数据类型选项中描述错误的是()
A.整数(int)、浮点数(float)B.字符串(str)
C.布尔(bool)D.2.5+2.5的值是整数(int)类型
24.在Python中运行下列程序,输出结果为()
foriinrange(1,5):
print(i)
A.1,2,3,4,5B.12345C.0,1,2,3,4D.1234
25.韦沐沐同学利用Python软件编制程序。
初始时,他使用流程图描述算法,在设计输入、输出数据时使用的图例是()
A.
B.
C.
D.
26.在python中,有程序如下
A=input()
print(A*5)
通过键盘输入5,则运算结果是()
A.55555B.25C.5*5D.55
27.在python计数循环中,列表正确的输写方式是()。
A.(1,2,3)B.(1,2.3)C.[1,2.3]D.[1,2,3]
28.下列Python程序段运行的结果是()
x=0
foriinrange(1,20,3):
x=x+i
print(x)
A.80B.190C.70D.210
29.设a=2,b=5,在python中,表达式a>bAndb>3的值是()
A.FalseB.TrueC.-1D.1
30.在python中运行print(“3+6”)的结果是()。
A.9B.“3+6”C.3+6D.“9”
二、程序填空
31.阅读程序。
分析以下Python程序并回答问题。
who='我的'
action='是'
destination='镜像世界'
number='153'
code='通行密码'
print(who+destination+code+action+str(number))
(1)变量who的数据类型_______________。
(2)类似number的数据类型______________。
(3)print语句输出的结果是______________。
(4)str(number)的作用是_________。
(5)“+”在程序中的作用是____________。
32.某企业开展“运动打卡动动有奖”活动:
若员工在本月累计运动时间30小时以下,奖励0元;达到30但不足45小时奖励300元;达到45但不足60小时奖励450元;60小时及以上奖励500元。
小强用python编写程序实现相关功能:
输入某员工本月累计运动时间(时),输出其能获得的奖励金额。
(1)实现上述功能的程序如下,请在划线处填入合适的代码。
t=int(input(“请输入您本月累计运动时间(时):
”))
ift<0:
print(“输入错误”)
else:
ift<30:
①_
elift<45:
m=300
②_____
m=450
else:
m=500
print(“您的奖励是:
”,m)
(2)当输入“-1”时,输出信息为_________(选填,填字母:
A.输入错误/B.您的奖励是:
0/C.您的奖励是:
500)
33.密码强度检测。
编写python程序,实现如下功能:
输入要检测的密码,输出密码强度结果。
密码字符分为数字字符、字母和其他符号三类。
密码强度的检测方法为:
若密码位数少于8位,则不进行强度检测,给出提示“密码位数不能少于8位,请重新输入!
”。
若密码位数在8位及以上,则进行强度检测:
若密码字符属于同一类字符,则密码强度为“弱”;若密码字符属于不同的二类字符,则密码强度为“中等”;若密码字符属于不同的三类字符,则密码强度为“强”。
(1)若输入“12abcd5!
”,则输出结果为_________(选填,选字母:
A.密码位数不能少于8位,请重新输入!
/B.弱/C.中等/D.强)
(2)实现上述功能的程序如下,请在划线处填入合适的代码。
password=input(“请输入要检测的密码:
”)
①_______________
ifn<8:
print(“密码位数不能少于8位,请重新输入!
”)
else:
n1=0
n2=0
n3=0
foriinrange(0,n,1):
②_______
if“0”<=ch<=“9”:
n1=1
elif“a”<=ch<=“z”or“A”<=ch<=“Z”:
n2=1
else:
n3=1
③_____
ifx==3:
print(“强”)
elifx==2:
print(“中等”)
else:
print(“弱”)
34.某种数据加密方法描述如下(加密前数据是ASCII字符):
●以8个数据为一段,将n个待加密数据依次分割成若干个数据段,剩余数据(个数小于8)为独立数据段。
●数据加密规则:
数据个数等于8的数据段,对各个字符进行位置变换;数据个数小于8的数据段,不进行位置变换。
位置变换:
用位置变换密钥数组c,将数据段每个字符进行位置变换,方法如下:
加密后某数据段的第i个元素=对应原数据段的第c(i)个元素,其中i=1,2,……,8。
数值变换:
位置变换后,依次取出各个字符进行数值变换:
把该字符的ASCII码转二进制,然后与密钥m对应的二进制数(m为1到255之间的整数)按位异或运算。
异或运算(⊕)规则:
如果a、b两个值不相同,则a⊕b结果为1;如果a、b两个值相同,则a⊕b结果为0,即:
0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0。
●把上述处理的得到二进制数依次拼接,即构成最后的加密数据例如,待加密数据为“python3.50”,数组c各元素的值依次是
数组c
3
6
1
5
2
8
4
7
则数据位置变换如下:
如值变换密钥m为35(二进制表示是00100011),则字符“t”(ASCII码值是116,二进制表示是010100)的数值变换过程如下:
变换前
0
1
1
1
0
1
0
0
密钥m
0
0
1
0
0
0
1
1
变换后
0
1
0
1
0
1
1
1
(1)已知“A”的ASCII码值是65,m=35,则“A”数值变换后的结果是_______(填二进制数据)。
(2)小李根据上述算法,设计了一个数据加密程序,其VB代码如下,请在划线处填入合适的代码。
Constn=1024
Dimc(1To8)AsInteger
PrivateSubForm_Load()
‘产生位置变换密钥数组c,代码略
EndSub
Functionconvert(cAsInteger)AsString
‘程序功能:
把整数c转成8位二进制数,代码略
EndFunction
PrivateSubCommand1_Click()
DimsAsString,stAsString,ssAsString,resAsString
DimiAsInteger,jAsIntegerstartAsInteger
Dima(1Ton)AsString,b(1Ton)AsString
s=Text1.Text
st=convert(Val(Text2.Text))
Fori=1ToLen(s)
a(i)=Mid(s,i,1)
Nexti
i=1:
start=-8
DoWhile①________
IfiMod8=1Thenstart=start+8
b(i)=②_______
i=i+1
Loop
Forj=iToLen(s)
b(j)=a(j)
Nextj
Fori=1ToLen(s)
③________
Forj=1To8
IfMid(ss,j,1)=Mid(st,j,1)Then
res=res+"0"Elseres=res+"1"
'按位异或
Nextj
Nexti
Text3.Text=res
EndSub
35.在一千多年前的《孙子算经》中,有这样一道算术题:
“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?
”。
即一个数除以3余2,除以5余3,除以7余2,求这个数。
i=①________
while(i%3!
=2②________i%5!
=3ori%7!
=2):
i=③________
print(i)
36.操作说明:
打开文件“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(________)
37.求水仙花数(一个三位数,其各位数字立方和等于该数字本身)
38.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:
能被4整除但不能被100整除或能被400整除,闰年的2月为29天)
day=input("请输入年月日(格式举例:
2000-01-05):
")
year=int(day[:
4])
month=_________
sun=int(day[8:
10])
print(year,month,sun)
f_run=[31,28,31,30,31,30,31,31,30,31,30,31]
tall_day=0
if______:
foriinrange(month-1):
tall_day+=f_run[i]
__________
else:
foriinrange(month-1):
tall_day+=f_run[i]
tall_day+=sun
print(day+"是当年的第"+str(tall_day)+"天")
(1)将程序横线处补充完整
(2)如输入“2020-4-19”为当年的第_____天。
39.阅读程序。
foriinrange(1,10):
forjinrange(1,i+1):
print("%dX%d=%2d"%(j,i,j*i),end="")
print()
(1)在第一行程序中,变量i的数据范围为_____到____。
(2)在第二行的程序中,变量j的数据范围为_____到____。
(3)如果“%d”表示十进制数,那么%2d则表示____位宽的十进制数。
(4)第三行程序改为print("%dX%d=%2d"%(i,j,i*j),end=""),则本题的输出应该是_____。
(5)如果最后一行的print()表示换行,那么end=””的功能是_______。
40.完善程序。
以下是猜数游戏的程序,请在画线出填写正确的内容。
importrandom
secret=random.randint(0,10)
print(“---猜数游戏-----”)
cs=int(input(“你猜的数字是”))
whilecs!
=secret:
_______cs>secret:
_________(“唉,猜大啦!
”)
__________:
print(“嘿嘿,猜小了!
”)
cs=int(input(“重新猜一个靠谱的数字是:
”))
print(“游戏结束,不玩了!
”)
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.C
【详解】
本题考查Python变量命名规则
变量命名不能以数字开头,不能使用关键字,不能使用特殊符号。
故本题选C选项
解析:
C
【详解】
本题考查Python变量命名规则
变量命名不能以数字开头,不能使用关键字,不能使用特殊符号。
故本题选C选项
2.D
【详解】
本题主要考查程序设计语言。
python、VC、JAVA均属于高级语言,汇编语言属于低级语言,故本题选D选项。
解析:
D
【详解】
本题主要考查程序设计语言。
python、VC、JAVA均属于高级语言,汇编语言属于低级语言,故本题选D选项。
3.D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故“_Good”在Python中是合法的变量名,故本题选D选项。
解析:
D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故“_Good”在Python中是合法的变量名,故本题选D选项。
4.A
【详解】
本题考查的是Python循环语句。
range(10)是[0,10)的整数。
故m=0*1*2*3*4*5*6*7*8*9=0,选项A正确。
解析:
A
【详解】
本题考查的是Python循环语句。
range(10)是[0,10)的整数。
故m=0*1*2*3*4*5*6*7*8*9=0,选项A正确。
5.B
【详解】
本题主要考查Python表达式的运算。
a=6,b=-4,a/2+b%2*3=6/2+(-4%2*3)=3.0+0=3.0,故本题选B选项。
解析:
B
【详解】
本题主要考查Python表达式的运算。
a=6,b=-4,a/2+b%2*3=6/2+(-4%2*3)=3.0+0=3.0,故本题选B选项。
6.C
【详解】
本题主要考查Python程序设计语言。
python源文件以***.py为扩展名,python的默认交互提示符是:
>>>,python能在文件模式中编写代码,也能在交互模式中编写代码,p
解析:
C
【详解】
本题主要考查Python程序设计语言。
python源文件以***.py为扩展名,python的默认交互提示符是:
>>>,python能在文件模式中编写代码,也能在交互模式中编写代码,python具有丰富和强大的模块,故本题选C选项。
7.A
【详解】
本题主要考查Python列表。
min是返回列表中的最小值,列表list1=[88,22,34,89,67],则python表达式min(list1)的值为22,故本题选A选项。
解析:
A
【详解】
本题主要考查Python列表。
min是返回列表中的最小值,列表list1=[88,22,34,89,67],则python表达式min(list1)的值为22,故本题选A选项。
8.D
【详解】
本题主要考查Python数据类型。
python没有char类型,一个字符也是字符串,故本题选D选项。
解析:
D
【详解】
本题主要考查Python数据类型。
python没有char类型,一个字符也是字符串,故本题选D选项。
9.B
【详解】
本题主要考查Python函数。
accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline()函数用于读取文件中的一行,print()
解析:
B
【详解】
本题主要考查Python函数。
accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline()函数用于读取文件中的一行,print()函数用于打印输出数据,故本题选B选项。
10.A
【详解】
本题主要考查Python程序的执行。
input()函数是通过键盘输入,将其以字符类型返回,故S=“6”,输出S*3=“666”,故运算结果是666,故本题选A选项。
解析:
A
【详解】
本题主要考查Python程序的执行。
input()函数是通过键盘输入,将其以字符类型返回,故S=“6”,输出S*3=“666”,故运算结果是666,故本题选A选项。
11.C
【详解】
本题主要考查Python程序的执行。
x=123+678=801,st="123"+"678"="123678"(字符串类型相加等于字符串的拼接),故本题选C选项。
解析:
C
【详解】
本题主要考查Python程序的执行。
x=123+678=801,st="123"+"678"="123678"(字符串类型相加等于字符串的拼接),故本题选C选项。
12.D
【详解】
本题主要考查Python数据类型。
布尔型bool,整型int,字符串型String,浮点型float,故本题选D选项。
解析:
D
【详解】
本题主要考查Python数据类型。
布尔型bool,整型int,字符串型String,浮点型float,故本题选D选项。
13.B
【详解】
本题考查Python相关知识。
程序基本结构的是顺序结构,分支结构和循环结构。
选项B不是程序基本结构,这是一种数据结构。
解析:
B
【详解】
本题考查Python相关知识。
程序基本结构的是顺序结构,分支结构和循环结构。
选项B不是程序基本结构,这是一种数据结构。
14.A
【详解】
本题主要考查Python表达式。
int是取整函数,abs求绝对值函数,len返回字符串的长度,ord()函数主要用来返回对应字符的ascii码,round是四舍五入函数,故abs(in
解析:
A
【详解】
本题主要考查Python表达式。
int是取整函数,abs求绝对值函数,len返回字符串的长度,ord()函数主要用来返回对应字符的ascii码,round是四舍五入函数,故abs(int(-5.6))=5,len("3+5>=6")=6,ord("5")=53,round(5.9)=6,故本题选A选项。
15.D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故dist能作为python程序变量名,故本题选D选项。
解析:
D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故dist能作为python程序变量名,故本题选D选项。
16.B
【详解】
本题主要考查Python的运算。
Python中幂运算(指数运算)的运算符为**,故本题选B选项。
解析:
B
【详解】
本题主要考查Python的运算。
Python中幂运算(指数运算)的运算符为**,故本题选B选项。
17.A
【详解】
本题主要考查Python语句。
num=45376,x=(45376//100)%10=453%10=3,故x的值应为3,故本题选A选项。
解析:
A
【详解】
本题主要考查Python语句。
num=45376,x=(45376//1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编程 NCT 全国青少年 能力 等级 测试 python 一级 word 练习