第三章 算法的程序实现
一、选择题
1.执行下列Python语句后,输出结果为( )
a=int(2.9)
print(a)
A.2.9 B.2.90 C.3 D.2
2.执行下列语句,输出的结果是( )。
x,y = 1, 2
x, y = y, x
print(x, y)
A.1 1 B.2 2 C.2 1 D.1 2
3.在Python语句中,”0x”表示十六进制,”0b”表示二进制,”0o”表示八进制,则print(0xA+0xB)的输出结果是( )
A.0xA+0xB B.A+B C.0xA0xB D.21
4.以下程序段的运行结果是( )
sum=0
for i in range(1, 11):
sum+=i
print(sum)
A.10 B.11 C.55 D.66
5.下列可以作为Python变量名的是( )
A.infol B.3_teacher C.a#21 D.if
6.在一次比赛中,需要随机给10名选手各编一个0~9范围内的唯一序号,对应的Python程序段如下:
_________________
a,b=[0]*10,[False]*10
i=0
while i<=9:
_________________
if not b[r]:
a[i]=r
___________
i=i+1
print(a)
则划线处的代码依次是( )
① r=random.randint(0,10) ② b[r]=True ③import random
④ b[i]=True ⑤from random import randint ⑥ r=random.randint(0,9)
A.⑤①② B.⑤⑥④ C.③①④ D.③⑥②
7.十六进制数值 10~15分别用大写字母A~F来表示,如果变量 s 表示大写字母A~F中的任意一个字母,能将变量s转换成对应数值的正确表达式是( )
A.ord(s)-ord("A")+10 B.ord(s)-ord(A)+10
C.chr(s)-chr("A")+10 D.chr(s)-chr(A)+10
8.下列Python程序段运行的结果是
s = 0
i = 1
while i <= 100:
if i % 10 != 0 :
s+= i
i+ =1
print(s) ( )
A.4500 B.4578 C.5050 D.6657
二、判断题
9.Python中的“=”是赋值运算符,跟数学上的“=”意义不一样。(______)
10.王军同学编写程序解决“韩信点兵”问题后,总结出计算机解决问题的过程分为分析问题-设计算法-编写程序-调试运行程序等步骤。 (_____)
11.用自然语言来描述算法,比用流程图来描述算法更清晰、简洁。(_______)
12.随着计算机的发展,程序设计语言经历了从机器语言到高级语言的发展历程,即机器语言、汇编语言、高级语言。(______)
13.实时获得鼠标的状态并对鼠标单击做出正确的响应,只有不断地进行监听、更新游戏状态、重绘屏幕三个步骤的操作。 (____)
14.编程也属于编码,是运用程序设计语言实现人机交互提高计算机应用效率,为实现操作程序化要求所进行的编码。(_____)
三、填空题
15.设列表a=[1,2,3,4,5],则max(a)的结果为(______)。
16.阅读下列程序,写出运行结果。
def fib(m): n1=1 n2=1 for i in range(3,m +1): t = nl + n2 n1 = n2 n2 = t return t Print(fib(5))
运行结果是:_______________
17.分析完善程序
以下是计算s= 12+22+32+.... + 1002的程序代码,请补全程序。
s=__①____
for i in range(1,101):
s=s+___②___
print (s)
请补充完成上述程序: ①______ ②______
18.os模块是一个________。os.system(“cls”)语句作用___________。
19.对于字典a={'name':'chen', 'age':18},len(a)的结果为(_____)。
20.有如下程序段:
a=6
b=18
c=26
if a>=b and a>=c:
max=a
elif b>=a and b>=c:
max=b
elif c>=a and c>=b:
max=c
print (max)
该程序段运行后,输出的max的值为________。
四、简答题
21.编写程序,根据输入的年份(4位整数),判断该年份是否是闰年。
22.利用for循环,分别计算1--100中奇数的和、偶数的和。
sum1=0
sum2=0
for i in range(1,100):
if i%2==0:
sum1+=i
else:
sum2+=i
print(sum1,sum2)
五、操作题
23.完善以下程序代码完成下题。
程序描述:2公里(包括2公里)内,起步价为5元,超过2公里部分(不足整公里的,向上取整),每公里1.6元。
代码如下:
import_①_#引用math库
s=_②__(input("请输入你要去目的地距离出发点的公里数:))
if_③__: #2公里(包括2公里)内
cost =5
else:
cost = 5+math.ceil(s-2) *1.6
print("你的打的费用是", cost,“元)
①处的语句是(_______),②处的语句是(_______),③处的语句是(______)
(1)A.math B.Numpy C.time D.matplotlib
(2)A.Float B.Int C.str D.math
(3)A.s≤2 B.s<=2 C.s>2 D.s≥2
试卷第1页,共3页
试卷第1页,共3页
参考答案
1.D
2.C
3.D
4.C
5.A
6.B
7.A
8.A
9.正确
10.对
11.错
12.正确
13.对
14.正确
15.5
16.5
17.0 i**2或i*i
18.系统库 清屏
19.2
20.26
21.x=int(input("请输入一个年份(四位数):"))
if x%400==0:
print("{}年是闰年".format(x))
elif x%4==0 and x%100!=0:
print("{}年是闰年".format(x))
else:
print("{}年不是闰年".format(x))
22.代码解析注释如下:
sum1=0#定义sum1存储偶数和,并赋值sum1=0
sum2=0#定义sum2存储偶数和,并赋值sum2=0
for i in range(1,100):#通过遍历1至100的所有整数,分别计算1至100中的偶数和、奇数和
if i%2==0:#若i是偶数,则把偶数加到sum1中
sum1+=i
else:#若i是奇数,则把奇数加到sum2中
sum2+=i
print(sum1,sum2)#输出结果,偶数和sum1的值为2550,奇数和sum2的值为2500
23.A A B 答案第1页,共2页