资料全国计算机等级考试二级Python真题及解析3.docx
《资料全国计算机等级考试二级Python真题及解析3.docx》由会员分享,可在线阅读,更多相关《资料全国计算机等级考试二级Python真题及解析3.docx(14页珍藏版)》请在冰豆网上搜索。
资料全国计算机等级考试二级Python真题及解析3
资料全国计算机等级考试二级Python真题及解析(3)
一、选择题
1.下列哪条赋值语句在Python中是非法的:
()
A.X=Y=Z=1B.X=(Y=Z+1)C.X,Y=Y,XD.X+=Y
2.设a=2,b=5,在python中,表达式a>bAndb>3的值是()
A.FalseB.TrueC.-1D.1
3.以下是猜数游戏的Python程序,请你补全代码:
请选择适当的代码填入程序①处。
()
A.forB.printC.elifD.input
4.下列Python程序段的运行结果是()
i=0
sum=0
whilei<10:
ifi%2==0:
sum+=i
i+=1
print(‘sum=’,sum)
A.sum=18B.sum=20C.sum=22D.sum=30
5.在VB中,下列与表达式Len("python")+20的值相等的是()
A.Int(Rnd*26)+1B.Val("20")+16mod9
C.Mid("Hello2019",6,2)+"6"D.abs(Sqr(16)–30)
6.在python中能实现下面结果的代码是()。
请输入你的性别:
A.print(“请输入你的性别:
”)B.print(请输入你的性别:
)
C.input(“请输入你的性别:
”)D.input(请输入你的性别:
)
7.整型变量x中存放了一个两位数,要将这个两位数的个位数字和十位数字交换位置,例如,13变成31,正确的Python表达式是()
A.(x%10)*10+x//10B.(x%10)//10+x//10
C.(x/10)%10+x//10D.(x%10)*10+x%10
8.下面哪个不是Python合法的标识符()
A.int_3B.30XLC.selfD._abc
9.运行下列Python程序,结果正确是()
a=32
b=14
c=a//b
print(c)
A.2.2B.2C.“2”D.4
10.已知字符串a="python",则print(a[1]+a[3])的值为()
A."yth"B."yt"C."py"D."yh"
11.以下不属于高级程序设计语言的是()。
A.C++B.VBC.机器语言D.Python
12.以下Python程序运行后,变量x和st的值分别是()。
A.801123678B.801“123678”C.801801D.123678“123678”
13.下列不可以用来搭建本地服务器的软件是()。
①Python②Excel③IIS④Apache
A.①②B.③④C.①②③④D.①②④
14.在Python中,“print(100-33*5%3)”语句输出的是()
A.34B.67C.100D.1
15.python的命令行提示符是()
A.###B.>>>C.///D.C:
》
二、程序填空
16.“枚举算法”又称为“穷举法”,其基本思想是:
一一列举出所有可能的解,并验证每个可能的解是否是真正的解,若是,就采纳,否则,就抛弃。
小明利用枚举算法解决“百元买百鸡”问题。
用100元钱买100只鸡,公鸡,母鸡,小鸡都要有。
公鸡5元1只,母鸡3元1只,小鸡1元3只。
请问公鸡,母鸡,小鸡各应该买多少只?
假设公鸡有X只,母鸡有Y只,小鸡有Z只。
以下Python程序段实现了“百元买百鸡”的功能,请补全①②③处代码。
c=0
forxin____①:
foryinrange(1,33):
z=100-x-y
if______②:
print("公鸡:
",x,"母鸡:
",y,"小鸡:
",z)
_____③
print("共有买法",c,"种")
17.程序设计:
在舞会上,男生、女生各自排成一队。
舞会开始时,依次从男队和女队的队头各出一人配成舞伴。
跳完后的两人重新回到队尾。
例如:
boy=['Alex','Steven','Jack'],girl=['Ada*,'Babs'.,'Danla','Jane']
输出:
Turn1:
(Alex,Ada)
Turn2:
(Steven,Babs)
Turn3:
(Jack,Danla)
Turn4:
(Alex,jane)
……
Turn12:
(Jack,jane)
代码如下:
boy=['Alex','Steven',‘Jack']
girl=['Ada','Babs','Danla','Jane']
foriinrange(12):
x,y=①#出队
print(“Turn{:
2}):
({},{})".format(i+1,x,y))
boy.append(②)#再进队
girl.append(③)#再进队
(1)程序代码中①处正确的代码是(_______)。
A.boy.pop(l).girl.pop(l)B.girl.pop(l),boy.pop(l)
C.boy.pop(0),girl.pop(0)D.girl.pop(0),boy.pop(0)
(2)程序代码中②处正确的代码是(_______)。
A.xB.yC.iD.i+1
(3)程序代码中③处正确的代码是(_______)。
A.xB.yC.iD.i+1
18.求1~100内奇数之和(使用range函数)
19.编写一个程序,判定用户输入的两个数a和b,如果用户输入的第一个数大,则两数互换,否则原样输出。
20.输入三个同学的成绩,然后大到小排列。
21.利用for循环,分别计算1--100中奇数的和、偶数的和。
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.B
【详解】
本题考查Python语句。
选项A,X=Y=Z=1是合法的赋值语句;选项B,X=(Y=Z+1),X被赋值“Y=Z+1”,但这个所谓的“Y=Z+1”并不返回任何值,所以这是一个错误的赋值语
解析:
B
【详解】
本题考查Python语句。
选项A,X=Y=Z=1是合法的赋值语句;选项B,X=(Y=Z+1),X被赋值“Y=Z+1”,但这个所谓的“Y=Z+1”并不返回任何值,所以这是一个错误的赋值语句,这是非法的;选项C,X,Y=Y,X这是交换语句,合法;选项D,X+=Y相当于X=X+Y,故本题选B。
2.A
【详解】
本题主要考查Python表达式的运算。
a=2,b=5,a>b值为False,b>3值为True,逻辑运算符“And”两边都为真,表达式的值才为真,故表达式a>bAndb>3的值是F
解析:
A
【详解】
本题主要考查Python表达式的运算。
a=2,b=5,a>b值为False,b>3值为True,逻辑运算符“And”两边都为真,表达式的值才为真,故表达式a>bAndb>3的值是False,故本题选A选项。
3.C
【详解】
本题主要考查Python分支结构。
分析程序可知,该程序采用多分支结构,故程序①处应填elif,故本题选C选项。
解析:
C
【详解】
本题主要考查Python分支结构。
分析程序可知,该程序采用多分支结构,故程序①处应填elif,故本题选C选项。
4.B
【详解】
本题考查Python语句。
根据while可知,当ifi%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum
解析:
B
【详解】
本题考查Python语句。
根据while可知,当ifi%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum=’,sum),则最后运行结果是sum=20,故本题选B。
5.D
【详解】
本题考查的知识点是VB基本函数的应用。
Len()函数功能是求字符串长度,返回数值型数据,所以Len("python")+20值为26。
A选项:
Rnd是产生0到1之间的随机数,不包括1,
解析:
D
【详解】
本题考查的知识点是VB基本函数的应用。
Len()函数功能是求字符串长度,返回数值型数据,所以Len("python")+20值为26。
A选项:
Rnd是产生0到1之间的随机数,不包括1,Int()函数功能是向下取整,所以Int(Rnd*26)+1结果是一个0到26的随机数,不一定为26。
A选项错误;B选项:
Val()函数功能是讲字符串数据转换为数值型,mod是取余运算,所以Val("20")+16mod9值为27。
B选项错误;C选项:
Mid()函数功能是截取字符串,Mid("Hello2019",6,2)+"6"结果是字符串类型数据。
C选项错误;D选项:
Sqr()是求平方根函数,abs()是求绝对值函数,所以abs(Sqr(16)–30)值为26。
故正确答案为D选项。
6.C
【详解】
本题考查的是python函数相关知识。
input函数接受一个标准输入数据,print是一个输出函数。
input(“请输入你的性别:
”)函数中的“请输入你的性别:
”表示提示信息,要使用双
解析:
C
【详解】
本题考查的是python函数相关知识。
input函数接受一个标准输入数据,print是一个输出函数。
input(“请输入你的性别:
”)函数中的“请输入你的性别:
”表示提示信息,要使用双引号。
故选项C正确。
7.A
【详解】
本题主要考查Python表达式。
当x=13时,(x%10)*10+x//10=31,(x%10)//10+x//10=1,(x/10)%10+x//10=2,(x%10)*10+x%1
解析:
A
【详解】
本题主要考查Python表达式。
当x=13时,(x%10)*10+x//10=31,(x%10)//10+x//10=1,(x/10)%10+x//10=2,(x%10)*10+x%10=33,故本题选A选项。
8.B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故30XL不是Python合法的标识符,故本题选B选项。
解析:
B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故30XL不是Python合法的标识符,故本题选B选项。
9.B
【详解】
本题主要考查Python程序运行。
a=32,b=14,c=a//b=32//14=2(“//”取整),故本题选B选项。
解析:
B
【详解】
本题主要考查Python程序运行。
a=32,b=14,c=a//b=32//14=2(“//”取整),故本题选B选项。
10.D
【详解】
本题主要考查Python字符串的运算。
字符串a="python",a[1]+a[3]="y"+"h"="yh",故本题选D选项。
解析:
D
【详解】
本题主要考查Python字符串的运算。
字符串a="python",a[1]+a[3]="y"+"h"="yh",故本题选D选项。
11.C
【详解】
本题考查计算机语言。
C++,VB,Python都属于高级程序设计语言。
机器语言则不是。
故本题选项C不属于高级程序设计语言。
解析:
C
【详解】
本题考查计算机语言。
C++,VB,Python都属于高级程序设计语言。
机器语言则不是。
故本题选项C不属于高级程序设计语言。
12.B
【详解】
本题主要考查Python语句执行。
语句X=123+678是整型类型运算,值为801;语句St="123"+"678"是字符串运算,直接拼接,值为"123678",故本题选B选项。
解析:
B
【详解】
本题主要考查Python语句执行。
语句X=123+678是整型类型运算,值为801;语句St="123"+"678"是字符串运算,直接拼接,值为"123678",故本题选B选项。
13.A
【详解】
本题考查服务器的相关知识点
①Python脚本语言②Excel处理表格软件③IISInternet信息服务可以搭建服务器④Apache可以搭建阿帕奇服务器。
故①②不可
解析:
A
【详解】
本题考查服务器的相关知识点
①Python脚本语言②Excel处理表格软件③IISInternet信息服务可以搭建服务器④Apache可以搭建阿帕奇服务器。
故①②不可以用来搭建本地服务器。
故选A选项
14.C
【详解】
本题主要考查Python表达式的计算。
“*”是乘法运算,“%”是取余运算,“*”、“%”优先级一样,按从左到右计算,故100-33*5%3=100-165%3=100-0=100,故“
解析:
C
【详解】
本题主要考查Python表达式的计算。
“*”是乘法运算,“%”是取余运算,“*”、“%”优先级一样,按从左到右计算,故100-33*5%3=100-165%3=100-0=100,故“print(100-33*5%3)”语句输出的是100,故本题选C选项。
15.B
【详解】
本题主要考查Python命令提示符。
python的命令行提示符是>>>,故本题选B选项。
解析:
B
【详解】
本题主要考查Python命令提示符。
python的命令行提示符是>>>,故本题选B选项。
二、程序填空
16.range(1,20)5*x+3*y+z/3==100c=c+1
【详解】
本题考查的是python编程。
X代表的是公鸡,公鸡5元一只,所以此处的range函数为range(1,20),左闭右开区间。
if条件是满足三种鸡的总价格为100元的条件,故答案为5*x+3*y+z/3==100,注意这里是一个判断条件,用==表示。
c代表的是有几种购买方案,当if条件满足时,即满足一种方案,执行方案数加1,c=c+1。
17.CAB
【详解】
本题主要考查队列数据结构及Python程序。
①队列是从队头出队,队尾入队,使用pop函数出队,队头的索引值是0,故此处填boy.pop(0),girl.pop(0)。
②队列入队使用append方法追加到队列尾,此处是男生入队boy.append(x),故选A选项。
③同理,此处是女生入队girl.append(y),故选B选项。
18.Sum=0
foriinrange(1,101,2):
Sum+=i
print(Sum)
【详解】
本题主要考查Python程序设计。
求1~100内奇数之和,用Sum来求和,变量i的范围是1到100,每次递增2,可以使用range函数,具体代码如下:
Sum=0
foriinrange(1,101,2):
Sum+=i
print(Sum)
19.a=int(input("请输入数a:
"))
b=int(input("请输入数b:
"))
ifa>b:
t=a
a=b
b=t
print("用户输入的数按小到大排序结果是:
",a,b)
else:
print("原样输出",a,b)
【详解】
本题主要考查Python程序设计。
使用input函数接收两个数a和b,用if条件分支结构判断a和b的大小,如果a大于b,则交换,否则原样输出,具体代码如下:
a=int(input("请输入数a:
"))
b=int(input("请输入数b:
"))
ifa>b:
t=a
a=b
b=t
print("用户输入的数按小到大排序结果是:
",a,b)
else:
print("原样输出",a,b)
20.
【详解】
本题主要考查程序设计与实现。
可以使用Python程序实现题干要求:
21.sum1=0
sum2=0
foriinrange(1,101):
ifi%2==0:
sum1+=i
else:
sum2+=i
print(sum1,sum2)
【详解】
本题主要考查程序设计。
可以使用Python程序设计语言实现题干要求,通过if条件分支结构可以实现分别计算奇数的和、偶数的和,具体代码如下:
sum1=0
sum2=0
foriinrange(1,101):
ifi%2==0:
sum1+=i
else:
sum2+=i
print(sum1,sum2)