电子学会python二级官方模拟试题word.docx

上传人:b****6 文档编号:4401702 上传时间:2022-12-01 格式:DOCX 页数:12 大小:135.11KB
下载 相关 举报
电子学会python二级官方模拟试题word.docx_第1页
第1页 / 共12页
电子学会python二级官方模拟试题word.docx_第2页
第2页 / 共12页
电子学会python二级官方模拟试题word.docx_第3页
第3页 / 共12页
电子学会python二级官方模拟试题word.docx_第4页
第4页 / 共12页
电子学会python二级官方模拟试题word.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

电子学会python二级官方模拟试题word.docx

《电子学会python二级官方模拟试题word.docx》由会员分享,可在线阅读,更多相关《电子学会python二级官方模拟试题word.docx(12页珍藏版)》请在冰豆网上搜索。

电子学会python二级官方模拟试题word.docx

电子学会python二级官方模拟试题word

电子学会python二级官方模拟试题word

一、选择题

1.已知字符串a="python",则a[1]的值为()

A."p"B."py"C."Py"D."y"

2.在Python中,不同的数据,需要定义不同的数据类型,可用方括号“[]”来定义的是()

A.列表B.元组C.集合D.字典

3.Python表达式a=b中“=”表示()

A.交换“=”左右两边变量的值

B.把“=”右边变量的值赋值给左边变量

C.把“=”左边变量的值赋值给右边变量

D.比较“=”左右两边变量的值是否相等

4.有如下python程序段

