1、NCT-Python编程三级-模拟卷1(含答案图文一、选择题1已知字符串a=python,则a1的值为( )ApBpyCPyDy2以下是猜数游戏的 Python程序,请你补全代码:请选择适当的代码填入程序处。( )AforBprintCelifDinput3在Python中,表达式a*3+b*3+c*3=100*a+10*b+c属于( )A算术表达式B关系表达式C逻辑表达式D日期表达式4关于Python语句P = P,以下选项中描述正确的是( )AP和P的负数相等BP和P的绝对值相等C将P赋值为它的相反数DP的值为05小明想要通过编程来解决由昆明到景东锦屏耗时最短行程问题时,最核心的工作是(
2、)A设计出解决问题的算法B设计出解决问题的PPTC编写出Python代码D选择一种编程软件6在Python中,实现多分支选择结构的较好方法是( )。AifBif-elseCif-elif-elseDif嵌套7在python中,运行下列程序,正确的结果是( )。Ai=4 s=10Bi=5 s=10Ci=5 s=15Di=6 s=158可以被计算机直接执行的语言是( ) , Python语言属于( )语言。A机器,高级B高级,汇编C高级,机器D汇编,高级9在Python中,下面程序段的输出结果是( )x=9 Print(“x=”,x+1)A9B10Cx=9Dx= 1010已知字符串变量x的值是“H
3、”,字符“A”的ASCII值是65,则python表达式chr(ord(x)+2)的值是( )AIBJC73D7411关于Python语言的特点,以下选项描述正确的是( )APython语言不支持面向对象BPython语言是解释型语言CPython语言是编译型语言DPython语言是非跨平台语言12关于python程序设计语言,下列说法错误的是( )Apython是一种面向对象的编程语言Bpython代码只能在交互环境中运行Cpython具有丰富和强大的库Dpython是一种解释型的计算机程序设计高级语言13下列关于算法说法不正确的是( )A算法独立于任何具体的语言,Python算法只能用Py
4、thon语言来实现B解决问题的过程就是实现算法的过程C算法是程序设计的“灵魂”D算法可以通过编程来实现1412 Python语言语句块的标记是( )A分号B逗号C缩进D/15Python中print(66!=66)结果是( )。A1B0CTrueDFalse二、程序填空16编写Python程序实现如下功能:输入年月日,输入格式如“2021-06-21”,年月日之间用“-”分隔。判断这一天是这一年的第几天。以2021-06-21为例,前面5个月总天数,加上21天即这一天是本年的第几天。特殊情况,当输入的年份是闰年时,2月份有29天。闰年的判断方式如下:I、能被4整除,但不能被100整除;II、能
5、被400整除;(1)“2020-05-20”这一天是这一年的第_天。(2)编写Python代码如下,在划线处填入正确的代码_(3)加框处的代码有误,请改正。改正:_mon=31, 28, 31, 30, 31, 30,31, 31, 30, 31, 30,31 #mon 中存储1-12每个月的天数s=input(请输入年月日: )month=int(s5:7) sum=0for i in range( ):sum+=monisum+=dayif :isleap=Trueelse:isleap=Falseif sum+=1print(这一天是当年的第 +str (sum)+天)17小金同学学完了
6、进制转换后,对课后的不同进制的加减法很是头疼,爱动脑筋的小金突发奇想,能不能用python程序来完成这些作业呢?请帮小金完成代码编程.def convert(s): m=0 le=len(s) key=sle-1 if key=B: n=2 elif key=D: _ else: n=16 i=0 while i=0and c=Aand c=5:n=_ #取字符串的前5个字符else:n=n+ *(5-len(n)return nr=1000;x=100;y=15;z=0.8 #从系统中分别获取消费额度、满和减以及打折的数值dis=红烧排骨,香炸刀鱼,虾仁,菜心,米饭 #某顾客所点菜品名称nu
7、m=1,1,1,1,3 #某顾客所点菜品数量mon=46,45,68,16,1 #某顾客所点菜品单价print(菜品名称,数量,小计)_for i in range(len(dis):print(gs(disi),numi, ,numi*moni)s=s+numi*moniif s=r:total=s*zelse:_print(消费合计:,s)print(应收现金:,total)19程序设计:键盘输入任意的正整数,程序输出与其相应的二进制数。代码如下:nint(input(请输入一个十进制数:)resultwhile n0:result.append( )n result.reverse()f
8、or i in result:print(i,end”)(1)程序代码中处正确的代码是(_)。An%2 Bn/2 Cn/2 Dn*2(2)程序代码中处可能的代码是(_)。An%2 Bn/2 Cn/2 Dn*220编写程序,找到并输出100以内的偶数个数。21阅读程序。阅读求水仙花数的代码并回答问题。“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=13+53+33,请计算并输出所有三位数的水仙花数。for n in range(100,1000): i=n/100 j=n/100%10 k=n%10 if n=i*i*i+j*j*j+k*k*
9、k:print(n)(1)/的符号作用是 _ 。(2)%的符号作用是 _ 。(3)=的符号作用是 _ 。(4)在代码中,变量i表示的是三位数中的 _ 位。(5)在代码中,变量j 表示的是三位数中的 _ 位。(6)在代码中,变量k表示的是三位数中的 _ 位。(7)在range(100,1000)这个区域内,变量n无法取到的数值是_。【参考答案】*试卷处理标记,请不要删除一、选择题1D【详解】本题主要考查Python字符串。字符串索引从0开始,a0=p,a1=y,故本题选D选项。解析:D【详解】本题主要考查Python字符串。字符串索引从0开始,a0=p,a1=y,故本题选D选项。2C【详解】本题
10、主要考查Python分支结构。分析程序可知,该程序采用多分支结构,故程序处应填elif,故本题选C选项。解析:C【详解】本题主要考查Python分支结构。分析程序可知,该程序采用多分支结构,故程序处应填elif,故本题选C选项。3B【详解】本题主要考查Python表达式的运算。“=”是关系运算符,用于判断左右两边的表达式值是否相等,故该表达式是关系表达式,故本题选B选项。解析:B【详解】本题主要考查Python表达式的运算。“=”是关系运算符,用于判断左右两边的表达式值是否相等,故该表达式是关系表达式,故本题选B选项。4C【详解】本题主要考查Python语句。P = P是赋值语句,将P赋值为它
11、的相反数,故本题选C选项。解析:C【详解】本题主要考查Python语句。P = P是赋值语句,将P赋值为它的相反数,故本题选C选项。5A【详解】本题考查的是计算机解决问题。计算机解决问题的步骤:分析问题、设计算法、编写程序、调试运行、检测结果,其中最核心的步骤是设计算法。故本题应选A。解析:A【详解】本题考查的是计算机解决问题。计算机解决问题的步骤:分析问题、设计算法、编写程序、调试运行、检测结果,其中最核心的步骤是设计算法。故本题应选A。6C【详解】本题主要考查多分支选择结构。多分支选择结构格式:if-elif-else,故本题选C选项。解析:C【详解】本题主要考查多分支选择结构。多分支选择
12、结构格式:if-elif-else,故本题选C选项。7A【详解】本题主要考查Python程序的执行。for i in range(1,5)可知变量i的范围是1-4,程序运行完,s=s+i=0+1+2+3+4=10,故本题选A选项。解析:A【详解】本题主要考查Python程序的执行。for i in range(1,5)可知变量i的范围是1-4,程序运行完,s=s+i=0+1+2+3+4=10,故本题选A选项。8A【详解】本题考查计算机语言。机器语言是机器能直接识别的程序语言或指令代码,无需经过翻译,或指不经翻译即可为机器直接理解和接受的程序语言或指令代码。汇编语言是任何一种用于电子计算机,微处
13、理器,微解析:A【详解】本题考查计算机语言。机器语言是机器能直接识别的程序语言或指令代码,无需经过翻译,或指不经翻译即可为机器直接理解和接受的程序语言或指令代码。汇编语言是任何一种用于电子计算机,微处理器,微控制器或其他可编程器件的低级语言,亦称为符号语言。高级语言是一种面向过程或对象的语言。可以被计算机直接执行的语言是机器语言,Python语言属于高级语言。故本题选A。9D【详解】本题主要考查Python程序输出语句。x=9,故Print(“x=”,x+1)(“x=”是字符型直接输出,x+1计算后输出对应结果)的输出结果是x= 10,故本题选D选项。解析:D【详解】本题主要考查Python程
14、序输出语句。x=9,故Print(“x=”,x+1)(“x=”是字符型直接输出,x+1计算后输出对应结果)的输出结果是x= 10,故本题选D选项。10B【详解】本题主要考查Python字符函数。ord函数用于将字符转换为整数, chr函数接受一个数字(应为ASCII码)并返回字符。则python表达式chr(ord(x)+2)=chr(ord解析:B【详解】本题主要考查Python字符函数。ord函数用于将字符转换为整数, chr函数接受一个数字(应为ASCII码)并返回字符。则python表达式chr(ord(x)+2)=chr(ord(H)+2)=chr(74)=J,故本题选B选项。11B
15、【详解】本题主要考查Python语言。Python语言是解释型语言,支持面向对象和跨平台使用,故本题选B选项。解析:B【详解】本题主要考查Python语言。Python语言是解释型语言,支持面向对象和跨平台使用,故本题选B选项。12B【详解】本题主要考查Python程序设计语言。python是一种面向对象的编程语言,python代码可以在交互环境中运行,python具有丰富和强大的库,python是一种解释型的计算机程序设解析:B【详解】本题主要考查Python程序设计语言。python是一种面向对象的编程语言,python代码可以在交互环境中运行,python具有丰富和强大的库,python
16、是一种解释型的计算机程序设计高级语言,故本题选B选项。13A【详解】本题考查的是算法相关知识。所谓“算法”就是解题方法的精确描述,由有限个步骤组成。算法独立于任何具体的语言,但Python算法也可以用其他语言来实现,故选项A错误;解决问题的过程就是实现解析:A【详解】本题考查的是算法相关知识。所谓“算法”就是解题方法的精确描述,由有限个步骤组成。算法独立于任何具体的语言,但Python算法也可以用其他语言来实现,故选项A错误;解决问题的过程就是实现算法的过程。算法可以通过编程来实现。算法是程序设计的核心,即是程序设计的“灵魂”。故应选A。14C【详解】本题考查的是Python语言相关知识。Py
17、thon语言中用缩进来标记语句块,故选项C正确。解析:C【详解】本题考查的是Python语言相关知识。Python语言中用缩进来标记语句块,故选项C正确。15D【详解】本题主要考查Python表达式的运算。表达式66!=66的值为False,故print(66!=66)结果是False,故本题选D选项。解析:D【详解】本题主要考查Python表达式的运算。表达式66!=66的值为False,故print(66!=66)结果是False,故本题选D选项。二、程序填空16day=int(s8:)或day=int(s-2:) 0,month-1 isleap and month2 year%4=0
18、and year%100!=0 or year%400=0 【详解】本题主要考查Python程序的执行与调试。2020年是闰年,2月是29天,故“2020-05-20”这一天是这一年的第31+29+31+30+20=141天。变量s是字符串型,下标从0开始,此处是将输入日期中的天取出来放到变量day中,可以使用切片操作:从左边开始截取,也可以从右边截取,故此处填day=int(s8:)或day=int(s-2:)。通过循环将前month-1个月的天数加起来,故变量i的范围是0到month-1,故填0,month-1。变量isleap标记是不是闰年,如果isleap值为真且month2,则sum
19、需要递增1,故填isleap and month2。由题干闰年判断条件,可知加框处应改为year%4=0 and year%100!=0 or year%400=0。17n=10 m=m+(n*(le-2-i)*a t=convert(s1) -24D 【详解】本题主要考查Python程序的执行与调试。二进制的权值是2,十进制的权值是10,十六进制的权值是16,此处是十进制的情况,故填n=10。二进制、十六进制转化为十进制的方法是“按权展开、逐项相加”,从右往左加,变量i的初值等于0,故此处要变换为le-2-i,故此处填m=m+(n*(le-2-i)*a。当字符c是“+”、“-”、“=”时,则
20、表明第一个运算数已全部保存到变量s1中,此处需要将其转化为十进制保存到变量t中,故填t=convert(s1)。1110B转化为十进制数是14D,30H转化为十进制数是48D,故1110B+10D-30H=-24D。18n0:5 s=0 total=s-s/x*y 【详解】本题主要考查Python程序的执行与调试。此处通过条件分支结构取字符串n的前5个字符,当len(n)=5时,取n= n0:5,即索引为0、1、2、3、4,故填n0:5。用变量s统计消费合计,初值为0,故填s=0。此处else部分处理1000元以下享受每满100减15优惠。应付金额用total统计,变量r保存消费额度,x和y分
21、别是满和减,变量s是消费合计,故填total=s-s/x*y。19A C 【详解】本题主要考查Python程序设计。此处将n取余2,用append函数将值追加到列表result中,故此处填n%2,选A选项。当n大于0时,n整除2继续循环,循环结束使用reverse函数,将result列表中的元素逆转,故此处填n/2,选C选项。20c=0for i in range(1,101): if i%2=0: c=c+1print(c)【详解】本题主要考查程序设计。题干要求可通过Python程序设计实现,通过for循环以及if判断条件可统计出100以内的偶数个数,具体代码如下:c=0for i in range(1,101): if i%2=0: c=c+1print(c)21整除 取余 判断是否相等 百 十 个 1000 【详解】本题考查的是python语言及对程序实现的理解。(1)/的符号作用是取整除,返回商的整数部分(向下取整)。(2)%的符号作用是取模,返回除法的余数。(3)等于,比较符号两边对象是否相等。(4)(5)(6)i=n/100,j=n/10%10,k=n%10,分别利用取整和取余符号,算出三位数对应的每一位上的数字。(7)range()函数的区间是左闭右开,所以第二个参数1000是取不到的。