资料NCTPython编程三级模拟卷3含答案练习.docx
- 文档编号:14119695
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:35
- 大小:1.10MB
资料NCTPython编程三级模拟卷3含答案练习.docx
《资料NCTPython编程三级模拟卷3含答案练习.docx》由会员分享,可在线阅读,更多相关《资料NCTPython编程三级模拟卷3含答案练习.docx(35页珍藏版)》请在冰点文库上搜索。
资料NCTPython编程三级模拟卷3含答案练习
资料NCT-Python编程三级-模拟卷3(含答案练习
一、选择题
1.下列选项中不能正确表达Python中的赋值语句的是()
A.X,Y=5,8B.X=Y=5C.X=Y+XD.10=X+Y
2.在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
3.以下是一段python程序:
它的可以用哪个流程图表达()。
A.
B.
C.
4.下列python表达式结果最小的是()
A.2**3//3+8%2*3B.5**2%3+7%2**2C.1314//100%10D.int("1"+"5")//3
5.下列python表达式结果为5的是()
A.abs(int(-5.6))B.len("3+5>=6")C.ord("5")D.round(5.9)
6.下列Python语句中,会导致程序运行出错的语句是()
A.x=(y=1)B.x,y=y,xC.x=1;y=1D.x=y=1
7.已知a=6,b=-4,则Python表达式a/2+b%2*3的值为()
A.3B.3.0C.5D.5.0
8.Python的序列类型不包括下列哪一种?
()
A.字符串B.列表C.元组D.字典
9.下列Python表达式中,能正确表示“变量x能够被4整除且不能被100整除”的是()
A.(x%4==0)or(x%100!
=0)
B.(x%4==0)and(x%100!
=0)
C.(x/4==0)or(x/100!
=0)
D.(x/4==0)and(x/100!
=0)
10.在Python中运行后,b的值是()
a=6
Ifa>=0:
b=a+2
Else:
b=a-2
print(b)
A.6B.8C.10D.12
11.Python不支持的数据类型有()。
A.charB.intC.floatD.list
12.运行下列Python程序,输出结果为0,则空白处应为()
a=14
b=7
c=_______
print(c)
A.a-bB.a+bC.a/bD.a%b
13.下列选项中,可作为Python变量名的是()
A.intB.AbcC.floatD.Complex
14.Python输入函数为()。
A.time()B.round()C.input()D.print()
15.下面哪个不是Python合法的标识符( )
A.int32B.40XLC.selfD.__name__
16.Python的设计具有很强的可读性,相比其他语言具有的特色语法有以下选项,正确的是()。
A.交互式B.解释型C.面向对象D.服务端语言
17.以下不属于高级程序设计语言的是()。
A.C++B.VBC.机器语言D.Python
18.Python中,可以输出helloworld的是()
A.printf(“helloworld”)
B.output(“helloworld”)
C.Print(“hello+world”)
D.print(“helloworld”)
19.以下文本框内是一段用Python程序设计语言编写的源代码,功能是输出200以内能被17整除的最大正整数。
这段源代码属于()。
A.软件B.程序C.指令D.高级语言
20.在Python语言中,以下简单数据类型选项中描述错误的是()
A.整数(int)、浮点数(float)B.字符串(str)
C.布尔(bool)D.2.5+2.5的值是整数(int)类型
21.解释性语言是指源代码不要求预先进行编译,在运行时才进行解释再运行,以下哪一种程序设计语言属于解释性语言(
)。
A.PythonB.C++C.VBD.C
22.在VB中,下列与表达式Len("python")+20的值相等的是()
A.Int(Rnd*26)+1B.Val("20")+16mod9
C.Mid("Hello2019",6,2)+"6"D.abs(Sqr(16)–30)
23.关于Python的内存管理,下列说法错误的是()
A.变量不必事先声明B.变量无需先创建和赋值就可直接使用
C.变量无须制定类型D.可以使用del释放资源
24.王明同学运用Python语言编写程序,根据输入的体重和身高计算BM值并验算其体重指数是否超标,属于()
A.数据B.信息C.知识D.智慧
25.Python程序中第一行:
a=int(input()),第二行:
print(a+5),运行程序后键盘输入3,输出结果是()。
A.5B.3C.8D.其他
26.下列Python程序段运行的结果是()。
i=0
sum=0
whilei<10:
ifi%3==0:
sum+=i
i+=1
print("sum=",sum)
A.sum=9B.sum=10C.sum=18D.sum=19
27.下列选项中,能作为python程序变量名的是()
A.ifB.2xC.a*bD.x2
28.python中表达式4**3=()。
A.12B.1C.64D.7
29.已知下列Python程序段,k取下列哪组值是x=4?
()
foriinrange(10):
k=int(input())
ifk<=20andk>0:
ifk>15:
ifk>18:
x=0
else:
x=1
else:
ifk>12:
x=4
else:
x=5
A.13,16B.13,14,15C.16,17,18D.18,19
30.下列不可以用来搭建本地服务器的软件是()。
①Python②Excel③IIS④Apache
A.①②B.③④C.①②③④D.①②④
二、程序填空
31.小强想要快速了解“十四五规划”内容的关键词,他先把“十四五规划”内容存储在ssw.txt文档中,如图a所示,统计文档中出现次数最多的前十个关键词,结果如图b所示。
文本数据处理的算法设计如图c所示,用Python语言编写的程序段如图d所示。
请根据流程图的每个步骤,填写程序段编号,如A:
⑦B:
①D:
③。
现填写C、E、F、G对应的程序段编号.C:
__________E:
__________F:
__________G:
__________
图a
图b
图c
图d
32.某市普通高中选课数据如图1所示,学生从地理、化学、生物等科目中选择三门作为高考选考科目,“1”表示已选择的选考科目。
使用Python编程分析每所学校各科目选考的总人数、全市各科选考总人数及其占比,经过程序处理后,保存结果如图2
图1
图2
实现上述功能的Python程序如下:
importpandasaspd
importitertools
#读数据到pandas的DataFrame结构中
df=________(”xk73.csv”,sep=‘.’,header=‘infer’,encoding=‘utf-8’)
km=[‘物理’,‘化学’,‘生物’,‘政治’,‘历史’,‘地理’,‘技术’]
#按学校分组计数
sc=df.groupby(‘___________’,as_index=False).count()
#对分组计数结果进行合计,合计结果转换为DF结构并转置为行
df_sum=pd.DataFrame(data=sc.sum()).T
df_sum[‘学校代码’]=‘合计’
#增加"合计"行
result=sc.append(df_sum)
#百分比计算
df_percent=df_sum
df_percent[‘学校代码’]=‘比例’
forkinkm:
per=df_percent.at[0,k]/zrs
df_percent[k]=per
#增加"百分比"行
result=result.append(df_percent)
#删除"姓名"列
result=______________
#修改"学生编号"为"总人数"
result=result.rename(columns={‘学生编号’:
‘总人数’})
#保存结果,创建Excel文件.生成的Excel文件
result.to_excel("学校人数统计.xlsx")
(1)请在划线处填入合适的代码:
(2)加框处语句的作用是__________________
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.现代生活半径的扩大和生活节奏加快使出行成本不断增长。
滴滴快车应运而生,其以灵活快速的响应和经济实惠的价格为大众提供更高效、更经济、更舒适的出行服务,给人们生活带来了美好的变化。
小C是滴滴快车忠实的粉丝,经常出行就提前预约,乘坐滴滴快车。
小C就在思考这个滴滴快车是怎么计费的?
可否用所学的Python语言也编写一个计费程序。
于是小C开展了有关这个项目活动的探究。
根据实际情况,回答问题。
(一)收集、分析数据,运用数理思维建模
登录滴滴出行官网,得到了如下信息,即“滴滴快车(普通型)计价规则”:
滴滴快车(普通型)计价规则
时段
起步价
里程费
时长费
普通时段
8.00元
1.35元/公里
0.20元/分钟
00:
00-06:
30
8.50元
2.40元/公里
0.50元/分钟
06:
30-09:
00
8.50元
1.50元/公里
0.45元/分钟
21:
00-23:
00
8.50元
1.50元/公里
0.40元/分钟
23:
00-00:
00
8.50元
2.40元/公里
0.50元/分钟
注意:
1.起步价包含里程3.3公里,包含时长9分钟,里程费、时长费合计不足基础费时,直接按照基础费计费。
2.实时计价是基于订单服务内容(里程、时长、时段),按各种费用项定价标准计算订单价格的计价方式,实际费用由两部分里程费与时长费累加而得。
小C同学19:
33从“南内环恒地大厦停车场-入口”到“坞城新纪元大酒店(长风店)”乘坐滴滴快车(普通车型),里程4.1公里,时长约21分钟,按照表中的计费规则,小C同学此次出行应该支付的车费是:
车费=8+(4.1-3.3)×1.35+(21-9)×0.2=9.68。
(1)小C登录滴滴出行官网搜索并下载“计价规则”,所采用的数字化工具:
_____________
A.数字化可视化表达工具B.信息加工工具
C.三维设计工具D.信息检索工具
(2)假设Tot1表示时长费,Tot2表示里程费,S表示实际里程,T表示实际时长,Cost表示应支付费用。
运用数学解析式归纳出计费公式为:
如果时长超过9分钟,则Tot1=_____________。
如果里程小于等于3.3公里则Tot2=_____________,否则Tot2=_____________。
应支付费用:
Cost=______________。
(二)运用算法描述方法将问题解决步骤化
小C明晰了滴滴快车车费的计算方法之后,设计求解滴滴快车普通时段车费的算法,并用自然语言和流程图的方式表述出来。
(3)自然语言描述:
第一步:
_________________________
第二步:
计算时长费Totl
第三步:
计算里程费Tot2
第四步:
_________________________
第五步:
_________________________
(4)流程图描述:
(如图)流程图中,表示计算与赋值的是_____________,表示算法流向的是______________。
A.
B.
C.
D.
E.
(5)算法描述中,用到了三种基本控制结构,分别是_______________、______________和______________。
如图示中的流程图使用的控制结构是_______________和______________。
(选填:
顺序结构、选择结构、循环结构、树型结构)
(6)一个算法必须有______________或多个数据输入。
有______________或多个数据输出。
(选填:
零个/一个)
(三)编写、调试、运行程序,验证算法并解决问题________
36.完善程序实现以下功能并保存。
输出数组的最大值。
arr1=[12,435,76,24,78,54,866,43]
________=-32768
foriinrange(0,7):
ifarr1[i]>max1:
max1=________
print("最大值是:
",________)
input("运行完毕,请按回车键退出...")
37.编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200年(包括在内)。
得到的数字应按逗号分隔的顺序打印在一行上。
提示:
考虑使用range(#begin,#end)
38.调试程序。
请阅读以下程序并写出运行结果。
#ex16.py
i=0
sum=0
whilei<10:
ifi%3==0:
sum+=i
print(i)
i=i+1
print('sum',sum)
_________
39.调试程序。
请阅读以下程序并写出运行结果。
fruites=['banana','apple','mango']
forfruitinfruites:
print(fruit)
a=len(fruites)
print('a=',a)
_________________
40.完善程序。
以下是猜数游戏的程序,请在画线出填写正确的内容。
importrandom
secret=random.randint(0,10)
print(“---猜数游戏-----”)
cs=int(input(“你猜的数字是”))
whilecs!
=secret:
_______cs>secret:
_________(“唉,猜大啦!
”)
__________:
print(“嘿嘿,猜小了!
”)
cs=int(input(“重新猜一个靠谱的数字是:
”))
print(“游戏结束,不玩了!
”)
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.D
【详解】
本题主要考查Python赋值语句。
赋值语句是将表达式赋给变量,不可以将X+Y赋给常量10,故本题选D选项。
解析:
D
【详解】
本题主要考查Python赋值语句。
赋值语句是将表达式赋给变量,不可以将X+Y赋给常量10,故本题选D选项。
2.A
【详解】
本题考查Python语句。
在Python中要交换变量a和b中的值,可以使用的语句组是t=a;a=b;b=t也可以是a,b=b,a,故本题选A。
解析:
A
【详解】
本题考查Python语句。
在Python中要交换变量a和b中的值,可以使用的语句组是t=a;a=b;b=t也可以是a,b=b,a,故本题选A。
3.B
【详解】
本题主要考查算法流程图知识点。
程序代码中有双分支语句if–else。
所以选B绘制有分支流程图,故本题选B选项。
解析:
B
【详解】
本题主要考查算法流程图知识点。
程序代码中有双分支语句if–else。
所以选B绘制有分支流程图,故本题选B选项。
4.A
【详解】
本题主要考查Python表达式的运算。
2**3//3+8%2*3=8//3+0*3=2,5**2%3+7%2**2=25%3+7%4=1+3=4,1314//100%10=13%10=
解析:
A
【详解】
本题主要考查Python表达式的运算。
2**3//3+8%2*3=8//3+0*3=2,5**2%3+7%2**2=25%3+7%4=1+3=4,1314//100%10=13%10=3,int("1"+"5")//3=5,故本题选A选项。
5.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选项。
6.A
【详解】
本题考查的是Python赋值语句。
赋值号“=”的左边是变量,右边是常量或表达式,选项A中y=1是赋值语句不是表示,故选项A会报错。
解析:
A
【详解】
本题考查的是Python赋值语句。
赋值号“=”的左边是变量,右边是常量或表达式,选项A中y=1是赋值语句不是表示,故选项A会报错。
7.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选项。
8.A
【详解】
本题主要考查Python序列类型。
Python的序列类型包括:
列表、元组和字典,故本题选A选项。
解析:
A
【详解】
本题主要考查Python序列类型。
Python的序列类型包括:
列表、元组和字典,故本题选A选项。
9.B
【详解】
本题主要考查Python表达式的运算。
逻辑运算符“且”用and表示,“或”用or表示,变量x能够被4整除用x%4==0表示,不能被100整除用x%100!
=0,故本题选B选项。
解析:
B
【详解】
本题主要考查Python表达式的运算。
逻辑运算符“且”用and表示,“或”用or表示,变量x能够被4整除用x%4==0表示,不能被100整除用x%100!
=0,故本题选B选项。
10.B
【详解】
本题主要考查Pytho
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 资料 NCTPython 编程 三级 模拟 答案 练习
![提示](https://static.bingdoc.com/images/bang_tan.gif)