试题NCTPython编程三级模拟卷3含答案练习.docx
- 文档编号:9928114
- 上传时间:2023-05-22
- 格式:DOCX
- 页数:32
- 大小:178.29KB
试题NCTPython编程三级模拟卷3含答案练习.docx
《试题NCTPython编程三级模拟卷3含答案练习.docx》由会员分享,可在线阅读,更多相关《试题NCTPython编程三级模拟卷3含答案练习.docx(32页珍藏版)》请在冰点文库上搜索。
试题NCTPython编程三级模拟卷3含答案练习
试题NCT-Python编程三级-模拟卷3(含答案练习
一、选择题
1.在Python中,实现多分支选择结构的较好方法是()。
A.ifB.if-elseC.if-elif-elseD.if嵌套
2.在Python中,返回x的绝对值的函数是()。
A.abs(x)B.bin(x)C.all(x)D.input(x)
3.在教科书中利用Python探究电流和电压、电阻的关系实验里,除了可以通过书中的JupyterNotebook外,处理数据还可以通过下列()工具实现。
A.PythonIDLEB.XmindC.网络画板D.几何画板
4.以下()是python文件
A.*.mp3B.*.xlsC.*.pptD.*py
5.根据Python中变量命名遵循的规则,正确的是()
A.char21B.2020PyC.PythonD.name.ch
6.关于Python,以下几种说法不正确的是()。
A.Python是一种高级程序设计语言
B.Python属于汇编语言,或者说属于低级语言
C.Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点
D.Python是一种面向对象的、解释性计算机语言
7.下列选项中,不属于Python语言基本数据类型的是()
A.str
B.int
C.float
D.char
8.下列Python程序运行后的输出结果是()。
s=0
foriinrange(1,5):
s=s+i
print("s=",s)
A.s=5B.s=6C.s=10D.s=15
9.Python中,保留字写法正确的是()
A.PRINT()
B.Print()
C.print()
D.Int()
10.下列选项中,属于Python输入函数的是()。
A.random()B.print()C.Cout()D.input()
11.下列软件中,可作为服务器操作系统的是()
A.WindowsB.PythonC.excelD.access
12.在Python中运行后,b的值是()
a=6
Ifa>=0:
b=a+2
Else:
b=a-2
print(b)
A.6B.8C.10D.12
13.下列不可以用来搭建本地服务器的软件是()。
①Python②Excel③IIS④Apache
A.①②B.③④C.①②③④D.①②④
14.在Python中要交换变量a和b中的值,应使用的语句组是()。
A.a,b=b,aB.a=c;a=b;b=c
C.a=b;b=aD.c=a;b=a;b=c
15.已知字符串a="python",则print(a[1]+a[3])的值为()
A."yth"B."yt"C."py"D."yh"
16.在Python中,下面代码的运行结果是()
x=365
g=x%10#%为求余的意思
s=x//10%10#//为整除的意思
b=x//100
sum=g*100+s*10+b#sum英文是求和的意思
print(sum)
A.365B.14C.563D.41
17.在Python程序中,要求s=3+6+9+…+300的值,可以采用如下代码,下列选项中的说法不正确的是()。
A.for循环语句中步长为3B.语句s=0应改为s=1
C.语句s=s+i共循环执行了100次D.程序使用了循环结构
18.在Python中,用变量code存储学生的借书卡编码,例如:
code=“NO.2020100502”,则变量code的数据类型应定义为()
A.布尔型B.整型C.字符串型D.浮点型
19.在python中,Int()函数的功能是返回不大于x的最大整数,设a=3,b=4,c=5,则下列表达式的运算结果中值最大的是()
A.math.sqrt(b)B.abs(a-b)C.Int(2*a-c/b)D.a**2+b**2-c**2
20.关于Python的内存管理,下列说法错误的是()
A.变量不必事先声明B.变量无需先创建和赋值就可直接使用
C.变量无须制定类型D.可以使用del释放资源
21.要利用Python通过数组绘制拟合曲线图,必须要用到的外部库是()
A.time库
B.random库
C.turtle库
D.matplotlib库
22.利用Python程序绘制x-y的散点图,则下列程序第5行应该填写的代码是()。
A.plt.plot(X,Y)B.plt.scatter(X,Y)
C.plt.bar(X,Y)D.plt.boxplot(X,Y)
23.关于Python语句P=–P,以下选项中描述正确的是()
A.P和P的负数相等B.P和P的绝对值相等
C.将P赋值为它的相反数D.P的值为0
24.在Python中,表达式a**3+b**3+c**3==100*a+10*b+c属于()
A.算术表达式B.关系表达式C.逻辑表达式D.日期表达式
25.运行下列Python程序,输出结果为True,则空白处应为()
a=15
b=46
if__________:
print(‘True’)
else:
print(‘Flase’)
A.a=bB.a>bC.a 26.在Python中,下列循环结构用法错误的是()。 A.foriinrange(20): B.foriinrange(0,10): C.foriinrange(10,0,2): D.whiles<50: 27.在python计数循环中,列表正确的输写方式是()。 A.(1,2,3)B.(1,2.3)C.[1,2.3]D.[1,2,3] 28.在Python中,数据的输入是通过()来实现的。 A.input()函数B.print()函数C.bool()函数D.abs()函数 29.在Python中,通过()函数查看字符的编码。 A.int()B.ord()C.chr()D.yolk() 30.下面哪个不是Python合法的标识符() A.int_3B.print C.countD.__name__ 二、程序填空 31.一家商场在降价促销,如果购买金额不高于200元,会给10%的折扣,如果购买金额高于200元,会给20%的折扣。 编写一个Python程序,输入消费额(整数),显示折扣后的应付金额。 32.某仓库物品代码格式为“X-XXXXXXX-Y”,其中“X”和“Y”均为0到9之间的数字,“Y”为校验码。 校验码由前面9个X计算得到,计算方法为: 从左边开始,第1个数字乘以1加上第2个数字乘以2……依次类推,直到加上第9个数字乘以9,将该结果除以10,所得余数即为校验码。 用Python设计一个程序,输入物品代码,判断输入的代码中校验码是否正确,如果正确输出“正确”,否则输出“错误"。 运行样例如下所示: 样例1: 输入: 2-163-91475-4 输出: 正确 样例2: 输入: 2-163-91475-5 输出: 错误 (1)Python程序实现如下,请在划线处填入正确的代码: s=input("输入物品代码: ") a=[] foriinrange(0,13): if___ a.append(int(s[i]))#append()函数用于在列表末尾添加新的对象 sum=0 foriinrange(0,9): ____ sdm=sum%10 ___ ifsdm==ydm: print("正确") else: print("错误") 33.奇偶校验码是一种增加二进制传输系统可靠性的简单且广泛采用的方法,该方法通过增加一个校验位使得传输的二进制码中“1”的个数恒为奇数或偶数,因此该校验码也分为“奇校验”和“偶校验”。 “奇校验”的原理: 在发送端发送的每个字节二进制码后增加一个校验位(0或1),使得“1”的个数为奇数;接收端接收并统计每个字节及其校验位中“1”的个数,若为偶数,则意味着传输过程中存在差错。 例如: 接收到的每个字节及校验码 1的个数 传输正误 100101001 4 错误 011010101 5 正确 101011010 5 正确 根据以上原理,小强编写了一个Python程序,对接收到的9位二进制编码进行“奇校验”,判断其传输的正误,若判断正确则将前一个字节的编码转成十六进制并输出。 请回答下列问题: (1)若接收到的二进制码为“101011011”,传输过程__________(选填: 是/否)存在差错。 (2)实现上述功能的Python程序如下,请在划线处填入合适的代码。 s=input("请输入9位二进制编码: ") code={10: "A",11: "B",12: "C",13: "D",14: "E",15: "F"} k=0;p=0;ans=“” foriins: #统计9位二进制编码中“1”的个数 k=k+int(i) if____: print("传输错误! ") else: print("传输正确! ") forjinrange(0,8,4): p=int(s[j: j+4],2) #int(x,[base]): 将x(字符串或者数字)按照base进制转换成整数 if0<=p<=9: ans=ans+str(p) else: ans=___ print("字节编码用十六进制表示: ",___ 34.某字符转置算法描述如下: 将字符串(均为大写字符)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)请在划线处填入合适代码。 PrivateSubCommandl_Click() Dima(1To100)AsInteger´存储字符串,长度不超过100个字符 Dimb(1To100)AsInteger存储转置矩阵,长度不超过10*10 Dimc(1To100)AsLong DimsAsString,tmpAsString DimkAsInteger,tAsInteger,iAsInteger,jAsInteger DimnAsInteger,mAsInteger,lensAsInteger s=Textl.Text´在Textl中输入原始字符串 k=Val(Text2.Text)´在Text2中输入区块大小K Randomize Fori=1Tok^2 b(i)=Int(Rnd*9)+1 tmp=tmp十Str(b(i)) IfiModk=0Then List2.AddItemtmp tmp="". EndIf Nexti lens=Len(s): n=lens Fori=1Ton tmp=Mid(s,i,1) ①__________ Listl.AddItemStr(a(i)) Nexti DoWhilenModk<>0 n=n十1 a(n)=0 Listl.AddItemStr(a(n)) Loop Fori=1Ton m=(i―1)Modk+1 t=1 Forj=②__________ c(i)=a(j)*b((m-1)*k+t)+c(i) t=t+1 Nextj Nexti Fori=1Ton List3.AddItemStr(c(i)) Nexti s=″″ Fori=1Tolens ③__________ s=s+Chr(t+64)} Nexti Text3.Text=s´在Text3中输出转置后的字符串 EndSub 35.某种数据加密方法描述如下(加密前数据是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 36.某品牌手机第一年销量为20000台,假设平均每年的销量比上一年增加68%,请问几年后能使总销量达到60000台。 下面的程序能实现上述的功能,请将缺失的代码补充完整。 total=every_year=20000 year=1 while__________________: every_year+=____________ total+=every_year year+=1 print(year) 37.现在有一个程序用来解决以下问题: 如果有总量共1020个西瓜,第一天卖掉总数的一半后多卖出了两个,以后每天卖剩下的一半多两个,那么几天以后卖完呢? 请将下列程序补充完整。 tc=1020 c=0 while______________: tc=tc-(tc/2+2) _____________ print(c) 38.现有字典如下,根据题目要求,写出相关的表达式: xingzuo={‘小明’: ‘巨蟹座’,‘小红’: ‘处女座’,‘小兰’: ‘金牛座’} (1)现要取出小红所对应的星座,写出相关表达式: ___________________________________________________________ (2)现发现,“小兰”同学的星座应该是“水瓶座”,请帮忙修改。 __________________________________________________________ (3)现发现,在字典中漏写了关于“小贝”的信息,现已知“小贝”为“双子座”,请帮忙添加。 _________________________________________________________ (4)写出删除该字典的表达式: ___________________________________________________________ 39.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则: 能被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”为当年的第_____天。 40.调试程序。 请阅读以下程序并写出运行结果。 fruites=['banana','apple','mango'] forfruitinfruites: print(fruit) a=len(fruites) print('a=',a) _________________ 【参考答案】***试卷处理标记,请不要删除 一、选择题 1.C 【详解】 本题主要考查多分支选择结构。 多分支选择结构格式: if-elif-else,故本题选C选项。 解析: C 【详解】 本题主要考查多分支选择结构。 多分支选择结构格式: if-elif-else,故本题选C选项。 2.A 【详解】 本题主要考查Python标准函数。 在Python中,返回x的绝对值的函数是abs(x),bin()返回一个整数或者长整数的二进制表示,all()函数用于判断给定的可迭代参数中的所有 解析: A 【详解】 本题主要考查Python标准函数。 在Python中,返回x的绝对值的函数是abs(x),bin()返回一个整数或者长整数的二进制表示,all()函数用于判断给定的可迭代参数中的所有元素是否都为TRUE,input(x)是输入函数,故本题选A选项。 3.A 【详解】 本题Python相关知识点 IDLE是Python所内置的开发与学习环境,故除了可以通过书中的JupyterNotebook外,处理数据还可以通过PythonIDLE工具实现 解析: A 【详解】 本题Python相关知识点 IDLE是Python所内置的开发与学习环境,故除了可以通过书中的JupyterNotebook外,处理数据还可以通过PythonIDLE工具实现。 故本题选A选项 4.D 【详解】 本题考查的是文件类型相关知识。 Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。 解析: D 【详解】 本题考查的是文件类型相关知识。 Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。 5.A 【详解】 本题考查的是Python变量名的命名规则。 Python中变量命名规则: 由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。 故本题应选A。 解析: A 【详解】 本题考查的是Python变量名的命名规则。 Python中变量命名规则: 由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。 故本题应选A。 6.B 【详解】 本题主要考查Python程序设计语言。 Python是一种高级程序设计语言;Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点;Python是一种面向对象的、 解析: B 【详解】 本题主要考查Python程序设计语言。 Python是一种高级程序设计语言;Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点;Python是一种面向对象的、解释性计算机语言,故本题选B选项。 7.D 【详解】 本题主要考查Python数据类型。 python没有char类型,一个字符也是字符串,故本题选D选项。 解析: D 【详解】 本题主要考查Python数据类型。 python没有char类型,一个字符也是字符串,故本题选D选项。 8.C 【详解】 本题主要考查Python中循环结构。 range(1,5)函数生成1、2、3、4的整数序列,For循环中循环体计算序列累加求和,因此C选项正确。 【点睛】 解析: C 【详解】 本题主要考查Python中循环结构。 range(1,5)函数生成1、2、3、4的整数序列,For循环中循环体计算序列累加求和,因此C选项正确。 【点睛】 9.C 【详
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 试题 NCTPython 编程 三级 模拟 答案 练习