试题CPA-Python编程(一级)错题集程序填空阅读填空程序试题_第1页
试题CPA-Python编程(一级)错题集程序填空阅读填空程序试题_第2页
试题CPA-Python编程(一级)错题集程序填空阅读填空程序试题_第3页
试题CPA-Python编程(一级)错题集程序填空阅读填空程序试题_第4页
试题CPA-Python编程(一级)错题集程序填空阅读填空程序试题_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、试题CPA-Python编程(一级)错题集程序填空阅读填空程序试题一、程序填空1 .求1100内奇数之和(使用 range函数)2 .阅读程序。分析有关多项式的代码并回答问题。求1! +2! +3! +20!的和。n=0 s=0 t=1for n in range (1,21)t*=ns+=tprint(s)nO3=0七=1for n in (U l*=n s+=tprinl g end-'")(1)n的作用是(2) s的作用是。(3) t的初值必须赋值为1,这是因为 (4) t*=n的等价语句是 (5) s+=t的等价语句是。3.调试程序。请阅读以下程序并写出运行结果。fr

2、uit e5= r banatia", R appleIjl fruit fruites:print (fruit) a=lerL (f ruit es) print C a=', a)banana apple mango 3F 3 »yfruites='banana','apple','mango'for fruit in fruites:print(fruit)a=len(fruites)print('a=',a)4 .编写程序,找到并输出 100以内的素数。5 .分析完善程序某市出租车收费标准如下

3、:(1) 3公里内(含3公里),收费8元(2)超过3公里但未超过6公里部分,按1.5元/公里收费(3)超过 6 公里部分,按2.25 元/公里收费。根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?算法分析 假设总费用为 p ,则可以分段计算p=8(sW 3)p=1.5* (s-3) +8(3<sw 6)p=2.25* (s-6) +1.5*3+8(s>6)参考代码 a=float(input( “ s= ” )if s <= 3 :p= 8ifp=1.5* ( s-3) +8if s > 6 :p=2.25* (s-6) +1.5*3+8print( p)

4、根据上述回答如下问题:( 1 )本题采用的算法是 (填 : 解析法 / 枚举法/ 排序法/ 递归法)。( 2 )程序代码中空白处应填写的条件是(填 : A/B/C/D )。A 3<s<=6B 3<=s<=6C s>3 and s<6 D s>3 Or s<=66 (项目情境)在中国古代,出自数学家张丘建的算经中这样一个值得研究的问题:今有鸡翁一,直钱五;鸡母一,直钱三;鸡雏三,直钱一。凡百钱,买鸡百只。问鸡翁、母、雏各几何?这个问题就是著名的“百钱买百鸡问题”。即:现有100 文钱,公鸡5 文钱一只,母鸡 3 文钱一只,小鸡一文钱3 只,要求:公

5、鸡,母鸡,小鸡都要有,把100 文钱买100 只鸡,买的鸡是整数。问公鸡、母鸡和小鸡各几何?(问题求解)设用变量g、 m 、 x 三个变量分别存放公鸡、母鸡和小鸡的数量,请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。for g in range(1,20):for m in :for x in range(3,98,3):if and =100:print("公鸡:",g,"母鸡:",m,"小鸡:”,x)7 约瑟夫问题是个有名的问题: N 个人围成一圈,顺序为 0, 1 , 2 , 3, 4, 5 ,从0 号这个人开始报数,报到

6、2 的将被杀掉,接下去重新开始报数,报到 3 的将被杀掉. 以此类推,最后剩下一个,其余人都将被杀掉。例如 N=6,被杀掉的顺序是:1, 4, 3, 0, 5;最后只剩下 2 这个人。llist=n=int (input (“请输入参与人数:”)for i in range ( 0 , n- 1 ):llist.append ( i, i+1)long=nk=headi=1p=2while():if i=p-1:t=llistk1print(llistt0)# 索引为 t 的删除if t=head:i=1p+=1 long=long-1k=llistk1i+=1print(llisthead0

7、)8 请编写一个密码登陆系统,接收用户从键盘输入的密码和你自己的密码进行比对,如果 正确就显示“恭喜你进入系统”如果不正确让用户重新输入,有三次机会。9 求 50 以内所有 5 的倍数的和。10 编写一个程序,它将找到所有这些数字,可被 7 整除,但不是5 的倍数, 2000 年至3200 年(包括在内)。得到的数字应按逗号分隔的顺序打印在一行上。提示:考虑使用range(#begin , #end)11 输入三个同学的成绩,然后大到小排列。12 哥德巴赫在 1742 年提出了以下猜想:任何一个大于 2 的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。import mathd

8、ef ss(n):Flag=Truei=2while i <= int(math.sqrt(n)and Flag:if Flag = Falsereturn Flagn=int(input( 输入一个大于 “2 的偶数 ” )for i in rang(2,n/ 2+1):ifprint(str(n)+"="+str(i)+"+"+str(n-i)如果输入“ 8 ”则结果显示13 小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:能被4 整除但不能被100 整除或能被 400 整除,闰年的 2 月为 29 天

9、)day=input(" 请输入年月日(格式举例: 2000-01-05 ): ")year=int(day:4)month=sun=int(day8:10)print(year,month,sun)f_run=31,28,31,30,31,30,31,31,30,31,30,31tall_day=0if :for i in range(month-1):tall_day +=f_runi else:for i in range(month-1):tall_day +=f_runitall_day += sunprint(day+" 是当年的第"+str

10、(tall_day)+" 天")( 1 )将程序横线处补充完整(2)如输入“2020-4-19”为当年的第天。14 .冠军在A、B、G D四位同学中。A说:“不是我”,B说:“是C' , C说:“是 D”,D 说 : “C 说的不对”,已知四人中有一人说了假话。判断出到底谁是冠军。请在空格处填写正确的代码,使程序完善。champion='A','B','C','D' # 设置选手列表for i in: # 循环读取选手编号cond=(i!='A') +(i='C') +

11、(i='D')+(i!='D') #查找符合条件的选手if cond= : #说真话是否是3 人print("冠军是:",) #输出冠军input(" 运行完毕,请按回车键退出 .")15 求 100 以内素数。16 小明用 Python 语言写了一个货币兑换程序如下:def cxrhanput money * currency):if wfrenuva = * $ ":return money * 5*30,dif rurrencyreturn money % 9,055“if currency "&

12、#165;M;return moneychf currtney”:"return money *MM - =" - >L. -(1) 参数 currency 指: 。(2)该程序用了哪一种算法结构: 。(3)输出结果为“50 = 325.25人民币”。则代码应该如何编写: 。17 .操作说明:打开文件“ Y窗2.py”,在代码窗口指定位置 <1>、<2>处修改完善程序代码,不得增加、删除语句或改变程序原有结构,操作结束后保存。以下程序段的功能是:输入一个正整数n (1至100),输出它的约数的个数。s=0n=int(input(请输'入

13、一个正整数:”)if n<1 or n>100 :exit #俞入的数不符合要求,退出for i in range(1,n+1):if n/i=0:<1>s=s+i <2>print(约数的个数是:",s)18 .完善代码并保存。实现功能:从键盘输入10个学生的测试成绩,输出最高分和最低分。cj=for i in range(0 , ):x=float(input("请输入一个数")cj.append()print(max(cj) , min()input("运行完毕,请按回车键退出”)19 .现有字典如下,根据题目要

14、求,写出相关的表达式:xingzuo = '小明:巨蟹座,小红:处女座,小兰:金牛座(1)现要取出小红所对应的星座,写出相关表达式:(2)现发现,“小兰”同学的星座应该是“水瓶座”,请帮忙修改。现发现,在字典中漏写了关于“小贝”的信息,现已知“小贝”为“双子座”,请帮忙 添加。(4)写出删除该字典的表达式:20 .rh,(均为正整数),小张编写了一个程序计算圆柱体的地面周长和面积,圆柱体侧面积以及圆柱体体积,其中圆周率定义为:3.14,请根据下列代码回答问题: r=int(input(请输入半径 r: " ) h=int(input(请输入高 h: ”)c=2*pi*rs=p

15、i*r*2S=c*hV=s*hprint(c,s,S,V) (填:顺序结构、分支结构、(1)解决问题的程序用到的控制结构有: 循环结构)(2)请将程序补充完整。(3)请找出程序中的错误代码,并改正。21 .有如下程序段: sum=0for i in range(1,20,3): sum+=iprint(" sum0ml),(1)循环变量i的初值为: ,终值为: ,步长为: 。(2)该程序执行后,输出的结果为: 。22 .辗转相除法,又称欧几里德算法,用于计算两个正整数m、n的最大公约数。它是已知最古老的算法,其可追溯至公元前300年前。辗转相除法的算法步骤是,对于给定的两个正整数m、

16、n (m>n),用m除以n得到余数r,若余数r不为0,就将n和r构成新的一对数(m=n, n=r),继续上面的除法,直到余 数为0,这时m就是原来两个数的最大公约数。因为这个算法需要反复进行除法运算,故 被形象地命名为“辗转相除法”。小曲设计了辗转相除法的算法,请根据下面算法回答问 题。描述描述二描述三输入两个正整数 m,n(m>n);计算m除以n所得的 余数r;(Dm=n,n=r ;若r=0,则m,n的最大公约数等于m;否则转到步骤;输出最大公约数 m;结束。m=int (iEiput C'hf田) n=int (input (z,n=z?) if rn < 口:t

17、=m6 i n=t7 r=18 while_ iqt =m% n10r:in.Hi 口一士12 口式nt (最大公约数为百(1)描述一是 描述法;描述二是流程图描述法;描述三是计算机程序语言描述法。(2)在描述三中代码 4到6行作用是。(3)在描述三程序设计中,补充代码第 8行划线处为 。23 .阅读程序。观察使用随机数求解百钱白鸡问题的代码并回答问题。百千白鸡问题是经典的数学问题,原题为“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三, 值钱一;百钱买百鸡,则翁、母、雏各几何?”翻译过来,意思是公鸡一个五块钱,母鸡 一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多 少只

18、?import randomwhile True:x=random.randrange(0,20)y=random.randrange(0,33)z=random.randrange(0,100)if 5*x+3*y+z/ 3=100 and x+y+z=100:print('公鸡,x)print('母鸡,y)print('小鸡,z)innci; t THftdcnub.ile True;x=r Fidoiu l and二 皿三 e (0, 20Lt aridDiji. tindraiije :0 33) 工三版(|口口.Eand剪e fn* ion】 二二.5七田号+

19、力3=1口口 and r+7-E=10D:PJ LD.1 ( 也出工簿 prtn* (, 可当' y pr i rut C小雪'*工4 1 1 S 乜 1 1 1 t . 33L84L78188L8 lF-3i vi If 4 1UI«l.->/:'与小,.<rr二出人工弓卜,(1) Python中导入库文件的命令是 。(2) random.randrange(0,20)生成的随机数的范围是。(3)如果不想写类似 random.randrange(0,20)这么长的句子,可以修改程序中的第一行为(4) while True 的作用是 。(5)如果w

20、hile True造成程序无法停止,我们可以在程序中添加一行 。24.学习了 Python绘制图形操作后,信息小组接到了编程演示的任务。为此,小组同学编 写了一段代码,绘制出多个不同颜色的圆形。代码如下:import turtleturtle. bgcolor ("black")colors="red", "green", "blue", "yellow" for x range (100): turtle. pencolor (colorsx%4) turtle. circle (x) tur

21、tle. left (90) 请分析任务,完成下列题目。(1)程序中处应填写()。A. printB. inputC. inD colors(2)程序中x%4的作用是( )。A.计算x乘以4的结果B.计算x除以4的整数部分C.计算x除以4的小数部分D.计算x除以4的余数(3)执行此程序,绘制出圆形的总颜色数是()。A. 1B 4C 5D 100(4)执行此程序,绘制出圆形的总个数是()。A. 1B 4C 99D 100(5)此程序属于程序设计结构中的()。A .顺序结构B分支结构C.循环结构D跳转结构25 .小金同学学完了进制转换后,对课后的不同进制的加减法很是头疼,爱动脑筋的小金 突发奇想,

22、能不能用python程序来完成这些作业呢?请帮小金完成代码编程def convert(s):m=0le=len(s)key=sle-1if key="B": n=2elif key="D":else:n=16i=0while i<=le-2:c=sle- 1- iif c>="0"and c<="9": a=ord(c)-ord("0")elif c>="A"and c<="F": a=ord(c)-ord("A&q

23、uot;)+10i+=1return ms=input(" 请输入算式")result=0;suanfu1=""suanfu2=""s1=""for i in range(len(s):c=siif c="+" or c="-" or c="=":suanfu1=suanfu2suanfu2=cif suanfu1="":result=tif suanfu1="+":result=result+tif suanfu1

24、="-": result=result-ts1=""else:s1=s1+cprint(" 计算结果为 "+str(result)+"D") ( 1 )将程序横线处补充完整(2)如输入“ 1110B+10D-30H="则输出结果为 。26 水仙花数是指一个三位数,它的每个位上的数字的 3 次方之和就等于它本身,例如:1*3+5*3+3*3=153 。这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。问题求解设这个数存放于变量x 中,变量 g、 s、 b 分别存放个位、十位、百位上的数。需得分离数字得到每位

25、上的数,即将变量g、 s、 b 表示为 x 的形式。请阅读如下python 程序,在空白处填写适当的表达式或语句,使程序完整。 print ( "三位数之内的水仙花是: " )for x in_ ( 100, 1000):b=x/100s=( x/10 ) _g=_If x=(b*3 +s*3+g*3 ):print ()27 .某仓库物品代码格式为“ X-XXXXXXXY',其中" X”和“ Y”均为0到9之间的数 字,“ Y”为校验码。校验码由前面 9个X计算得到,计算方法为:从左边开始,第 1个数字乘以1加上第2个数字乘以2依次类推,直到加上第 9个

26、数字乘以9,将该结果除 以10,所得余数即为校验码。用 Python设计一个程序,输入物品代码,判断输入的代码 中校验码是否正确,如果正确输出“正确”,否则输出“错误 ”。运行样例如下所示: 样例1:输入:2- 163-91475-4输出:正确样例2:输入:2- 163-91475-5输出:错误(1) Python程序实现如下,请在划线处填入正确的代码:s=input("输入物品代码:") a=for i in range (0, 13): if a. append(int (si)#append()函数用于在列表末尾添加新的对象sum=0for i in range(0,

27、 9):sdm=sum%10if sdm=ydm :print("正确") else:print("错误")28 .请编写Python程序,实现如下功能需求:1)程序运行后,给出文字提示:“请输入一个正整数:”2)输入一个整数n按回车后,程序输出从1-n所有整数中既是3的倍数又是5的倍数的数。3)不要超过5行代码。 程序运行举例: 录输入一个正整取二100 153Q45 S9 75 9029.蒙特卡洛方法不仅可以用来模拟投针实验,还可以用来模拟求解圆周率To请根据所学知识,并上网搜索有关资料,找到利用蒙特卡洛方法求解圆周率n的原理、方法和Python 程

28、序。30 编写程序,实现从键盘输入数据,实现输入数据转换成大写并输出【参考答案】 * 试卷处理标记,请不要删除一、程序填空1 Sum=0for i in range(1,101,2):Sum+=iprint(Sum)【详解】本题主要考查Python程序设ato求1100内奇数之和,用 Sum来求和,变量i的范围是2 到 100,每次递增2,可以使用range 函数,具体代码如下:Sum=0for i in range(1,101,2):Sum+=iprint(Sum)3 计算每一项的阶乘记录阶乘相加后的和t 记录的是每一项阶乘的结果, t*=n 即t=t*n , t 初值为 1 ,能计算出每项

29、的阶乘结果,若为0 ,则每项的阶乘结果都是0 ,不符合题意。 t=t*n s=s+t【详解】本题考查的是python 语言编程。本题考查的是1-20 阶乘的求和。本题的重点是要先计算出对应的每一项阶乘的结果t ,然后20 项阶乘的结果记录在s 中。在此过程中既要考虑到累乘求阶乘结果,又要考虑到累加求所有阶乘的和。初值 n=0,在1-21的循环过程中,记录每一项的阶乘,s=0记录阶乘累加的和,t=1记录每一项阶乘的结果。每求一次阶乘就要进行一次求和,故语句 t*=n , s+=t 均在“ for n in range (1,21):”的循环体内。4 bananaapplemangoa= 3【详解

30、】本题主要考查Python中For循环结构。for循环可以遍历任何序列的项目,如一个列表或者一个字符串; len() 方法返回列表元素个数。因此本题输出为各列表内容及列表元素个数。【点睛】5 参考答案 1:for i in range(2,101):j=2while j<=i:if i%j=0: breakj+=1 if j<i: continueelse:print(i,end="")参考答:2:for i in range(2,101):for j in range(2,i):if(i%j=0): break else:print(i) 【详解】本题考查是P

31、ython语言编程解决问题。break语句可以立即终止当前循环的执行,跳出当 前所在的循环结构。无论是while循环还是for循环,只要执行break语句,就会直接结束当前正在执行的循环体。这就好比在操场上跑步,原计划跑 10圈,可是当跑到第 2圈的时 候,突然想起有急事要办,于是果断停止跑步并离开操场,这就相当于使用了break语句提前终止了循环。答案中代码的实现过程见下图: 参考答案1 :me1 tQit rcrnni bur kJp, i tar转 LU】):r r 二ifif iXj=D;braak*1 if j<iicciTtinueLsc:print ti,)PyllitMi

32、 3. 5, 5 %3.& 5:能配口93214, Iki 2B 2018, 16iO7;40) 13C v. 1900 32 bit I) ar Win32 type , copyri (hija, or license ()v for note irifur-aniwu=EE START K:/界海霆罗能德 曷申,2。PT =235711 i J7 L9 23 23 31 57 4t 93 47 53 5P fl 67 Tt T3 7S B3 33 57 m1参考答案2:Ixpy - CH/Us-ers/dell/Oesktop/l.py (3.S.5)一1产File Edit F

33、ormat Run Options Window Helpi it前i它产2h 1 1): f t j 1. ran股 U :.t(氏j =Q): byeak els-± ;-IL$ Python *85 £hellFile Edit Shell Debug Options Window HdpPython 3, 3, 5 代邛"U. & 5二的口fbb。,JliI 20 2O2OH 15;5?;54) 64: on uln32Type /lisl口”.Ifeiljt , credits or license0former»>2351111

34、317192329313?414347535g61&77173793339 g?>»6 .解析法或解析 A【详解】本题主要考查Python程序的执行与调试。由算法分析可知,本题采用的算法是解析法或解析。3公里内(含3公里),收费8元;超过3公里但未超过6公里部分,按1.5 元/公里收费;超过 6公里部分,按2.25元/公里收费,故此处填 3Vs<=6,故选A选项。 6. range(1,33) g+m+x=100 5*g+3*m+x/3【详解】本题考查的是算法中的经典问题。百鸡百钱问题是典型的枚举算法解决,枚举算法的关键 就是找到问题解决的条件和枚举范围。2 &#

35、39; | J7 - C:/l mdLll/一kkp门心W.三9File Edit Format Run Options Window Help, . 1 g ir range I, 20):m in range(1; 33):for it in :ranRE3):EE十工二=:00 - i : 5+3*n+ e/3=100:print ("公鸡;",gJ每分;,叫”小嫡;,x)it Python 3.8.5 ShellFile Edit Shell Debug Options Window HelpPython 378. 5 (tag2;v3, 8. 5: 58LfbbO

36、, Jul 20 2020: 忘 H:历 柩D64) on Win32“ j ”,Type JhelpJ ,J copyright"h Jrcredits' cr ' license O' for more ini ?»=RESTART: C: Users/deLL/Desktop/Lpy ="、鸡,78、湍:81、鸡工84鸡鸡鸡>公公公>>1g鸟_xrx又寻母母E28 147. llist.append (n-1, 0) head=0 long>1 head=llistk1 llistk1=llistt1 k=ll

37、istk1【详解】本题主要考查Python程序执行与调试。for循环体是将索引0-n追加到llist中,此处是循环体执行完,将末元素与首元素的索引加入到llist中,故填llist.append (n-1, 0)。head是列表头,初始化为 0,故填head=0。最后剩下一个,其余人都将被杀掉,故 循环条件是10ng>1 ,变量long控制元素个数,故填10ng>1。索引为t的删除后,此处是 更新head值,故填head=llistk1。删完后,如果t等于head,需要更新索引k,将索 引t的值赋给变量k,故填llistk1=llistt1。如果t不等于head,也需要更新索引k,

38、故填 k=llistk18. pw=input("请输入密码:") password="123456i=1 while(i<=3):if pw=password:print("恭喜你进入系统!”)breakelse:print("请重新尝试:",i)pw = input("请输入密码:")i=i+1【详解】本题主要考查程序设计。可以通过Python程序设计语言实现题干要求,可以通过while循环控制三次机会,使用if条件分支结构判断是否输入正确,具体代码如下:pw=input("请输入密码:&quo

39、t;)password="123456”i=1 while(i<=3):if pw=password:print("恭喜你进入系统!”)breakelse:print("请重新尝试:",i)pw = input("请输入密码:") i=i+19.¥求5。以,内所有潮倍数的和Sum =vhile i <= 50:才从l循环到5。*判断变量3是否能被理除1011Run:Stun += i pr int < iti += 1 else:print(" pr int (Stun)demo03 03 09w

40、nd=' * )#循于不控制变量#林不正常结束】就执行艮3部分novel"*if i 5 = 0:D: P 71honPy t hoii36 p y thon. &xe F: /p/thcn/n&w/ demo03_03_09. py5 10 15 20 25 30 35 40 45 50over275【详解】本题主要考查Python程序设计。可以采用Python程序设计语言实现 50以内所有5的倍数的和,可以结合 while循环以及if条件分支结构实现,具体代码及实现如下:1 H求5减内所有,才倍取的和 1 - I Sun - 0 rhil* i = 50:

41、 君从1循.H于H if i % 5 - 0;二利断交量是否彘射遭除 £何)+= L ptinid.匕nd* >i += 1H循环拄制变量a才访有F离铝束,就执行fErR分Mini Cnge/:1 口 rlti:1 £un,Run!; deircClJ_QJ_p9 D;, Python,PvthonjB ,口;ihcn- n日 F;,pFhonfnm曹/deme。3_03 09, i?r 5 10 15 2D 二5 30 35 10 45 50 qver亶 W 27510. l=for i in range(2000, 3201):if (i%7=0) and (i%

42、5!=0):l.append(str(i)print (','.join(l)【详解】本题主要考查程序设计。由题干要求,可以使用 Python程序设计语言实现,可使用 for循 环以及列表,可以使用join函数按逗号分隔格式打印结果,join函数连接字符串数组,将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串,具体代 码如下:l=for i in range(2000, 3201):if (i%7=0) and (i%5!=0):l.append(str(i)print (','.join(l) 11.1: (SA三个同学的麒.懋启用H碓

43、列st】=Float (刖工厂谙晡人第一位同学的成精:st2 Hgtiinpud*诣整大第二位同学的成绮1 ")513 =奥川小广清输入第三庭同学的成绩:。)if St1 < It2: h昴一曲I:貂二个*疗眈 tup = $tl stl = st25亡=w ¥ - -性斗丁Z福if Ml < 5t3: i羊惮三i鲂胱 【详解】本题主要考查程序设计与实现。可以使用Python程序实现题干要求:卜丁输人三个同学的成城然后大到力邨列一«1 5 float unput/请输入第一位同学的威基工1) st2 = float(皿就请电入第二朋学的瞧:力 零&qu

44、ot;=。白"|图入第三位同学的成Sh ' , if stl < st2: 上革一;,十二第二个艺杼4 g = 5tl stl = st2 stl = tnp >交换两,室的值if 5tl§工3::第1MO第三个龙行比技12. n%i=0: i+=1 ss(i) and ss(n-i): 8=3+5 【详解】本题主要考查Python程序的执行与调试。函数ss(n)用来判断n是否为质数,若是则返回True,否则返回False,此处是通过 while循环逐个判断n是不是能整除i,故填n%i=。:。若不满足if条件,则i递增,继续循环判断,故填i+=1。此处判

45、断i与n-i是否都是质数,若是,则表明该偶数可以写成两个质数之和,并输出,故填 ss(i) and ss(n- i):。如果输入“ 8”则结果显示8=3+5。金君0MBpy - Cs/UwrWDKktop/Pyihon 程金自尊巴餐猜珥口¥ 3.8,. XRte- Edit Forrriiaft Run Options Window H-elpM可虚巴片在1R康矍出了以下精援二任向二F夫于2的得数都向金写成阚卞底拉工和串适 irinir ftalh def ms 卜F13<=Truoi-2 "lii r i £ ini (matl'i, xqrt (

46、nJ) . :nl Flag it nftz=0!Flag « Fslw £-1-1 totura Flat 门二二nt G叶ut亲L-十大于工的假就AJ) tei i m i,an£e(2&/2+l).if fsdi) and as(nri.): pi i.nt (jti (n) tA-A>:Ftr(£):*冲9工111(n=iJ ) I L4 Python a.a.5-OX HI#- Edit Shl 8*氏g Options Wimdo-w H# p Python 3.8.55Jyl 20 2S20. IE 57 54) W3C y.

47、 1Q24 bit (AID石 41 qn viii32 Tj串第",kelpw? ''CDpTtight* -cxedits" D£ "licence l")for iwzire Lriffirmatiotj*« 3E5IAR7- C: /Ifo cra/AD 匕#tg/FVtiwm 程序/ 集 fiS 内杵蓿将 * pr -而二T太于2的偶酷6 B-3+51总113. int(day5:7) (year%4=0 and year%100!=0 or year%400=0) and month>=2 tall_

48、day+=1 110【详解】本题主要考查Python程序的执行与调试。此处是取出字符串day中的月份赋给变量month , month是第5第6位,strstart:end , start会包含在结果中而end却不会,故此处填int(day5:7)。此处判断是不是闰年,因为闰年的二月有29天,故if判断还要判断当前的月份是不是包含2月即大于等于 2月,故此处填(year%4=0 and year%100!=0 oryear%400=0) and month>=2。如果是闰年且当前日期包括 2月,则循环完tall_day需增加1天,故填tall_day+=1。输入“ 2020-4-19”为

49、当年的第 110天。岛 IBA 日看讶 CUsers/A/DMkiop/Pytlion 陶.棉小班设计了一个可以输入日期得到当天是年度第几天的蔻序清阅读程序完成篇空粒£闰年判断规则;能板4整除但不能被10。整除或能林40口整除,闰年的2月为29天,File £dit Fqrm氧 t Run Qption5 西 ndow Help day-input广请输入年月日(格式举例;2000-01-05> ; *)year=int. (day : 4)jRanth=iiit :day6: 7)sun=int (da5rCS: 10)print (yeat, mcnth, sun

50、)f_run- 3U2B, 31,30, 31, 30,31, 3L30, 31,30, 31 +all_dayrt(year%4=0year%100!=0year40&=0) month>»2:f r i ii range (month-1); tall_day -+=f_runi-tall_day+=lelse:f c r i ir. range (jiuoncth 1):tall_day -+=f_runLiJtall_day -= sun print (而尸"是当年的第"+str (tall day) + 天")住 Python 3

51、.3.5 Shell XFile Edit Shell Debug Options Window HelpPython 3. 8. 5 (tags/v3. 6. 5; 530m0P Tul 2D_ 2020, 15:57:64f MSC vr_1924 64 bit (AMD64) on vin32Type "help", "copyright", "credit5“ or license()for wore irfrmation.>»= RESTART: C: /Users/A/fesktop/Pythen程导/输入日期停到当

52、天是年度第口港k年月日(格式举例=2000-01-05) : 2020-04-192020 4 19202004T9是当年的第11。天>»14. champion 3 i【详解】 本题主要考查Python程序的执行。champion是选手编号列表,此处是循环读取选手编号,使用for i in champion ,故此处填champion。四人中有一人说了假话,即 3个人说 真话,即当cond=3时,则表示找到了谁是冠军,故此处填3。当cond是3时,i即为冠军,故此处填io15. for i in range(1,100):if i > 1:for j in range(

53、2,i):if (i % j) = 0:breakelse:print(i)【详解】本题主要考查Python程序设计。可以通过for循环找出100以内的素数,用i依次整数2i-1,如果能整除表明i不是素数,否则i为质数,具体代码如下:for i in range(1,100):if i > 1:for j in range(2,i):if (i % j) = 0: breakelse: print(i)16. 形参 分支结构 (选择结构) if 条件中的 return 语句改为 return print(money,"$=",money*6.505," 人民

54、币 ") ,其他 elif 语句类似 【详解】本题主要考查Python 程序执行与调试。 分析代码可知,参数currency 指:形参。 由代码可知,该程序用了条件分支结构。 若输出结果是50 = 325.25 人民币,则需将if 条件中的 return 语句改为 return print(money,"$=",money*6.505," 人民币") ,其他elif 语句类似。17. <1>n%i=0 <2>s=s+1【详解】本题主要考查Python程序的执行。<1>变量i的取值范围是1n,如果n能整除i,则

55、i为n 的一个约数,s统计约数的个数,故此处应修改为n%i=0。<2>如果n能整除i,则s递增,故此处应改为 s=s+1。 18 x cj 【详解】本题主要考查Python程序执行与调试。从键盘输入10个学生的测试成绩,range(a,b)的范围是从ab,但不包括b,故第一空填10。每输入一个数x,将其通过append函数加 到列表 cj 中,故第二空填 x。 求最大值用 max 函数,求最小值用 min 函数,故第三空填 cj。19 xingzuo 小红“ ” xingzuo “小兰” = “水瓶座” xingzuo “小贝” = “双子座” del xingzuo【详解】本题主

56、要考查字典数据类型。字典数据类型,可以通过检索字典的键值得到对应的值,即xingzuo“小红”='处女座,故第一空填xingzuo“小红”。将“小兰”同学的星座修改为“水瓶座”,可以通过语句xingzuo “小兰”产“水瓶座”。同理添加小贝的信息为,xingzuo"小贝"尸"双子座"。删除该字典的表达式是del xingzuo 。20 顺序结构pi=3.14 r=float(input( “请输入半径r: ” ) 整型和实数型不能直接运算,结果会有误差h=float(input( “请输入高 h: ” )【详解】本题主要考查Python程序执行与

57、调试。分析程序可知,解决问题的程序用到的控制结构有:顺序结构。圆周率定义为:3.14,故第二空填pi=3.14。r=float(input(“请输入半径 r: ” ) 整型和实数型不能直接运算,结果会有误差 h=float(input( “请输入高 h: ” ) 。21 初值为 1 终值为: 20 步长为: 3 sum=70 【详解】本题主要考查Python 循环结构。由代码for i in range(1,20,3) ,可知循环变量i 的初值为1 ,终值为20,步长为3。该程序执行后,输出的结果为sum=sum+i=0+1+4+7+10+13+16+19=70 。22 自然语言 确保 m>=n r!=0【详解】本题主要考查算法及 Python程序实现。描述一是自然语言描述法;描述二是流程图描述法;描述三是计算机程序语言描述法。在描述三中代码4到6行,当m<n时,交换 m n的值,否则跳过,故作用是确保 m>=n。由题干可知,循环条件是余数 r不等于0,故代

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论