n=int(input("请输入n值:

"))

x=n;y=0

ifx>0:

y=y+1

elifx<0:

y=y-1

print(y)

执行上述语句,下列说法不正确的是()

A.若输入-1,则输出y值为-1B.若输入0,则输出y值为-1

C.若输入1,则输出y值为1D.若输入2,则输出y值为1

5.王明编写了Python程序,根据输入的体重和身高计算BM值并显示是否超标。

王明体重80kg,身高170cm。

其中“体重80kg”“身高170cm”是对王明体重身高的符号记录属于()

A.数据B.信息C.知识D.智慧

6.运行下列Python程序,结果正确的是()

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="")

A.cdfghaB.cdfghbC.cdfghijD.cdfghc

7.有如下python程序段:

a="Doingisbetterthansaying."

print(r"\n"+a[:

15])

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

A.直接输出:

'\nDoingisbetter'

B.直接输出:

\nDoingisbetterth

C.直接输出:

\nDoingisbetter

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

Doingisbetter

8.如图Python代码执行后,a,b的值分别为:

()

A.5,10B.10,5C.5,5D.10,10

9.有如下Python程序,当程序运行后输入15000,则程序输出结果为()

A.2800B.2800.0C.12200D.12200.0

10.python用来表示代码块所属关系(控制层级结构的)的语法符号是()

A.圆括号B.大括号C.缩进D.冒号

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

A.printB.speedC.PD.a#2

12.下列哪个语句在Python中是非法的?

(  )

A.x=y=z=1B.x=(y=z+1)

C.x,y=y,xD.x += y

13.下列Python语句中,会导致程序运行出错的语句是()

A.x=(y=1)B.x,y=y,xC.x=1;y=1D.x=y=1

14.以下Python程序运行后的输出结果为()

A.0B.45C.46D.362880

15.下列Python程序段运行的结果是()

f=[‘A’,’B’,’C’]

a=len(f)

print(‘a=’,a)

A.a=2B.a=’A’C.a=’C’D.a=3

二、程序填空

16.(项目情境)水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:

1**3+5**3+3**3=153。

这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。

(问题求解)设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。

需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。

请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。

print("三位数之内的水仙花是:

")

forxin_____:

b=x//100

s=_____

g=_____

ifx==(b**3+s**3+g**3):

_____

17.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。

为求解规模为N的问题,设法将它分解成规模较小的问题,从小问题的解容易构造出大问题的解,并且这些规模问题较小的问题也能采用同样的分解方法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。

一般情况下,规模N=1时,问题的解是已知的。

已知:

从1到n的连续自然数相乘的积、叫做阶乘、用符号n!

表示。

如5!

=1×2×3×4×5,规定0!

=1。

我们用递归算法可以较容易求n的阶乘。

求n的阶乘算法可以描述如下:

n!

=n*(n-1)!

(n-1)!

=(n-1)*(n-2)!

(n-2)!

=(n-2)*(n-3)!

2!

=2*1!

1!

=0!

0!

=1

如果把n!

写成函数形式,即f(n),f(n)=n*f(n-1)。

如f(5)就是表示5!

,求5!

的过程可以写成如下形式:

f(5)=5*f(4)f(4)=4*f(3)f(3)=3*f

(2)f

(2)=2*f

(1)f

(1)=1

(问题求解)在python中用递归算法求1!

+2!

+……+n!

(n的值为整数,从键盘输入)。

请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。

deff(n):

ifn==0:

return1

else:

return_________

s=0

n=int(input("请输入n:

"))

foriin_______:

s=________

print(s)

18.地球绕太阳的运行周期为365天5小时48分46秒(合365.24219天),即一回归年。

公历的平年只有365天,比回归年短约0.2422天,每四年累积约一天,把这一天加于2月末(即2月29日),使当年的时间长度变为366天,这一年就是闰年。

判断某一年是否是闰年的方法是年份数能被4整除,但不能被100整除,或者年份数能被400整除。

以下是一段用于判断某一年是否是闰年的程序。

请将上面程序框中空格处的内容填写完整,其中①处填写代码注释

_________________________________________

19.(最大公约数)用辗转相除法求两个正整数的最大公约数。

代码如下:

defgcd(m,n):

r=

whiler!

=0:

m=n

n=

return

a=int(input(‘请输入a的值:

’))

b=int(input(‘请输入b的值:

’))

print(‘最大公约数是:

')

填空:

________________________________________

20.请编写一个密码登陆系统,接收用户从键盘输入的密码和你自己的密码进行比对,如果正确就显示“恭喜你进入系统”如果不正确让用户重新输入,有三次机会。

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

实现功能:

绘制y=x2-2x+1的图像

#加载numpy模块并限简洁的别名为np

importnumpyasnp

#加载matplotlib.pyplot模块并限简洁的别名为plt

importmatplotlib.pyplotasplt

#x在-7到9之间,每隔0.1取一个点

x=np.arange(-7,9,0.1)

_____=x**2-2*x+1

plt.plot(x,________)

plt.title('y=x*x-2*x+1')

plt.xlabel('x')

plt.ylabel('y')

plt._________

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

 

一、选择题

1.D

【详解】

本题主要考查Python字符串。

字符串索引从0开始,a[0]="p",a[1]="y",故本题选D选项。

解析:

D

【详解】

本题主要考查Python字符串。

字符串索引从0开始,a[0]="p",a[1]="y",故本题选D选项。

2.A

【详解】

本题主要考查Python数据类型。

列表用方括号“[]”来定义,元组可以用圆括号“()”来定义,集合可以用大括号“{}”来定义,字典用大括号“{}”来定义,故本题选A选项。

解析:

A

【详解】

本题主要考查Python数据类型。

列表用方括号“[]”来定义,元组可以用圆括号“()”来定义,集合可以用大括号“{}”来定义,字典用大括号“{}”来定义,故本题选A选项。

3.B

【详解】

本题主要考查Python赋值语句。

Python表达式a=b中“=”表示把“=”右边变量的值赋值给左边变量,故本题选B选项。

解析:

B

【详解】

本题主要考查Python赋值语句。

Python表达式a=b中“=”表示把“=”右边变量的值赋值给左边变量,故本题选B选项。

4.B

【详解】

本题主要考查Python程序执行。

分析程序可知,当x>0,执行y=y+1;当x<0,执行y=y-1;若输入0,则不满足if条件结构跳过,输出y值为0,故本题选B选项。

解析:

B

【详解】

本题主要考查Python程序执行。

分析程序可知,当x>0,执行y=y+1;当x<0,执行y=y-1;若输入0,则不满足if条件结构跳过,输出y值为0,故本题选B选项。

5.A

【详解】

本题考查的是数据的定义。

数据是客观事物的符号记录,是信息的载体,是计算机加工的对象。

“体重80kg”、“身高170cm”是对王明体重身高的符号记录属于数据。

故本题应选A。

解析:

A

【详解】

本题考查的是数据的定义。

数据是客观事物的符号记录,是信息的载体,是计算机加工的对象。

“体重80kg”、“身高170cm”是对王明体重身高的符号记录属于数据。

故本题应选A。

6.C

【详解】

本题主要考查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选项。

7.C

【详解】

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

r标识\后面的字符不转义,a[:

15]表示从a的右边往左第15位到最左边全部输出,故该程序运行后,输出的结果是直接输出:

\nDoingis

解析:

C

【详解】

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

r标识\后面的字符不转义,a[:

15]表示从a的右边往左第15位到最左边全部输出,故该程序运行后,输出的结果是直接输出:

\nDoingisbetter,故本题选C选项。

8.B

【详解】

本题主要考查Python程序的执行。

a=5,b=10,c=a=5,a=b=10,b=c=5,故代码执行后,a,b的值分别为:

10和5,故本题选B选项。

解析:

B

【详解】

本题主要考查Python程序的执行。

a=5,b=10,c=a=5,a=b=10,b=c=5,故代码执行后,a,b的值分别为:

10和5,故本题选B选项。

9.D

【详解】

本题考查的是Python的选择嵌套语句。

先判断是否小于等于5000,接着在判断是否小于等于7000,最后判断是否小于等于10000。

15000不小于等于10000,故执行tax=800

解析:

D

【详解】

本题考查的是Python的选择嵌套语句。

先判断是否小于等于5000,接着在判断是否小于等于7000,最后判断是否小于等于10000。

15000不小于等于10000,故执行tax=800+(salary-1000)*0.4=800+(15000-10000)*0.4=800+2000=2800.0。

因为salary接收的是浮点型数据。

salary-tax=15000-2800.0=12200.0。

故选项D正确。

10.C

【详解】

本题主要考查Python语法。

python用来表示代码块所属关系(控制层级结构的)的语法符号是缩进,故本题选C选项。

解析:

C

【详解】

本题主要考查Python语法。

python用来表示代码块所属关系(控制层级结构的)的语法符号是缩进,故本题选C选项。

11.B

【详解】

本题主要考查Python变量的命名。

变量的命名规则有:

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

解析:

B

【详解】

本题主要考查Python变量的命名。

变量的命名规则有:

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

12.B

【详解】

本题主要考查Python赋值语句。

语句x=y=z=1,赋值x、y、z值均为1;语句x,y=y,x交换x、y的值;x+=y等价于x=x+y;语句x=(y=

解析:

B

【详解】

本题主要考查Python赋值语句。

语句x=y=z=1,赋值x、y、z值均为1;语句x,y=y,x交换x、y的值;x+=y等价于x=x+y;语句x=(y=z+1)是非法的,故本题选B选项。

13.A

【详解】

本题考查的是Python赋值语句。

赋值号“=”的左边是变量,右边是常量或表达式,选项A中y=1是赋值语句不是表示,故选项A会报错。

解析:

A

【详解】

本题考查的是Python赋值语句。

赋值号“=”的左边是变量,右边是常量或表达式,选项A中y=1是赋值语句不是表示,故选项A会报错。

14.A

【详解】

本题考查的是Python循环语句。

range(10)是[0,10)的整数。

故m=0*1*2*3*4*5*6*7*8*9=0,选项A正确。

解析:

A

【详解】

本题考查的是Python循环语句。

range(10)是[0,10)的整数。

故m=0*1*2*3*4*5*6*7*8*9=0,选项A正确。

15.D

【详解】

本题主要考查Python程序的执行。

a=len(f)=3,故print(‘a=’,a)的结果是a=3,故本题选D选项。

解析:

D

【详解】

本题主要考查Python程序的执行。

a=len(f)=3,故print(‘a=’,a)的结果是a=3,故本题选D选项。

二、程序填空

16.range(100,1000)x//10%10x%10print("三位数之内的水仙花是:

"+str(x))

【详解】

本题主要考查Python程序的执行与调试。

①水仙花数是指一个三位数,即[100,999],forxinrange(100,1000)表示x的范围是100-999,故此处填range(100,1000)。

②变量g、s、b分别存放个位、十位、百位上的数,故s=x//10%10(“//”表示整除,“%”表示取余)。

③g=x%10。

④如果满足x==(b**3+s**3+g**3),则输出“三位数之内的水仙花是:

x”,故此处填print("三位数之内的水仙花是:

"+str(x))。

17.n*f(n-1)range(1,n+1)s+f(i)

【详解】

本题主要考查Python程序的执行与调试。

①此处是定义递归函数f(n),由题干,当n=0时,返回1,否则返回n*f(n-1),故此处填n*f(n-1)。

②用递归算法求1!

+2!

+……+n!

,故变量i的范围应是1—n,foriinrange(1,n+1)表示i的范围是[1,n],故此处填range(1,n+1)。

③循环体实现累加,将每一项阶乘f(i)加到s中,故此处填s+f(i)。

18.将year转换为整型数据,并赋值给yearAndyear%100!

=0oryear

【详解】

本题主要考查Python程序设计。

①input接收的数据类型是字符串型,该语句表示将year转换为整型数据,并赋值给year。

判断某一年是否是闰年的方法是年份数能被4整除,但不能被100整除,或者年份数能被400整除,故第二、三、四空分别填②And③year%100!

=0④or⑤最后输出打印某一年是否是闰年,需要将year转换为字符型。

19.m%nrr=m%nngcd(a,b)

【详解】

本题主要考查Python程序设计。

①首先对m和n求余得到r,判断r是否为0,故此处填m%n。

②如果r为0则结束,否则更新m的值为n,n的值为r。

③此处用更新后的m和n继续求r,继续判断,故填r=m%n。

④循环结束后当r=0时,n即为最大公约数,故填n。

⑤输入a、b的值,使用函数gcd求a和b的最大公约数,故填gcd(a,b)。

20.pw=input("请输入密码:

")

password="123456"

i=1

while(i<=3):

ifpw==password:

print("恭喜你进入系统!

")

break

else:

print("请重新尝试:

",i)

pw=input("请输入密码:

")

i=i+1

【详解】

本题主要考查程序设计。

可以通过Python程序设计语言实现题干要求,可以通过while循环控制三次机会,使用if条件分支结构判断是否输入正确,具体代码如下:

pw=input("请输入密码:

")

password="123456"

i=1

while(i<=3):

ifpw==password:

print("恭喜你进入系统!

")

break

else:

print("请重新尝试:

",i)

pw=input("请输入密码:

")

i=i+1

21.yyshow()

【详解】

本题主要考查Python程序绘制图像。

①绘制y=x2-2x+1的图像,故此处填y。

②根据横纵坐标x和y绘制图,故此处填y。

③此处调用显示函数show(),故填show()。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 表格类模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1