NCTPython编程二级模拟卷5含答案图文word程序填空阅读填空程序试题Word格式文档下载.docx
《NCTPython编程二级模拟卷5含答案图文word程序填空阅读填空程序试题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《NCTPython编程二级模拟卷5含答案图文word程序填空阅读填空程序试题Word格式文档下载.docx(30页珍藏版)》请在冰豆网上搜索。
(2)在第二行的程序中,变量j的数据范围为_____到____。
(3)如果“%d”表示十进制数,那么%2d则表示____位宽的十进制数。
(4)第三行程序改为print("
%(i,j,i*j),end="
),则本题的输出应该是_____。
(5)如果最后一行的print()表示换行,那么end=””的功能是_______。
6.约瑟夫问题是个有名的问题:
N个人围成一圈,顺序为0,1,2,3,4,5,从0号这个人开始报数,报到2的将被杀掉,接下去重新开始报数,报到3的将被杀掉...以此类推,最后剩下一个,其余人都将被杀掉。
例如N=6,被杀掉的顺序是:
1,4,3,0,5;
最后只剩下2这个人。
llist=
n=int(input(“请输入参与人数:
”))
foriinrange(0,n-1):
llist.append([i,i+1])
___________
long=n
k=head
i=1
p=2
while(____):
ifi==p-1:
t=llist[k][1]
print(llist[t][0])#索引为t的删除
__________________
ift==head:
___________________
i=1
p+=1
long=long-1
k=llist[k][1]
______________
i+=1
print(llist[head][0])
7.计算机解决问题的过程为“分析问题——设计算法(流程图)——编写程序——调试程序”,
请输入以下代码,自己输入数据运行,结果截图提交
8.请编写一个密码登陆系统,接收用户从键盘输入的密码和你自己的密码进行比对,如果正确就显示“恭喜你进入系统”如果不正确让用户重新输入,有三次机会。
9.求50以内所有5的倍数的和。
10.利用for循环,分别计算1--100中奇数的和、偶数的和。
11.编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200年(包括在内)。
得到的数字应按逗号分隔的顺序打印在一行上。
提示:
考虑使用range(#begin,#end)
12.哥德巴赫在1742年提出了以下猜想:
任何一个大于2的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。
importmath
defss(n):
Flag=True
i=2
whilei<
=int(math.sqrt(n))andFlag:
if_____________
Flag=False
_____________
returnFlag
n=int(input(“输入一个大于2的偶数”))
foriinrang(2,n//2+1):
if____________
print(str(n)+"
="
+str(i)+"
+"
+str(n-i))
如果输入“8”则结果显示_____
13.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
14.冠军在A、B、C、D四位同学中。
A说:
“不是我”,B说:
“是C”,C说:
“是D”,D说:
“C说的不对”,已知四人中有一人说了假话。
判断出到底谁是冠军。
请在空格处填写正确的代码,使程序完善。
champion=['
A'
B'
C'
D'
]#设置选手列表
foriin__________:
#循环读取选手编号
cond=(i!
='
)+(i=='
)+(i=='
)+(i!
)#查找符合条件的选手
ifcond==_____:
#说真话是否是3人
冠军是:
"
_________)#输出冠军
input("
运行完毕,请按回车键退出..."
15.编写一个程序,判定用户输入的两个数a和b,如果用户输入的第一个数大,则两数互换,否则原样输出。
16.(项目情境)一元二次方程ax2+bx+c=0(a≠0),当b2-4ac≥0,方程有两个不同的实数根,当b2-4ac<0时,方程无实数根。
(问题求解)下面的python程序实现的功能是判断方程是否有实数根。
请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。
a=int(input("
请输入a的值:
))
b=int(input("
请输入b的值:
c=int(input("
请输入c的值:
d=_____#将表达式b2-4ac的值赋给变量d
if____
x1="
(-b+math.sqrt(d))/(2*a))#输出方程的其中一个实数根
x2="
(_________)#输出方程的另一个实数根
else:
_________#输出“方程无实数根”
17.求100以内素数。
18.程序设计:
键盘输入任意的正整数,程序输出与其相应的二进制数。
代码如下:
n=int(input("
请输入一个十进制数:
result=[]
whilen>
0:
result.append(①)
n=②
result.reverse()
foriinresult:
print(i,end=”)
(1)程序代码中①处正确的代码是(_______)。
A.n%2B.n/2C.n//2D.n*2
(2)程序代码中②处可能的代码是(_______)。
19.程序设计:
在舞会上,男生、女生各自排成一队。
舞会开始时,依次从男队和女队的队头各出一人配成舞伴。
跳完后的两人重新回到队尾。
例如:
boy=['
Alex'
Steven'
Jack'
],girl=['
Ada*,'
Babs'
.,'
Danla'
Jane'
输出:
Turn1:
(Alex,Ada)
Turn2:
(Steven,Babs)
Turn3:
(Jack,Danla)
Turn4:
(Alex,jane)
……
Turn12:
(Jack,jane)
‘Jack'
girl=['
Ada'
foriinrange(12):
x,y=①#出队
print(“Turn{:
2}):
({},{})"
.format(i+1,x,y))
boy.append(②)#再进队
girl.append(③)#再进队
A.boy.pop(l).girl.pop(l)B.girl.pop(l),boy.pop(l)
C.boy.pop(0),girl.pop(0)D.girl.pop(0),boy.pop(0)
(2)程序代码中②处正确的代码是(_______)。
A.xB.yC.iD.i+1
(3)程序代码中③处正确的代码是(_______)。
20.某品牌手机第一年销量为20000台,假设平均每年的销量比上一年增加68%,请问几年后能使总销量达到60000台。
下面的程序能实现上述的功能,请将缺失的代码补充完整。
total=every_year=20000
year=1
while__________________:
every_year+=____________
total+=every_year
year+=1
print(year)
21.小敏有10万元本金,想要购买银行保证收益型理财产品。
每年到期后连本带利仍购买此种理财。
请你帮助小敏分析,在年收益率不变的情况下,多少年后小敏的累计收益能超过本金,请完成程序填空。
(例如输人:
5.15%,输出:
14年后收益超过本金。
1s=input("
请输入年利率:
")
2rate=float(s[:
-1])*0.01
3money=100000
4year=0
5whilemoney<
=200000:
6money=round(),2)
7year=year+1
8print(year,"
年后收益超过本金。
”)
(1)程序第6行下划线处应填入___________。
(2)程序第2行的作用是____________,并赋值给变量rate。
(3)该程序主要是通过while实现____________结构。
22.已知6月份10位技术考试成绩:
1
2
3
4
5
6
7
8
9
10
78
88
89
90
83
76
75
98
100
65
技术老师想统计出80分(含80)以上的人数,请完善程序,代码如下:
a=[78,88,89,90,83,76,75,98,100,65]
______
sum=0
foriinrange(n):
ifa[i]>
=80:
________
print(sum)
执行上述程序段后,输出的内容是______
23.现代生活半径的扩大和生活节奏加快使出行成本不断增长。
滴滴快车应运而生,其以灵活快速的响应和经济实惠的价格为大众提供更高效、更经济、更舒适的出行服务,给人们生活带来了美好的变化。
小C是滴滴快车忠实的粉丝,经常出行就提前预约,乘坐滴滴快车。
小C就在思考这个滴滴快车是怎么计费的?
可否用所学的Python语言也编写一个计费程序。
于是小C开展了有关这个项目活动的探究。
根据实际情况,回答问题。
(一)收集、分析数据,运用数理思维建模
登录滴滴出行官网,得到了如下信息,即“滴滴快车(普通型)计价规则”:
滴滴快车(普通型)计价规则
时段
起步价
里程费
时长费
普通时段
8.00元
1.35元/公里
0.20元/分钟
00:
00-06:
30
8.50元
2.40元/公里
0.50元/分钟
06:
30-09:
00
1.50元/公里
0.45元/分钟
21:
00-23:
0.40元/分钟
23:
00-00:
注意:
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)一个算法必须有______________或多个数据输入。
有______________或多个数据输出。
零个/一个)
(三)编写、调试、运行程序,验证算法并解决问题________
24.小强开展网上直播售货,为此购买了以下直播硬件设备:
①手机②耳机③自拍杆④数码照相机⑤背景画⑥无线路由器
请回答下列问题:
(1)在购买的直播硬件设备中,属于模数转换的设备是__________(多选,填序号)
(2)小强选择借助某著名直播平台售货,根据直播平台要求,直播画面是1080*1920像素、24位真彩色、帧频为25fps,视频压缩比为100:
1,在不考虑视频传输优化的情况下,问小强家目前10Mbps的宽带__________(选填:
能/不能)满足直播要求。
请列式证明__________。
(3)小强将某一天的售货情况从平台导出,保存为文件shqk.xlsx.数据已按“流水号”升序排序,如图a所示。
流水号为2019030602的售货记录中,已成交的商品类别数是__________(填写数字),该流水号的总利润是__________元(填写数字,保留1位小数)
图a
(4)为了快速了解各类别商品的利润,小强用python编程处理。
处理的结果界面如图b所示。
部分代码如下,请在①②划线处填写合适的代码。
图b
importpandasaspd
importnumpyasnp
importmatplotlib.pyplotasplt
detail=pD.read_excel(___)
print(detail)
foriinrange(len(detail[:
])):
ifdetail[‘成交与否’][i]==1:
detail[‘lirun’]=___
dg=detai1[[‘类别’,‘lirun’]].groupby(by=‘类别’)
print(“总利润”,detail[‘lirun’].sum())
’数据可视化代码略
25.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。
为求解规模为N的问题,设法将它分解成规模较小的问题,从小问题的解容易构造出大问题的解,并且这些规模问题较小的问题也能采用同样的分解方法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。
一般情况下,规模N=1时,问题的解是已知的。
已知:
从1到n的连续自然数相乘的积、叫做阶乘、用符号n!
表示。
如5!
=1×
2×
3×
4×
5,规定0!
=1。
我们用递归算法可以较容易求n的阶乘。
求n的阶乘算法可以描述如下:
n!
=n*(n-1)!
(n-1)!
=(n-1)*(n-2)!
(n-2)!
=(n-2)*(n-3)!
2!
=2*1!
1!
=0!
0!
=1
如果把n!
写成函数形式,即f(n),f(n)=n*f(n-1)。
如f(5)就是表示5!
,求5!
的过程可以写成如下形式:
f(5)=5*f(4)f(4)=4*f(3)f(3)=3*f
(2)f
(2)=2*f
(1)f
(1)=1
(问题求解)在python中用递归算法求1!
+……+n!
(n的值为整数,从键盘输入)。
请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。
deff(n):
ifn==0:
return1
else:
return_________
n=int(input("
请输入n:
foriin_______:
s=________
26.现今信息化时代,信息的传输十分迅速,足不出户便知天下事。
许多社交平台都有设置本平台的热点排行榜,方便用户了解正在发生的热门事件。
但社交平台数量众多,平台用户种类和数量也大不相同,导致不同平台热点的实际热度大小也不同。
小钟为了确保自己知道的热点是真正的热点,于是打算用功能强大的python把各个平台的热点排行榜进行合并,形成自己的热点排行榜。
为了热点之间比较方便,小钟设置了一个热度值来衡量一个热点的热度大小,热度值越大说明这个热点的热度越高。
现在小钟已经获得了如下两个平台的热度值从小到大的排行榜,正当他打算将之合并为一个从小到大的排行榜时,却被老师叫走了。
于是他决定把这个小功能交给他的好朋友——你来实现,你想到2种算法,请把下列程序填写完整。
A
P10
P9
P8
P7
P6
P5
P4
P3
P2
P1
11
66
116
329
438
582
652
714
756
925
B
E10
E9
E8
E7
E6
E5
E4
E3
E2
E1
35
215
271
309
428
576
772
806
950
Python程序如下:
A=[11,66,116,329,438,582,652,714,756,925]
B=[35,116,215,271,(5)__,428,576,772,806,950]
算法一:
myRank=
i=0
j=0
while(i<
len(A)andj<
len(B)):
if(A[i]<
B[j]):
(6)______
i+=1
myRank.append(B[j])
j+=1
len(A)):
myRank.append(A[i])
while((7)______):
print(myRank)
算法二:
myRank=[0]*(len(A)+len(B))
k=0
while((8)_____):
k=i+j
if(i>
=len(A)):
myRank[k]=B[j]
elif(j>
=len(B)):
myRank[k]=A[i]
elif((9)_____):
27.若两个素数之差为2,则该对素数称为双胞胎数,如3,5就是一对双胞胎数。
编写python程序,实现如下功能:
输入n的值,统计显示n以内的所有双胞胎数。
程序运行界面如图所示:
实现上述功能的程序如下,请在划线处填入合适的代码。
defisprime(x):
______
foriinrange(2,int(math.sqrt(x))+1):
ifx%i==0:
f=False
returnf
请输入一个正整数n:
c=0
k=3
whilek<
=n-2:
ifisprime(k)and______________:
c+=1
第"
+str(c)+"
对双胞胎数:
k,'
和'
k+2)
_______
print("
共有"
+str(c)+"
对双胞胎数"
划线处①处应该填入的语句为:
;
划线处②处应该填入的语句为:
划线处③处应该填入的语句为:
。
28.水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:
1**3+5**3+3**3=153。
这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。
[问题求解]设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。
需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。
print("
三位数之内的水仙花是:
forxin___(100,1000):
b=x//100
s=(x//10)___
g=___
Ifx=(b**3+s**3+g**3):
print(___)
29.阅读程序。
分析以下Python程序并回答问题。
who='
我的'
action='
是'
destination='
镜像世界'
number='
153'
code='
通行密码'
print(who+destination+code+action+str(number))