【编程】python二级考试试题完美
一、选择题
1.现有如下Python程序:
List = [ "Happy", "new", "year!" ]
s = List[ 1 ]
d = s[ : -1 ]
执行该程序后,d的值为()
A."py" B."Happ" C."ew" D."ne"
2.下面Python代码运行后,a、b的值为(  )
a=23
b=int(a/10)
a=(a-b*10)*10
b=a+b
print(a,b)
A.23 2B.30 20C.30 32D.3  2
3.下列Python数据不属于列表的是()
A.{24,56,7,89,4} B.[24,56,7,89,4]
C.[24,56,’a’,’猕猴桃’]D.[’A’,’B’ ’C’, ’D’]
4.下列Python程序段运行的结果是(  )。
i=0
sum=0
while i<10:
if i%3==0:
sum+=i
i+=1
print("sum=",sum)
A.sum=9 B.sum=10 C.sum=18 D.sum=19
5.关于Python语句P = –P,以下选项中描述正确的是()
A.P和P的负数相等B.P和P的绝对值相等
C.将P赋值为它的相反数D.P的值为0
6.在Python Shell环境下,依次执行下列语句后,显示结果()。
A.9 B.165 C.172 D.21
7.在Python程序中,要求s=3+6+9+…+300的值,可以采用如下代码,下列选项中的说法不正确的是()。
A.for循环语句中步长为3 B.语句s=0应改为s=1
C.语句s=s+i共循环执行了100次D.程序使用了循环结构
8.有如下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
9.可以被计算机直接执行的语言是(    ) , Python语言属于(    )语言。
A.机器,高级B.高级,汇编C.高级,机器D.汇编,高级10.下面哪个不是Python合法的标识符()
A.int_3 B.print
C.count D.__name__
11.以下python程序段运行后,s的值是()
n=0
s=0
while  s <= 10:
n=n+3
s=s+n
print (s)
A.0 B.3 C.18 D.30
12.下列选项中,属于Python输出函数的是()。
A.random() B.print() C.sqrt() D.input() 13.Python程序文件的扩展名是()。
A..python B..pyt C..pt D..py
14.在Python中,返回x的绝对值的函数是()。
A.abs(x) B.bin(x) C.all(x) D.input(x) 15.算法用Python程序实现,以下代码中哪处语句存在语法错误()
A.B.C.D.
二、程序填空
16.(项目情境)水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:1**3+5**3+3**3 = 153。这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。
(问题求解)设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。需得分离数
字得到每位上的数,即将变量g、s、b表示为x的形式。请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。print ("三位数之内的水仙花是:")
for x in _____ :
b=x//100python编程入门试题
s=_____
g=_____
if x==(b**3 + s**3 + g**3):
_____
17.水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:1**3+5**3+3**3=153。这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。
[问题求解]设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。
print ("三位数之内的水仙花是:")
for x in___(100,1000):
b=x//100
s=(x//10)___
g=___
If x=(b**3 +s**3+g**3):
print(___)
18.辗转相除法,又称欧几里德算法,用于计算两个正整数m、n的最大公约数。它是已知最古老的算法,其可追溯至公元前300年前。
辗转相除法的算法步骤是,对于给定的两个正整数m、n(m>n),用m除以n得到余数r,若余数r不为0,就将n和r构成新的一对数(m=n,n=r),继续上面的除法,直到余数为0,这时m就是原来两个数的最大公约数。因为这个算法需要反复进行除法运算,故被形象地命名为“辗转相除法”。小曲设计了辗转相除法的算法,请根据下面算法回答问
题。
描述一描述二描述三
①输入两个正整数m,n
(m>n);
②计算m除以n所得的
余数r;
③m=n,n=r;
④若r=0,则m,n的最大公
约数等于m;否则转到
步骤②;
⑤输出最大公约数m;
⑥结束。
(1)描述一是________描述法;描述二是流程图描述法;描述三是计算机程序语言描述法。
(2)在描述三中代码4到6行作用是__________。
(3)在描述三程序设计中,补充代码第8行划线处为__________。
19.计算机解决问题的过程为“分析问题——设计算法(流程图)——编写程序——调试程序”,
请输入以下代码,自己输入数据运行,结果截图提交
20.分析完善程序
某市出租车收费标准如下:
(1)3公里内(含3公里),收费8元
(2)超过3公里但未超过6公里部分,按1.5元/公里收费
(3)超过6公里部分,按2.25元/公里收费。
根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?[算法分析]
假设总费用为p,则可以分段计算
p=8    ‘(s≤3)
p=1.5*(s-3)+8  ‘(3<s≤6)
p=2.25*(s-6)+1.5*3+8  ‘(s>6)
[参考代码]
a=float(input(“s=”))
if s <= 3 :
p= 8
if
p=1.5*(s-3)+8
if s > 6 :
p=2.25*(s-6)+1.5*3+8
print( p)
根据上述回答如下问题:
(1)本题采用的算法是________(填:解析法/枚举法/排序法/递归法)。(2)程序代码中空白处应填写的条件是_______(填: A/B/C/D)。
A.3<s<=6      B.3<=s<=6    C.s>3 and s<6  D.s>3 Or s<=6
21.阅读程序。分析条件语句的代码并回答问题。
(1)如果不能使用int()函数,那么变量s的类型将会变成 ______ 。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。