1 / 10
文档名称:

Python期末试题A 图文.pdf

格式:pdf   大小:550KB   页数:10页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Python期末试题A 图文.pdf

上传人:cjc201601 2023/5/14 文件大小:550 KB

下载得到文件列表

Python期末试题A 图文.pdf

相关文档

文档介绍

文档介绍:该【Python期末试题A 图文 】是由【cjc201601】上传分享,文档一共【10】页,该文档可以免费在线阅读,需要了解更多关于【Python期末试题A 图文 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。Python期末试题A图文一、,关于变量的说法,正确的是(),,,输出结果为()foriinrange(1,5):print(i),2,3,4,,1,2,3,=a+aa+aaa+aaaa+aa..a的值,其中a是一个数字,如8+88+888+8888+88888。设计一个summalion()函数,输入变量为数字a和需要多少个数相加的n,在这个函数中,,前几个数的求和保存在变量sum中,Python程序如下左图所示,请在下划线处填写代码()完善程序实现如下右图的运行结果。+==basic+=basic++=,结果正确的是()s="abcdefg"c=len(s)#len求字符串长度foriinrange(0,c):ifi<2:print(chr(ord(s[i])+2),end="")#ord()函数是chr()函数配对函数,将字符转ASCII值else:print(chr(ord(s[i])+3),end="")()"ab"+"c"*2的运行结果是()..()、理解执行的语言是(),我们一般使用“=“表示相等关系,那么“=”在Python语言中的写法为()A.=B.==C.:=D.<>(),不属于Python特点的是()。,能正确表示不等式方程|x|>1解的是()>1orx<->-1orx<>1andx<->-1andx<="python",s2="Python",则表达式中s1>s2的值为()A.“python”B.“Python”,表达式(21%4)+3的值是()()**3//3+8%2***2%3+7%2**//100%("1"+"5")//3二、:(1)参数currency指:____________。(2)该程序用了哪一种算法结构:_____________。(3)输出结果为“50$=”。则代码应该如何编写:____________。17.(项目情境)一元二次方程ax2+bx+c=0(a≠0),当b2-4ac≥0,方程有两个不同的实数根,当b2-4ac<0时,方程无实数根。(问题求解)下面的python程序实现的功能是判断方程是否有实数根。请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。importmatha=int(input("请输入a的值:"))b=int(input("请输入b的值:"))c=int(input("请输入c的值:"))d=_____#将表达式b2-4ac的值赋给变量dif____print("x1=",(-b+(d))/(2*a))#输出方程的其中一个实数根print("x2=",(_________)#输出方程的另一个实数根else:_________#输出“方程无实数根”(加密前数据是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。●把上述处理的得到二进制数依次拼接,即构成最后的加密数据例如,待加密数据为“”,数组c各元素的值依次是数组c36152847则数据位置变换如下:如值变换密钥m为35(二进制表示是00100011),则字符“t”(ASCII码值是116,二进制表示是010100)的数值变换过程如下:变换前01110100密钥m00100011变换后01010111(1)已知“A”的ASCII码值是65,m=35,则“A”数值变换后的结果是_______(填二进制数据)。(2)小李根据上述算法,设计了一个数据加密程序,其VB代码如下,请在划线处填入合适的代码。Constn=1024Dimc(1To8)AsIntegerPrivateSubForm_Load()‘产生位置变换密钥数组c,代码略EndSubFunctionconvert(cAsInteger)AsString‘程序功能:把整数c转成8位二进制数,代码略EndFunctionmand1_Click()DimsAsString,stAsString,ssAsString,resAsStringDimiAsInteger,jAsIntegerstartAsIntegerDima(1Ton)AsString,b(1Ton)AsStrings==convert(Val())Fori=1ToLen(s)a(i)=Mid(s,i,1)Nextii=1:start=-8DoWhile①________IfiMod8=1Thenstart=start+8b(i)=②_______i=i+1LoopForj=iToLen(s)b(j)=a(j)NextjFori=1ToLen(s)③________Forj=1To8IfMid(ss,j,1)=Mid(st,j,1)Thenres=res+"0"Elseres=res+"1"'=:如果有总量共1020个西瓜,第一天卖掉总数的一半后多卖出了两个,以后每天卖剩下的一半多两个,那么几天以后卖完呢?请将下列程序补充完整。tc=1020c=0while______________:tc=tc-(tc/2+2)_____________print(c),根据题目要求,写出相关的表达式:xingzuo={‘小明’:‘巨蟹座’,‘小红’:‘处女座’,‘小兰’:‘金牛座’}(1)现要取出小红所对应的星座,写出相关表达式:___________________________________________________________(2)现发现,“小兰”同学的星座应该是“水瓶座”,请帮忙修改。__________________________________________________________(3)现发现,在字典中漏写了关于“小贝”的信息,现已知“小贝”为“双子座”,请帮忙添加。_________________________________________________________(4)写出删除该字典的表达式:、B、C、D四位同学中。A说:“不是我”,B说:“是C”,C说:“是D”,D说:“C说的不对”,已知四人中有一人说了假话。判断出到底谁是冠军。请在空格处填写正确的代码,使程序完善。champion=['A','B','C','D']#设置选手列表foriin__________:#循环读取选手编号cond=(i!='A')+(i=='C')+(i=='D')+(i!='D')#查找符合条件的选手ifcond==_____:#说真话是否是3人print("冠军是:",_________)#输出冠军input("运行完毕,请按回车键退出...")【参考答案】***试卷处理标记,请不要删除一、【详解】本题主要考查Python变量。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字;变量能存储的数据很多,包含存储汉字,在Python中,定义变量是不需要指定数据类解析:D【详解】本题主要考查Python变量。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字;变量能存储的数据很多,包含存储汉字,在Python中,定义变量是不需要指定数据类型的,但Python本身是有数据类型的,它的数据类型可分为数字型和非数字型;数据类型是可以强制转换的;变量被第二次赋值后,会覆盖原有的数据,故本题选D选项。【详解】本题考查Python程序执行range(1,5)表示1到4的值,注意不包括5。故本题选D选项解析:D【详解】本题考查Python程序执行range(1,5)表示1到4的值,注意不包括5。【详解】本题主要考查Python程序的执行与调试。变量sum用来求和,变量basic用来保存第i个数,下划线处对第i轮求和,故填sum=sum+basic,故选D选项。解析:D【详解】本题主要考查Python程序的执行与调试。变量sum用来求和,变量basic用来保存第i个数,下划线处对第i轮求和,故填sum=sum+basic,故选D选项。【详解】本题主要考查Python程序的执行。c是字符串s的长度,变量i的范围是0~c-1,如果i<2,将该字符后移2位并输出,否则将该字符后移3位并输出,故程序运行的结果是cdfgh解析:C【详解】本题主要考查Python程序的执行。c是字符串s的长度,变量i的范围是0~c-1,如果i<2,将该字符后移2位并输出,否则将该字符后移3位并输出,故程序运行的结果是cdfghij,故本题选C选项。【详解】本题主要考查Python变量的命名。变量的命名规则有:不能以数字开头,可以以字母或下划线开头,不能包含特殊字符,不能是关键词,故2a不可以作为Python合法变量名,故本题选B选项。解析:B【详解】本题主要考查Python变量的命名。变量的命名规则有:不能以数字开头,可以以字母或下划线开头,不能包含特殊字符,不能是关键词,故2a不可以作为Python合法变量名,故本题选B选项。【详解】本题主要考查Python表达式的运算。“ab”、“c”是字符型数据类型,“c”*2=“cc”,故"ab"+"c"*,故本题选C选项。解析:C【详解】本题主要考查Python表达式的运算。“ab”、“c”是字符型数据类型,“c”*2=“cc”,故"ab"+"c"*,故本题选C选项。【详解】本题主要考查程序设计语言。计算机能够直接识别和执行的语言是机器语言,即0和1,故本题选A选项。解析:A【详解】本题主要考查程序设计语言。计算机能够直接识别和执行的语言是机器语言,即0和1,故本题选A选项。【详解】本题主要考查程序语言。计算机能直接识别、理解执行的语言是机器语言(即0和1),故本题选D选项。解析:D【详解】本题主要考查程序语言。计算机能直接识别、理解执行的语言是机器语言(即0和1),故本题选D选项。【详解】本题主要考查Python运算符。在Python语言等高级语言中,“=“往往被用于赋值语句,而表示相等的情况时,大多用“==”。因此B选项正确。解析:B【详解】本题主要考查Python运算符。在Python语言等高级语言中,“=“往往被用于赋值语句,而表示相等的情况时,大多用“==”。因此B选项正确。【详解】本题主要考查Python数据类型。Python没有char类型,一个字符也是字符串,故本题选A选项。解析:A【详解】本题主要考查Python数据类型。Python没有char类型,一个字符也是字符串,故本题选A选项。【详解】本题考查Python特点的相关知识点Python是一门面向对象、可读性好、开源的语言。因为是高级语言,不具备运行效率高的特点。故本题选B选项解析:B【详解】本题考查Python特点的相关知识点Python是一门面向对象、可读性好、开源的语言。因为是高级语言,不具备运行效率高的特点。【详解】本题主要考查Python表达式。题干不等式方程可以写成x<-1或者x>1,用Python表示是x>1orx<-1,故本题选A选项。解析:A【详解】本题主要考查Python表达式。题干不等式方程可以写成x<-1或者x>1,用Python表示是x>1orx<-1,故本题选A选项。【详解】本题主要考查Python字符串。比较字符串的大小,是将两个字符串的字符一一比较它们的ASCII值,小写字母的ASCII值大于大写字母,故表达式中s1>s2的值为True,故本题选C选项解析:C【详解】本题主要考查Python字符串。比较字符串的大小,是将两个字符串的字符一一比较它们的ASCII值,小写字母的ASCII值大于大写字母,故表达式中s1>s2的值为True,故本题选C选项。【详解】本题考查的是Python表达式。%是求余,故(21%4)+3=1+3=4,选项B正确。解析:B【详解】本题考查的是Python表达式。%是求余,故(21%4)+3=1+3=4,选项B正确。【详解】本题主要考查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选项。二、(选择结构)if条件中的return语句改为returnprint(money,"$=",money*,"人民币"),其他elif语句类似【详解】本题主要考查Python程序执行与调试。①分析代码可知,参数currency指:形参。②由代码可知,该程序用了条件分支结构。③若输出结果是50$=,则需将if条件中的return语句改为returnprint(money,"$=",money*,"人民币"),其他elif语句类似。*b-4*a*c或b**2-4*a*cd>=0-b-(d))/(2*a)print("方程无实数根")【详解】本题主要考查Python程序的调试。①此处将表达式b2-4ac的值赋给变量d,故填b*b-4*a*c或b**2-4*a*c。②当b2-4ac≥0,方程有两个不同的实数根,故此处if判断条件是d>=0。③当b2-4ac≥0时,方程的两个根分别为x1=(-b+(d))/(2*a),x2=(-b-(d))/(2*a),故此处填-b-(d))/(2*a)。④else部分,即x<0时,输出“方程无实数根”,故此处填print("方程无实数根")。18.①i<=(Len(s)\8)*8②a(start+c((i-1)Mod8+1))③ss=convert(Asc(b(i)))【详解】(1)“A”的ASCII码值是65,用二进制表示为0100001,m=35,用二进制表示为0010001,位做异或运算,相同为0,相异为1,可得:01100010。(2)①以8个数据为一段进行分段处理,个数等于8的数据段需进行位置变换,故需进行位置变换的数据段有(Len(s)\8)个,数据个数为i<=(Len(s)\8)*8。②位置变换方法:加密后数据段的第ⅰ个元素=原数据段的第c(i)个元素,其中i=1,2,……,8,i表示段内位置。代码“DoWhilei<=(Len(s)\8)*8”中的i对应段内位置可为“1+(i-1)Mod8”,start表示该数据段第一个数据的前个位置,故数组b第i位置元素是来自数组a第start+c(1+(i*-1)Mod8)位置,故②处代码为“a(start+c(i-1)Mod8+1))”。③位置变换后的数据需转二进制,再按位做异或运算,故③处的代码是调用自定义函数convert把b(i)中字符的ASCII码转二进制后存入变量ss,故此处代码为“ss=convert(Asc(b(i))”。>0c=c+1或者c+=1【详解】本题主要考查Python程序执行与调试。①变量tc保存西瓜数量,当tc大于0时,一直循环,故第一空填tc>0。②变量c保存天数,每循环一次,变量c递增1,故第二空填c=c+1或者c+=1。[“小红”]xingzuo[“小兰”]=“水瓶座”xingzuo[“小贝”]=“双子座”delxingzuo【详解】本题主要考查字典数据类型。①字典数据类型,可以通过检索字典的键值得到对应的值,即xingzuo[“小红”]=‘处女座’,故第一空填xingzuo[“小红”]。②将“小兰”同学的星座修改为“水瓶座”,可以通过语句xingzuo[“小兰”]=“水瓶座”。③同理添加小贝的信息为,xingzuo[“小贝”]=“双子座”。④删除该字典的表达式是delxingzuo。【详解】本题主要考查Python程序的执行。①champion是选手编号列表,此处是循环读取选手编号,使用foriinchampion,故此处填champion。②四人中有一人说了假话,即3个人说真话,即当cond=3时,则表示找到了谁是冠军,故此处填3。③当cond是3时,i即为冠军,故此处填i。