一、填空题(每题2分,共20分)
1、不能正确交换变量a,b的值的语句是()。
A: a=b
b=a
B: a,b=b,a
C: t=a
a=b
b=t
D: t=a+b
a=t-a
b=t-b
2、下列正确的Python注释语句是()。
A: //这是注释B: /*这是注释*/
C: %这是注释D: #这是注释
3、下列Python语句的输出结果是()。
s=[4,5,6]
print(s[ -2])
A: 5 B: 4,5
C:5, 6 D: 4,5,6
4、有如下定义:
n ame= “人生苦短,我用Python”
则,name[3:-6]的值是()。
A: 苦短,我用
B: 短,我用
C: 苦短,我
D: 表达式有语法错误
5、已知x=5,语句x*=x-2执行后,x的值是()。
A:23 B:10
C:-5 D:15
6、下列程序执行后,y的值是()。
def f(x,y):
return x**2+y
y=f(2,f(1,3))
A:8 B:9
C:10 D:11
7、下列程序执行后,y的值是()。
f = lambda x : x/2
y = 4+f(5)
A: 6 B: 6.5
C: 9 D: 程序有错误
8、有如下定义:
color = (‘red’, ‘green’, ( ‘cat’, ‘dog’, ‘tiger’, ‘human’))
则表达式color[2][-1]的值是()。
A: human
B: tiger
C: green
D: 以上都不对
9、下面错误的字典创建方式是()。
A: d={(1,2):1,(3,4):3}
B: d={[1,2]:1,[3,4]:3}
C: d={1:(1,2),3:(3,4)}
D: d={“LiMing”:1, “Marry”:3}
10、数学关系式2<x<=10表示成正确的Python表达式为()。
A: x>2 or x<=10
B: 2<x && x<=10
C: 2<x in x<=10
D: 2<x<=10
二、根据所给的流程图,写出Python程序。
(每题10分,共20分)1、
2
三、程序填空。
(每题10分,共30分)
1、题目:完成下面的函数,函数功能是素数判断,如果n是素数返回True,否则返回False。
def huiwen(n)
for i in range(2, n):
if 1 :
2 False
return 3
2、题目:字符串逆序。
函数返回参数所给字符串的逆序字符串,如n ixu(‘a1b2c’)返回’c2b1a’
def nixu(s):
ns = 1
i, j = 0, -1:
while i < len(s):
ns[i] = s[ 2 ]
3
j = j-1
return 4
3、天天向上。
一年365天,一周4个工作日,休息3天,如果每个工作日很努力,可以提高1%,仅在周末放任一下,能力值下降1%
dayup, dayfactor = 1.0, 0.01
for i in 1 :
if 2 in 3 :
dayup = dayup * 4
else:
dayup = dayup * (1 - dayfactor)
print(“向上4天向下3天的力量:{:.2f}.”.format(dayup))
四、程序设计。
请用Python语言设计并实现。
(每题10分,共30分)
1、编写一个温度转换程序。
对输入的带华氏或摄氏标志的温度值进行转换,以F或f表示华氏度,C或c表示摄氏度,其它字符则非法。
输入:带华氏或摄氏标志的温度值。
输出:转换后的带摄氏或华氏标志的温度值
华氏和摄氏的转换公式:
C =(F - 32)/1.8
F = C * 1.8 + 32
输入输出示例1:
输入:82F
输出:27.78C
输入输出示例2:
输入:-30c
输出:-22.00F
输入输出示例3:
输入:39D
输出:输入格式错误
2、猜数字游戏。
在程序中预设一个0~100间的整数,让用户通过键盘输入所猜的数,如果大于预设的数,显示“遗憾,太大了”;如果小于预设的数,显示“遗憾,太小了”。
如此循环,直至猜中该数,显示“预测N次,你猜中了”。
其中N是用户输入数字的次数。
提示:random库常用函数:
randint(a,b):生成一个[a,b]之间的整数
3、输出100以内即非3的倍数也非5的倍数的整数。