admin 管理员组

文章数量: 887021


2024年1月10日发(作者:mousemove是什么按键)

试卷python软件编程等级考试(三级)编程实操题01word练习

一、选择题

1.下面选项中对Python的转义字符描述错误的是(

A.r

回车

A.python

A.a/b

A.Access

A.2.4

A.5

B.n

换行

B.VC

B.ab

B..Excel

B.3

B.1

C.

反斜杠符号

C.JAVA

C.a+b

C.python

C.4

C.6

D.”

单引号

D.汇编语言

D.a-b

D.SQL

D.-2.4

D.11

2.下列语言中(

)不属于高级语言

3.下列选项中,可以作为 Python程序变量名的是(

4.数据分析的处理工具错误的(

5.在Python中,Print(abs(-16//5))的执行结果是(

6.在Python中print(8+7%2**2)的执行结果是(

7.下列关于算法说法不正确的是(

A.算法独立于任何具体的语言,Python算法只能用Python语言来实现

B.解决问题的过程就是实现算法的过程

C.算法是程序设计的“灵魂”

D.算法可以通过编程来实现

8.关于Python3.8基础知识的说法中,不正确的是(

A.支持中文做标识符

B.Python标识符不区分字母的大小写

C.Python命令提示符是>>>

D.命令中用到的标点符号只能是英文字符

9.下列选项中,合法的Python变量名是(

A.print

A.abs(x)

A.return

B.speed

B.float(x)

B.def

C.

C.print(x)

C.function

D.a#2

D.input(x)

D.import

10.在Python中,显示出信息x,并要求输入数据的是(

)。

11.在Python语言中,用来定义函数的关键字是(

)。

12.运行Python程序的过程中出现了如下图错误提示,原因是()。

A.变量名51study太长

B.应该写成"chinese" =51study

C.“chinese”应该写成“chinaˈs”

D.变量名51study不符合python语言规范,变量名不能以数字开头

13.在Python中,已知a=3,b=5,运行下列程序段后,a和b的值为

a = a * b

b = a // b

a = a // b

A.a=3 b=5

A.2**3//3+8%2*3

a=6

If a>=0:

b=a+2

Else:

b=a-2

print(b)

A.6 B.8 C.10

B.int(4.99)

D.max([1,2,3,4])

D.12

16.以下Python表达式中,哪项的值与其它三项不同(

A.len(“my name is james”.split())

C.sum([1,2,1,1])

17.有如下python程序段:

a="Doing is better than saying ."

print(r"n"+a[ :15])

该程序运行后,输出的结果是(

A.直接输出:' nDoing is better '

B.直接输出:nDoing is better th

C.直接输出:nDoing is better

D.先换行,然后在新的一行中输出:Doing is better

18.小明想要通过编程来解决由昆明到景东锦屏耗时最短行程问题时,最核心的工作是(

A.设计出解决问题的算法

C.编写出Python代码

B.设计出解决问题的PPT

D.选择一种编程软件

B.a=15 b=3

B.5**2%3+7%2**2

C.a=5 b=5

C.1314//100%10

D.a=5 b=3

D.int("1"+"5")//3

14.下列python表达式结果最小的是( )

15.在Python中运行后,b的值是

19.小林同学想要利用Python来编写一道程序,解决“1+2+3+……+100”这个问题,那么小林同学在编写程序的过程中可能会用到哪些语句(

A.赋值语句

B.循环语句

C.条件语句

D.输出语句

20.关于Python的内存管理,下列说法错误的是(

A.变量不必事先声明

C.变量无须制定类型

B.变量无需先创建和赋值就可直接使用

D.可以使用del释放资源

21.在Python中运行下列程序,输出结果为(

for i in range (1,5):

print(i)

A.1,2,3,4,5 B.1 2 3 4 5 C.0,1,2,3,4 D.1 2 3 4

22.Python

定义私有变量的方法为。(

A.使用 __private

关键字

B.使用 public

关键字

C.使用DEF定义变量名

D.使用 __XX

定义变量名

23.在Python中,input()函数的返回结果的数据类型为(

A.Number型

A=input()

print(A * 5)

通过键盘输入5,则运算结果是()

A.5 5 5 5 5

输出结果是(

)。

A.5

A.input( )函数

C.output( )函数

27.Python语言属于( )。

A.机器语言 B.汇编语言 C.高级语言 D.科学计算语言

28.关于python发布代码及安装使用代码,下列说法错误的是()

A.创建一个文件夹mymodule,其中包含和(包含发布的元数据)两个文件

B.在DOS命令行中打开mymodule所在的目录,使用“python sdist”命令构建发布文件

C.已经构建发布的模块必须先导入程序,然后才能使用。导入时只能使用语句“import

mymodule”,不可以用“from mymodule import *”

D.下载安装,使用“python install”命令安装到你的Python本地副本中

29.python中表达式4**3=( )。

A.12

A.char

B.1

B.float

C.64

C.int

D.7

D.list

30.下列不被python所支持的数据类型是(

B.3 C.8

B.print( )函数

D.abs( )函数

D.其他

26.在Python语言中,数据的输入是通过( )来实现的。

B.25 C.5*5 D.5 5

25.Python程序中第一行:a=int(input( )),第二行:print(a+5),运行程序后键盘输入3,B.String型 C.List型 D.Sets型

24.在python中,有程序如下

二、程序填空

31.使用Python自身提供的IDLE集成开发环境录入以下代码及调试

运行,检测结果。

#

鸡兔同笼

for x in range(1,23):

y=35-x

if 4*x+2*y==94:

print("兔子有%s只,鸡有%s只"%(x,y))

特别提示:代码录入完毕,调试运行,检测错误,讨论错误原因,上网查找错误格式的处置办法,直至能正确输出结果。

32.设计完成算法之后,小C打算用所学的Python程序设计语言完成程序的编写。

(1)Python程序设计语言属于程序设计语言中的_______________。

A.机器语言 B.汇编语言 C.高级语言 D.翻译程序

(2)小C将设计好的算法转为Python程序语言(如下)。其中“Tot2=8”是一个___________,“#初始化时长费为0”是一个__________,“S<=3.3”是一个___________,“float(input(“请输入时长”))”是一个__________。

A.函数 B.表达式 C.赋值语句 D.注释语句

1 Tot1=0 #初始化时长费为0

2 Tot2=0 #初始化里程费为0

3 S=float(input(“请输入里程数”))

4 T=float(input(“请输入时长”)) #输入里程数和时长

5 if(T>9): #计算时长费用

6 Tot1=(T-9)*0.2

7 if(S<=3.3): #算里程费用

8 Tot2-8

9 else:

10 Tot2=8+(S-3.3)*1.35

11 Cost-Totl+tot2

12 print(Cost) #输出总车费

(3)小C写好代码之后,编译运行发现报错了,根据下图中所示的错误信息分析该程序报错的原因是:____________________________________________________________________________________________。

NameError Traceback(most recent call last)

in

9else:

10

—→11 Cost=Tot1+tot2

12

NameError:name’tot2’is not defined

(4)经过修改之后,小C对照某次滴滴打车的订单,将对应的公里数和时长输入程序,运行得到的结果与实际支付的费用一致,小C会心一笑验证得知程序正确无误。小C借助于

计算机编写程序解决问题的这个过程是:①设计算法②编写程序③分析问题④调试运行程序,合理的顺序是_________。(填写序号即可)

(5)总结用计算机解决问题的优势主要有:_______________________________________________。

33.若两个素数之差为 2,则该对素数称为双胞胎数,如 3,5

就是一对双胞胎数。编写

python

程序,实现如下功能:输入 n

的值,统计显示 n

以内的所有双胞胎数。程序运行界面如图所示:

实现上述功能的程序如下,请在划线处填入合适的代码。

import math

def isprime(x):

______

for i in range(2,int((x))+1):

if x % i = = 0 :

f=False

return f

n=int(input("请输入一个正整数 n:"))

c=0

k=3

while k < = n-2:

if isprime( k ) and______________ :

c + = 1

print("第"+ str( c ) +"对双胞胎数:", k ,'和',k+2)

_______

print("共有"+str(c)+"对双胞胎数")

划线处①处应该填入的语句为:

划线处②处应该填入的语句为:

划线处③处应该填入的语句为:

34.密码强度检测。编写python程序,实现如下功能:输入要检测的密码,输出密码强度结果。密码字符分为数字字符、字母和其他符号三类。密码强度的检测方法为:若密码位数少于8位,则不进行强度检测,给出提示“密码位数不能少于8位,请重新输入!”。

若密码位数在8位及以上,则进行强度检测:若密码字符属于同一类字符,则密码强度为“弱”;若密码字符属于不同的二类字符,则密码强度为“中等”;若密码字符属于不同的三类字符,则密码强度为“强”。

(1)若输入“12abcd5!”,则输出结果为_________(选填,选字母:A.密码位数不能少于8位,请重新输入! / B.弱 / C.中等 / D.强)

(2)实现上述功能的程序如下,请在划线处填入合适的代码。

password=input(“请输入要检测的密码:”)

①_______________

if n<8:

print(“密码位数不能少于8位,请重新输入!”)

else:

n1=0

n2=0

n3=0

for i in range(0,n,1):

②_______

if

“0”<=ch<=“9”:

n1=1

elif

“a”<=ch<=“z” or

“A”<=ch<=“Z”:

n2=1

else:

n3=1

③_____

if x==3:

print(“强”)

elif x==2:

print(“中等”)

else:

print(“弱”)

35.求100以内素数。

36.求水仙花数(一个三位数,其各位数字立方和等于该数字本身)

37.阅读程序。

for i in range(1,10):

for j in range(1,i+1):

print("%d X %d=%2d"%(j,i,j*i),end=" ")

print()

(1)在第一行程序中,变量i的数据范围为_____到____。

(2)在第二行的程序中,变量j的数据范围为_____到____。

(3)如果“%d”表示十进制数,那么%2d则表示____

位宽的十进制数。

(4)第三行程序改为print("%d X %d=%2d"%(i,j,i*j),end=" "),则本题的输出应该是_____。

(5)如果最后一行的print()表示换行,那么end=””的功能是_______

38.阅读程序。分析下列切片相关程序并回答问题。

list2=[5,6,7,8,9]

print(list2[:])

print(list2[2:])

print(list2[:2])

print(list2[1:3])

print(list2[2:4])

(1)程序第一个print的输出结果是______________。

(2)程序第二个print的输出结果是______________。

(3)程序第三个print的输出结果是______________。

(4)程序第四个print的输出结果是______________。

(5)程序第五个print的输出结果是______________。

39.冠军在A、B、C、D四位同学中。A说:“不是我”,B说:“是C”,C说:“是D”, D说:“C说的不对”,已知四人中有一人说了假话。判断出到底谁是冠军。

请在空格处填写正确的代码,使程序完善。

champion=['A','B','C','D'] #设置选手列表

for i in__________: #循环读取选手编号

cond=(i!='A') +(i=='C') + (i=='D')+(i!='D') #查找符合条件的选手

if cond== _____: #说真话是否是3人

print("冠军是:",_________) #输出冠军

input("运行完毕,请按回车键退出...")

40.请在空格处填写正确的代码,使程序完善。

实现功能:用辗转相除法求解两个正整数的最大公约数。

x = int(input('请输入第一个正整数:'))

y = int(input('请输入第二个正整数:'))

m = max(x,y) #找出x,y中的最大值

n = min(x,y) #找出x,y中的最小值

r = m%n #求得最大值除以最小值后的余数

while r!=0: #如果余数不等0,则进行以下循环

m =________ #把最小值赋给m

n =_________ #把余数赋给n

r = m%n #求得最大值除以最小值后的余数

print('这两个数的最大公约数为:',______)

input("运行完毕,请按任意键退出....")

【参考答案】***试卷处理标记,请不要删除

一、选择题

1.D

【详解】

本题主要考查Python转义字符。r 回车,n 换行, 反斜杠符号,”

双引号,故本题选D选项。

解析:D

【详解】

本题主要考查Python转义字符。r

回车,n

换行,

反斜杠符号,”

双引号,故本题选D选项。

2.D

【详解】

本题主要考查程序设计语言。python、VC、JAVA均属于高级语言,汇编语言属于低级语言,故本题选D选项。

解析:D

【详解】

本题主要考查程序设计语言。python、VC、JAVA均属于高级语言,汇编语言属于低级语言,故本题选D选项。

3.B

【详解】

本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开

头,不能包含特殊符号,不能是关键字。故ab可以作为 Python程序变量名,故本题选B选项。

解析:B

【详解】

本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。故ab可以作为 Python程序变量名,故本题选B选项。

4.C

【详解】

本题主要考查数据分析知识点。Access(数据库)、Excel(表格处理软件)、SQL(用于访问和处理数据库的标准的计算机语言)均是数据分析处理工具,Python是程序设计软件,故本题

解析:C

【详解】

本题主要考查数据分析知识点。Access(数据库)、Excel(表格处理软件)、SQL(用于访问和处理数据库的标准的计算机语言)均是数据分析处理工具,Python是程序设计软件,故本题选C选项。

5.C

【详解】

本题主要考查Python表达式的运算。“//”是向下取整,abs是求绝对值函数,-16//5=-4,abs(-16//5)=4,故执行结果是4,故本题选C选项。

解析:C

【详解】

本题主要考查Python表达式的运算。“//”是向下取整,abs是求绝对值函数,-16//5=-4,abs(-16//5)=4,故执行结果是4,故本题选C选项。

6.D

【详解】

本题考查的是Python表达式。**是幂次方优先级最高,%是求余。8+7%2**2=8+7%4=8+3=11,print是输出语句。故选项D正确。

解析:D

【详解】

本题考查的是Python表达式。**是幂次方优先级最高,%是求余。8+7%2**2=8+7%4=8+3=11,print是输出语句。故选项D正确。

7.A

【详解】

本题考查的是算法相关知识。所谓“算法”就是解题方法的精确描述,由有限个步骤组成。算法独立于任何具体的语言,但Python算法也可以用其他语言来实

现,故选项A错误;解决问题的过程就是实现

解析:A

【详解】

本题考查的是算法相关知识。所谓“算法”就是解题方法的精确描述,由有限个步骤组成。算法独立于任何具体的语言,但Python算法也可以用其他语言来实现,故选项A错误;解决问题的过程就是实现算法的过程。算法可以通过编程来实现。算法是程序设计的核心,即是程序设计的“灵魂”。故应选A。

8.B

【详解】

本题主要考查Python语法。Python3.8支持中文做标识符,Python标识符区分字母的大小写,Python命令提示符是>>>,命令中用到的标点符号只能是英文字符,故本题选B选项

解析:B

【详解】

本题主要考查Python语法。Python3.8支持中文做标识符,Python标识符区分字母的大小写,Python命令提示符是>>>,命令中用到的标点符号只能是英文字符,故本题选B选项。

9.B

【详解】

本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故合法的Python变量名是speed,故本题选B选项。

解析:B

【详解】

本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故合法的Python变量名是speed,故本题选B选项。

10.D

【详解】

本题主要考查Python常用函数。abs(x)是返回x的绝对值,float()

函数用于将整数和字符串转换成浮点数,print()是输出函数,input()是输入函数,故本题选D选项。

解析:D

【详解】

本题主要考查Python常用函数。abs(x)是返回x的绝对值,float()

函数用于将整数和字符串转换成浮点数,print()是输出函数,input()是输入函数,故本题选D选项。

11.B

【详解】

本题主要考查Python关键字。return [表达式]结束函数,选择性地返回一个值给调用方;def用来定义函数;import用来导入模块,故本题选B选项。

解析:B

【详解】

本题主要考查Python关键字。return [表达式]结束函数,选择性地返回一个值给调用方;def用来定义函数;import用来导入模块,故本题选B选项。

12.D

【详解】

本题考查的是程序调试。报错内容是“语法错误:无效语法”,变量名51study,数字不能作为变量名的开头,故D项正确。

解析:D

【详解】

本题考查的是程序调试。报错内容是“语法错误:无效语法”,变量名51study,数字不能作为变量名的开头,故D项正确。

13.D

【详解】

本题主要考查Python表达式的运行。a=3,b=5,a = a * b=15,b = a //

b=15//5=3,a = a // b=15//3=5,故运行下列程序段后,a和b的

解析:D

【详解】

本题主要考查Python表达式的运行。a=3,b=5,a = a * b=15,b = a // b=15//5=3,a = a //

b=15//3=5,故运行下列程序段后,a和b的值为a=5 b=3,故本题选D选项。

14.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=

解析: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选项。

15.B

【详解】

本题主要考查Python程序的执行。a=6,满足a>=0,执行b=a+2=8,故在Python中运行后,b的值是8,故本题选B选项。

解析:B

【详解】

本题主要考查Python程序的执行。a=6,满足a>=0,执行b=a+2=8,故在Python中运行后,b的值是8,故本题选B选项。

16.C

【详解】

本题考查的是Python函数。split()

通过指定分隔符对字符串进行切片,无参数即分隔所有,len()

方法返回对象(字符、列表、元组等)长度或项目个数,故len(“my name

解析:C

【详解】

本题考查的是Python函数。split()

通过指定分隔符对字符串进行切片,无参数即分隔所有,len()

方法返回对象(字符、列表、元组等)长度或项目个数,故len(“my name is

james”.split())=4;int

函数可以将数字转换为整数,直接取整,不会四舍五入

,int(4.99)=4;sum()

方法对系列进行求和计算,sum([1,2,1,1])=5;max()

方法返回给定参数的最大值,参数可以为序列,max([1,2,3,4])=4。故应选C。

17.C

【详解】

本题主要考查Python程序运行。r

标识

后面的字符不转义,a[ :15]表示从a的右边往左第15位到最左边全部输出,故该程序运行后,输出的结果是直接输出:nDoing is

解析:C

【详解】

本题主要考查Python程序运行。r

标识

后面的字符不转义,a[ :15]表示从a的右边往左第15位到最左边全部输出,故该程序运行后,输出的结果是直接输出:nDoing is better,故本题选C选项。

18.A

【详解】

本题考查的是计算机解决问题。计算机解决问题的步骤:分析问题、设计算法、编写程序、调试运行、检测结果,其中最核心的步骤是设计算法。故本题应选A。

解析:A

【详解】

本题考查的是计算机解决问题。计算机解决问题的步骤:分析问题、设计算法、编写程序、调试运行、检测结果,其中最核心的步骤是设计算法。故本题应选A。

19.ABD

【详解】

本题考查Python语句。

初始值会涉及到赋值语句、从1加到100会用到循环语句、最后会输出结果用到输出语句。故本题选ABD

解析:ABD

【详解】

本题考查Python语句。

初始值会涉及到赋值语句、从1加到100会用到循环语句、最后会输出结果用到输出语句。故本题选ABD

20.B

【详解】

本题主要考查Python的变量。变量需要先创建和初始化,才可以使用,故本题选B选项。

解析:B

【详解】

本题主要考查Python的变量。变量需要先创建和初始化,才可以使用,故本题选B选项。

21.D

【详解】

本题考查Python程序执行

range(1, 5)表示1到4的值,注意不包括5。故本题选D选项

解析:D

【详解】

本题考查Python程序执行

range(1, 5)表示1到4的值,注意不包括5。故本题选D选项

22.D

【详解】

本题主要考查Python变量的定义。Python 定义私有变量的方法为使用 __XX

定义变量名,故本题选D选项。

解析:D

【详解】

本题主要考查Python变量的定义。Python

定义私有变量的方法为使用 __XX

定义变量名,故本题选D选项。

23.B

【详解】

本题主要考查Python输入函数。在Python中,input()函数的返回结果的数据类型为字符串String型,故本题选B选项。

解析:B

【详解】

本题主要考查Python输入函数。在Python中,input()函数的返回结果的数据类型为字

符串String型,故本题选B选项。

24.A

【详解】

本题考查Python算法及其程序实现。

input()函数接收的是字符串,故print(A * 5)时,输出5个A里存储的字符串。通过键盘输入5,则运算结果是:5 5 5 5 5,选项

解析:A

【详解】

本题考查Python算法及其程序实现。

input()函数接收的是字符串,故print(A * 5)时,输出5个A里存储的字符串。通过键盘输入5,则运算结果是:5 5 5 5 5,选项A正确。

25.C

【详解】

本题主要考查Python语句执行。运行程序后键盘输入3,即a=3,执行print(a+5)后,输出结果是8,故本题选C选项。

解析:C

【详解】

本题主要考查Python语句执行。运行程序后键盘输入3,即a=3,执行print(a+5)后,输出结果是8,故本题选C选项。

26.A

【详解】

本题考查的是Python函数。input( )是输入函数,print( )是输出函数,abs( )是绝对值函数。故选项A正确。

解析:A

【详解】

本题考查的是Python函数。input( )是输入函数,print( )是输出函数,abs( )是绝对值函数。故选项A正确。

27.C

【详解】

本题考查Python语言相关知识点

Python是一种高级语言,所以不是机器语言、汇编语言、科学计算语言。故本题选C选项

解析:C

【详解】

本题考查Python语言相关知识点

Python是一种高级语言,所以不是机器语言、汇编语言、科学计算语言。故本题选C选项

28.C

【详解】

本题主要考查Python代码发布。创建一个文件夹mymodule,其中包含和(包含发布的元数据)两个文件;在DOS命令行中打开mymodule所在

解析:C

【详解】

本题主要考查Python代码发布。创建一个文件夹mymodule,其中包含和(包含发布的元数据)两个文件;在DOS命令行中打开mymodule所在的目录,使用“python sdist”命令构建发布文件;已经构建发布的模块必须先导入程序,然后才能使用。导入时可以使用语句“import mymodule”,也可以用“from mymodule import

*”;下载安装,使用“python install”命令安装到你的Python本地副本中,故本题选C选项。

29.C

【详解】

本题考查的是python中表达式相关知识。在 Python算数运算中,*代表乘法,**代表乘方,故4**3=4*4*4=64,故选项C正确。

解析:C

【详解】

本题考查的是python中表达式相关知识。在 Python算数运算中,*代表乘法,**代表乘方,故4**3=4*4*4=64,故选项C正确。

30.A

【详解】

本题主要考查Python数据类型。Python没有char类型,一个字符也是字符串,故本题选A选项。

解析:A

【详解】

本题主要考查Python数据类型。Python没有char类型,一个字符也是字符串,故本题选A选项。

二、程序填空

31.错误1:兔子4只腿,最多只能是23只,而 range(1,23)只取到22,没取到23,故应改为: range(1,24)

错误2:缩进错误,y=35-x、if 4*x+2*y==94:是for语句中的语句块,应缩进。print("兔子有%s只,鸡有%s只"%(x,y))是if语句中的语句块,应缩进。

【详解】

本题考查的是Python调试。本题程序错误如下:

错误1:兔子4只腿,最多只能是23只,而 range(1,23)只取到22,没取到23,故应改为: range(1,24)

错误2:缩进错误,y=35-x、if 4*x+2*y==94:是for语句中的语句块,应缩进。print("兔子有%s只,鸡有%s只"%(x,y))是if语句中的语句块,应缩进。

调试完最终输出:兔子有12只,鸡有23只。

32.C.高级语言 C.赋值语句 D.注释语句 B.表达式 A.函数 Python程序设计语言规定,在标识符中,字母大小写是有区别的。该程序代码中表示里程费的Tot2错误将字母“T”写成了小写”“t”。

合理的顺序是:③分析问题①设计算法②编写程序④调试运行程序

【详解】

本题主要考查Python程序的编写。①Python程序设计语言属于程序设计语言中的高级语言,选C选项。②“Tot2=8”是一个赋值语句,选C选项。③“#初始化时长费为0”是一个注释语句,选D选项。④“S<=3.3”是一个表达式,选B选项。⑤“float(input(“请输入时长”))”是一个函数,float()

函数用于将整数和字符串转换成浮点数,选A选项。⑥编译运行发现报错了,根据下图中所示的错误信息分析该程序报错的原因是:Python程序设计语言规定,在标识符中,字母大小写是有区别的。该程序代码中表示里程费的Tot2错误将字母“T”写成了小写”“t”。⑦小C借助于计算机编写程序解决问题的这个过程,合理的顺序是:③分析问题①设计算法②编写程序④调试运行程序。⑧略

33.f = True

isprime(k+2)

k=k+1 或 k+=1 或 k=k+2 或 k+=2

【详解】

本题主要考查Python程序的执行与调试。①isprime(x)用来判断x是不是素数,通过用x整除2~int((x)),如果余数为0则表明该数不是素数,赋值f为假退出循环,f的初值为True,故第一空填f = True。②若两个素数之差为 2,则该对素数称为双胞胎数,此处判断相差为2的两个数是不是素数,故第二空填isprime(k+2)。③素数都是奇数,此处需要更新k的值继续循环判断,可以将k的值递增1或递增2,故填k=k+1 或 k+=1 或

k=k+2 或 k+=2。

34.D n=len(password) ch=password[i] x=n1+n2+n3

【详解】

本题主要考查Python程序的执行与调试。①“12abcd5!”含有三类字符,则输出结果为强,选D选项。②此处取密码的长度,将其赋给变量n,len()是返回字符串的长度,故填n=len(password)。③ch是取密码的每一位进行判断,故此处填ch=password[i]。④当出现数字时n1=1,当出现字母时n2=1,当出现其他字符时n3=1,x用来统计有几类字符,故此处填x=n1+n2+n3。

35.for i in range(1,100):

if i > 1:

for j in range(2,i):

if (i % j) == 0:

break

else:

print(i)

【详解】

本题主要考查Python程序设计。可以通过for循环找出100以内的素数,用i依次整数2~i-1,如果能整除表明i不是素数,否则i为质数,具体代码如下:

for i in range(1,100):

if i > 1:

for j in range(2,i):

if (i % j) == 0:

break

else:

print(i)

36.for i in range(100,1000):

a=i//100

b= (i//10)%10

c=i%10

if i==a*a*a+b*b*b+c*c*c:

print(i)

【详解】

本题主要考查程序设计。可通过Python程序设计实现题干要求,通过for循环找出水仙花数,依次取出三位数的每一位数,其中百位a= i//100,十位b= (i//10)%10,个位c=i%10,然后判断是否是水仙花数,具体代码如下:

for i in range(100,1000):

a=i//100

b= (i//10)%10

c=i%10

if i==a*a*a+b*b*b+c*c*c:

print(i)

37.9 1 i 2

末尾不换行,添加空格

【详解】

本题主要考查Python程序的执行与调试。(1)在第一行程序中(for i in range(1,10):),变量i的数据范围为1到9。(2)同理,在第二行的程序中(for j in range(1,i+1):),变量j的数据范围为1到i。(3)如果“%d”表示十进制数,那么%nd则表示n位宽的十进制

数,%2d则表示2位宽的十进制数。(4)第三行程序改为print("%d

X %d=%2d"%(i,j,i*j),end=" "),则本题的输出应该是

,i与j的位置进行了交换,如1X2=2变为2X1=2。(5)如果最后一行的print()表示换行,那么end=””的功能是末尾不换行,添加空格。

38.[5,6,7,8,9] [7,8,9] [5,6] [6,7] [7,8]

【详解】

本题主要考查Python列表截取。Python列表的正向索引下标是从零开始,不是1;当只有冒号,表示全部元素;只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后);只有冒号尾下标i(代表的是从开始一直截取到i-1的元素);头下标i,冒号和尾下标j都有(代表的是从i一直截取到j-1的元素),因此①[5,6,7,8,9]②[7,8,9]③[5,6]④[6,7]⑤[7,8]。

【点睛】

39.champion

3

i

【详解】

本题主要考查Python程序的执行。①champion是选手编号列表,此处是循环读取选手编号,使用for i in champion,故此处填champion。②四人中有一人说了假话,即3个人说真话,即当cond=3时,则表示找到了谁是冠军,故此处填3。③当cond是3时,i即为冠军,故此处填i。

40.n

r

n

【详解】

本题考查的是Python循环语句。辗转相除法:用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。

由n = min(x,y)

可知最小值为n,故①处为n,由r = m%n

可知余数为r,故②处为r,最后的除数是n(即最大公约数为n),故③处为n。


本文标签: 本题 考查 程序 语句 算法