NCTPython编程一级模拟卷3含答案程序填空阅读填空程序试题.docx
- 文档编号:29320127
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:38
- 大小:1.37MB
NCTPython编程一级模拟卷3含答案程序填空阅读填空程序试题.docx
《NCTPython编程一级模拟卷3含答案程序填空阅读填空程序试题.docx》由会员分享,可在线阅读,更多相关《NCTPython编程一级模拟卷3含答案程序填空阅读填空程序试题.docx(38页珍藏版)》请在冰豆网上搜索。
NCTPython编程一级模拟卷3含答案程序填空阅读填空程序试题
NCT-Python编程一级-模拟卷3(含答案程序填空阅读填空程序试题
一、程序填空
1.完善代码并保存。
实现功能:
从键盘输入10个学生的测试成绩,输出最高分和最低分。
cj=[]
foriinrange(0,________):
x=float(input("请输入一个数"))
cj.append(________)
print(max(cj),min(________))
input("运行完毕,请按回车键退出...")
2.程序补充:
(1)有5万元资金存入银行,选择“1年定期.自动转存”的存款方式,由于银行利率是不断变化的,这5年利率分别是3.25%.3%.3%.2%.1.75%,5年后会有多少收益呢?
调用round()函数,保留结果两位小数。
money=_______________________________
rate=_________________________________
for___________________________________
____________________________________
print(“5年以后存款总额:
”,money,“元”)
(2)某投资者购买了10万元一年期收益率3.7%的银行保证收益型理财产品。
每年理财赎回后,他会提取2万元用作生活所需,余下资金仍购买此种理财。
在收益率不变的情况下,多少年后本金被全部取出?
money=________________________________
year=__________________________________
while_________________________________
_________________________________
________________________________
print(year,“年后资金被全部取出”)
3.阅读程序。
分析有关多项式的代码并回答问题。
求1!
+2!
+3!
+……+20!
的和。
n=0
s=0
t=1
forninrange(1,21):
t*=n
s+=t
print(s)
(1)n的作用是________________。
(2)s的作用是______________。
(3)t的初值必须赋值为1,这是因为_________。
(4)t*=n的等价语句是__________
(5)s+=t的等价语句是______。
4.阅读程序。
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=””的功能是_______。
5.程序分析题
学校举行校园歌手大赛,评委由6人组成。
评分方法:
去掉一个最高分和一个最低分,计算其余4位评委的平均分,作为选手的最终得分。
max记录最高分;min记录最低分;s记录六位评委的总分;aver记录最终得分。
第1步:
从文本框中分别读入6位评委的打分并依次存入到a
(1)至a(6)中
第2步:
将第1位评委的打分a
(1)分别赋给最高分max,最低分min和总分S
第3步:
利用循环结构把另外5位评委的打分累加给s从而求出6位评委的总分s,同时把5位评委的打分与max和min进行比较,得出6位评委中的最高分max和最低分min。
第4步:
从总分中s中去掉最高分max和最低分min,求出其他4位评委的平均分aver作为选手的最终得分。
max=a[0]
min=a[0]
s=0
foriinrange(6):
s=s+a[i]
ifa[i]>max:
max=a[i]
ifa[i] min=a[i] aver=()/4 (1)在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由______控件生成的。 A.EntryB.LabelC.FrameD.Button (2)题目中算法描述采用的是__________A、自然语言B、伪代码C、流程图D、.N-S图 (3)下列程序代码片段对应于算法描述中的第2步至第4步。 请填写片段中空白处的表达式填写完整________ 6.分析完善程序 已知包含25项的数列: 1,2/3,3/5,....,24/47,25/49。 问题1: 写出该数列的通项公式f(n)=_① 问题2: 以下是计算S=1+2/3+3/5+...+24/47+25/49的程序,请补全代码: s=0 foriinrange(1,26): s=s+② print(“s=”,s) 补充完成上述通项公式和程序: ①f(n)=_________ ②___________ 7.分析完善程序 某市出租车收费标准如下: (1)3公里内(含3公里),收费8元 (2)超过3公里但未超过6公里部分,按1.5元/公里收费 (3)超过6公里部分,按2.25元/公里收费。 根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元? [算法分析] 假设总费用为p,则可以分段计算 p=8‘(s≤3) p=1.5*(s-3)+8‘(3 p=2.25*(s-6)+1.5*3+8‘(s>6) [参考代码] a=float(input(“s=”)) ifs<=3: p=8 if p=1.5*(s-3)+8 ifs>6: p=2.25*(s-6)+1.5*3+8 print(p) 根据上述回答如下问题: (1)本题采用的算法是________(填: 解析法/枚举法/排序法/递归法)。 (2)程序代码中空白处应填写的条件是_______(填: A/B/C/D)。 A.3 8.约瑟夫问题是个有名的问题: 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]) 9.计算机解决问题的过程为“分析问题——设计算法(流程图)——编写程序——调试程序”, 请输入以下代码,自己输入数据运行,结果截图提交 10.编写程序,实现从键盘输入数据,数据前三位的ASCII值加2,从第四位开始ASCII值加3。 11.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 12.编写一个程序,实现九九乘法口诀表。 13.程序设计: 键盘输入任意的正整数,程序输出与其相应的二进制数。 代码如下: 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)程序代码中②处可能的代码是(_______)。 A.n%2B.n/2C.n//2D.n*2 14.“百鸡百钱”问题是一个有名的数学问题,出自《张丘建算经》。 其内容是: 公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只? (1)请在空格处填写正确的代码,使程序完善实现以下功能。 money=100#一共100文钱 num=100#一共100只鸡 cock_price=5#公鸡价格5文 hen_price=3#母鸡价格3文 threechick_price=1#3只小鸡1文 forcock_numinrange(1,_______): #公鸡只数可能为1-20 forhen_numinrange(1,_________): #母鸡只数可能为1-33 forchick_numinrange(1,101): #(3小鸡)只数可能为1-100 money1=cock_num*cock_price+hen_num*hen_price+chick_num/threechick_price num1=cock_num+hen_num+chick_num ifmoney1==moneyandnum1==num: print(cock_num,hen_num,__________) input("运行完毕,请按回车键退出...") (2)运行程序,运行结果如图所示。 15.完善程序实现以下功能并保存。 输入一元二次方程的系数a,b,c的值,求解一元二次方程ax2+bx+c=0(a≠0) #请不要更改源程序的结构,删除原题里的①、②。 填写正确的代码,使程序完善 importmath a=float(input("请输入方程系数a(! =0): ")) b=float(input("请输入方程系数b: ")) c=float(input("请输入方程系数c: ")) delta=b*b-4*a*c ifdelta>________: x1=(-b+math.sqrt(delta))/(2*a) x2=(-b-math.sqrt(delta))/(2*a) print("方程有两个不同的解",x1,x2) elifdelta==0: x1=________ print("方程有两个相同的解",x1) else: print("方程无解") input("运行完毕,请按回车键退出...") 16.编写程序。 如图所示的算法,请用Python程序写出实现该算法相应的代码。 17.现有字典如下,根据题目要求,写出相关的表达式: xingzuo={‘小明’: ‘巨蟹座’,‘小红’: ‘处女座’,‘小兰’: ‘金牛座’} (1)现要取出小红所对应的星座,写出相关表达式: ___________________________________________________________ (2)现发现,“小兰”同学的星座应该是“水瓶座”,请帮忙修改。 __________________________________________________________ (3)现发现,在字典中漏写了关于“小贝”的信息,现已知“小贝”为“双子座”,请帮忙添加。 _________________________________________________________ (4)写出删除该字典的表达式: ___________________________________________________________ 18.有如下程序段: sum=0 foriinrange(1,20,3): sum+=i print(“sum=”,sum) (1)循环变量i的初值为: _________,终值为: _________,步长为: __________。 (2)该程序执行后,输出的结果为: ____________________。 19.辗转相除法,又称欧几里德算法,用于计算两个正整数m、n的最大公约数。 它是已知最古老的算法,其可追溯至公元前300年前。 辗转相除法的算法步骤是,对于给定的两个正整数m、n(m>n),用m除以n得到余数r,若余数r不为0,就将n和r构成新的一对数(m=n,n=r),继续上面的除法,直到余数为0,这时m就是原来两个数的最大公约数。 因为这个算法需要反复进行除法运算,故被形象地命名为“辗转相除法”。 小曲设计了辗转相除法的算法,请根据下面算法回答问题。 描述一 描述二 描述三 ①输入两个正整数m,n(m>n); ②计算m除以n所得的余数r; ③m=n,n=r; ④若r=0,则m,n的最大公约数等于m;否则转到步骤②; ⑤输出最大公约数m; ⑥结束。 (1)描述一是________描述法;描述二是流程图描述法;描述三是计算机程序语言描述法。 (2)在描述三中代码4到6行作用是__________。 (3)在描述三程序设计中,补充代码第8行划线处为__________。 20.现代生活半径的扩大和生活节奏加快使出行成本不断增长。 滴滴快车应运而生,其以灵活快速的响应和经济实惠的价格为大众提供更高效、更经济、更舒适的出行服务,给人们生活带来了美好的变化。 小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)一个算法必须有______________或多个数据输入。 有______________或多个数据输出。 (选填: 零个/一个) (三)编写、调试、运行程序,验证算法并解决问题________ 21.小强开展网上直播售货,为此购买了以下直播硬件设备: ①手机②耳机③自拍杆④数码照相机⑤背景画⑥无线路由器 请回答下列问题: (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()) ’数据可视化代码略 22.模拟一个简单计算器,实现如下功能: 输入两个整数和一个运算符(加、减、乘、除),进行算术运算,并输出运算结果。 程序运行时,依次输入第一个数、运算符和第二个数,输出运算结果。 当输入的运算符是加减乘除(+-*/)四种以外的符号时,则输出“运算符不正确”。 当进行除法运算时,如果除数为“0”,提示输出“除数不能为0! ”。 Python程序实现如下,在划线处填入合适的代码。 a=int(input("请输入第一个数: ")) fh=input("请输入运算符: ") b=int(input("请输入第二个数: ")) flag=True s=____ iffhins: iffh=="+": c=a+b eliffh=="-": c=a-b eliffh=="*": c=a*b else: if____ print("除数不能为0! ") flag=False else: c=a/b ifflag==True: print("运算的结果为: "+____) else: print("运算符不正确") 23.“枚举算法”又称为“穷举法”,其基本思想是: 一一列举出所有可能的解,并验证每个可能的解是否是真正的解,若是,就采纳,否则,就抛弃。 小明利用枚举算法解决“百元买百鸡”问题。 用100元钱买100只鸡,公鸡,母鸡,小鸡都要有。 公鸡5元1只,母鸡3元1只,小鸡1元3只。 请问公鸡,母鸡,小鸡各应该买多少只? 假设公鸡有X只,母鸡有Y只,小鸡有Z只。 以下Python程序段实现了“百元买百鸡”的功能,请补全①②③处代码。 c=0 forxin____①: foryinrange(1,33): z=100-x-y if______②: print("公鸡: ",x,"母鸡: ",y,"小鸡: ",z) _____③ print("共有买法",c,"种") 24.阅读程序。 分析以下关于字符拼接与转换的Python程序并回答问题。 students=['小明','小红','小刚'] scores={'小明': 95,'小红': 90,'小刚': 90} print(len(students)) print(len(scores)) (1)students的数据类型是______________。 (2)scores的数据类型是_____________。 (3)在scores中,每个字符与后面的数值共同构成了一个____________。 (4)len(students)的返回值是____________。 (5)print(len(scores))的输出结果是__________。 25.水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如: 1**3+5**3+3**3=153。 这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。 [问题求解]设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。 需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。 请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。 print("三位数之内的水仙花是: ") forxin___(100,1000): b=x//100 s=(x//10)___ g=___ Ifx=(b**3+s**3+g**3): print(___) 26.若两个素数之差为2,则该对素数称为双胞胎数,如3,5就是一对双胞胎数。 编写python程序,实现如下功能: 输入n的值,统计显示n以内的所有双胞胎数。 程序运行界面如图所示: 实现上述功能的程序如下,请在划线处填入合适的代码。 defisprime(x): foriinrange(2,x): if①__________: returnFalse return3ands<6D.s>3Ors<=6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- NCTPython 编程 一级 模拟 答案 程序 填空 阅读 试题