第三章 算法的程序实现单元练习卷(含答案)-高中信息技术必修1 浙教版(2019)

资源下载
  1. 二一教育资源

第三章 算法的程序实现单元练习卷(含答案)-高中信息技术必修1 浙教版(2019)

资源简介

第三章 算法的程序实现 单元练习卷
1.有如下Python程序段,有关该程序段,下列说法正确的是( )
def fun(k):
if k==0:
return " "
elif k%2==1:
return chr(k+ord('A'))+fun(k-1)
else:
return fun(k-1)+chr(k+ord('A'))
A.fun(5)的值为'FDBCE'
B.若执行s=fun(0),则函数fun的调用次数为0
C.该算法的时间复杂度为O(n^2)
D.计算机在执行上述递归程序时,是通过树的调用来实现的
2.执行下列 Python程序,输出的是( )
shuiguo=["石榴","杨桃","香蕉","苹果"]
print(shuiguo[1])
A.石榴 B.杨桃 C.香蕉 D.苹果
3.小刘搭建了“室内光线强度监测信息系统”,该信息系统主要包括“数据采集”、“数据查询”、“数据维护”子系统。网站框架如图a所示,系统的部分代码如图b所示。下列说法不正确的是( )
A.数据采集子页面采用GET的形式提交数据
B.上述代码中“@app.route("/cx")”与“cx()”是一对路由和视图函数
C.“app=Flask(__name__)”的功能是为Web应用程序创建Flask类的对象
D.在浏览器地址栏输入“http://192.168.1.1:88/get”, 按回车键后,浏览器中显示“get data ok”
4.下面Python函数的作用,选项错误的是( )
A.增加代码的维护难度 B.实现代码的复用
C.增强代码的可读性 D.使代码的逻辑结构更清晰
5.下列选项中,不属于高级程序设计语言的是( )
A.Python B.C/C++ C.Java D.Word
6.range()函数可以生成某个范围内的数字序列,range(6,8)是( )
A.6 8 B.6 7 8 C.7 8 D.6 7
7.为了响应“光盘行动”的号召,学校食堂要开发一款订餐APP,制订了如下工作你认为流程最恰当的一项是( )
A.分析问题、设计算法、编写程序、调试与维护
B.设计算法、编写程序、分析问题、调试与维护
C.分析问题、编写程序、调试与维护、设计算法
D.编写程序、调试与维护、分析问题、设计算法
8.编程解决问题的一般过程是( )
①设计算法 ②编写程序 ③调试运行 ④分析问题
A.①②③④ B.④①③② C.④①②③ D.①④②③
9.已知Python列表s=[‘长江',’长城’,’黄山’,’黄河’],那么s[-2]是( )
A.’黄山’ B.'黄河' C.‘长城’ D.‘长江'
10.在条件语句中,哪个关键字通常用于检查多个条件?( )
A.if B.else C.else if D.switch
11.执行如下代码:
c=0
num=[1,2,3,4]
def fun(num):
global c
for i in range( 5 ) :
c+=1
num.append(c)
return num
print(fun(num), num ,c)
则程序执行后输出( )
A.[1,2,3,4] [1,2,3,4]
B.[1, 2, 3, 4, 5] [1,2,3,4] 0
C.[1, 2, 3, 4, 5] [1,2,3,4] 5
D.[1, 2, 3, 4, 5] [1, 2, 3, 4, 5] 5
12.某个进行素数判断的Python程序如下:
def prime(n,m):
if n==m:
return True
elif n<2 or n%m==0:
return False
else:
return prime(n, m+1)
x=int(input("请输入x:"))
if prime(x,2):
print("是素数!")
else:
print("不是素数!")
输入的值为123时,执行程序后自定义函数prime被执行的次数是( )
A.1次 B.2次 C.122次 D.123次
13.结构化程序设计中,模块的内聚度应该是( )
A.高内聚 B.低内聚 C.无内聚 D.以上都不对
14.某终端接上温度传感器,将温度读取到变量 a 中,代码如下。
while True:
a=temperature()
if a>33:
display.show(Image.SAD)
sleep(3000)
else:
display.show(Image.HAPPY)
若温度传感器和主板的连接正常,烧录并运行该代码下列选项中正确的是( )
A.热风机加热后,主板 LED 显示“哭脸”图形,3 秒后显示“笑脸”图形
B.室温低于33℃时,主板 LED不显示任何图形
C.热风机加热后,主板 LED 显示“笑脸”图形,3 秒后显示“哭脸”图形
D.室温低于 33℃时,主板 LED 显示“笑脸”
15.以下程序段的输出结果是( )
i, j = 1,5
if j< 0:
i=-1
else:
i=0
print(i)
A.0 B.1 C.-1 D.5
16.有如下 python 程序段:
列表 a 的初始值略…
for i in range(6):
if (i+1)%2!=0:
if a[i]%10 >5:
a[i]=a[i]//10
else:
a[i]=a[i]%10
else:
a[i]=a[i-1]+1
程序运行后 a[0]到 a[6]的值分别是 2,3,4,5,0,1,则 a[0]到 a[6]各元素的初始值可能是( )
A.26,1,4,2,8,3 B.12,1,14,2,11,3 C.15,1,2,3,4,5 D.29,1,40,2,3,30
17.下面的程序,若想运行结果是Best Wishes to you!,则划线处代码可能是( )
s="Happy National Day!"
m=____________________
if m=="Happy":
print("Happy to you!")
elif m=="National":
print("Best Wishes to you!")
else:
print("It's a fine Day!")
A.s[6:13] B.s[7:14]
C.s[-6:-14:-1] D.s[-13:-5:1]
18.有如下Python程序段:
a=[5,4,2,6,3];n=len(a)
for i in range(n-2):
for j in range(i + 1,n):
if a[i]a[i],a[j]=a[j],a[i]
执行该程序段后,a的值是( )
A.[6,5,4,3,2] B.[2,3,4,5,6] C.[2,3,4,6,5] D.[6,5,4,2,3]
19.有如下Python程序段:
import random
q = [0] * 5
head = tail = 0
for i in range(5):
if random.randint(0,1)== 0:
q[tail] = random.randint(1,9)
tail += 1
elif head != tail and q[tail - 1] < q[head]:
q[tail] = q[head]
head += 1
tail += 1
执行该程序段后,q的值不可能是( )
A.[0, 0, 0, 0, 0] B.[5, 4, 3, 2, 1]
C.[5, 8, 3, 0, 0] D.[0, 5, 6, 0, 0]
20.在Python语言中,运行以下程序段后,显示的结果是( )
>>> a=8
>>> b=2
>>> a-=b
>>> b+=a
>>> a+b
A.10 B.14 C.8 D.12
21.利用计算机编程解决问题最关键的步骤是( )
A.分析问题 B.编写代码 C.设计算法 D.调试运行程序
22.Python语言中,利用常用的算术运算符进行算术运算,8%5的结果为( )
A.1 B.2 C.3 D.3.6
23.下列选项中,属于程序设计语言的是( )
A.Flash B.Python C.Adobe Audition D.FrontPage
24.现采用新的排队方案为小明、小红、小丽、小辉四人排队,
Python程序段如下:
linklist=[["小明",1],["小红",2],["小丽",3],["小辉",-1]]
def reset(head):
if linklist[head][1]==- 1 or head==- 1:
return head
else:
new_head=reset(linklist[head][1])
linklist[linklist[head][1]][1]=head
linklist[head][1]=- 1
return new head
p=h=reset(0)
while p!=- 1:
print(linklist[p][0],end="")
p=linklist[p][1]
执行该程序段后,输出的结果是( )
A.小明小红小丽小辉 B.小明小辉小丽小红
C.小辉小丽小红小明 D.小明小丽小红小辉
25.有如下Python程序段:
import random
defselect(s,k):
for i in range(k):
j=i+1
if j< len(s):
s=s[:j]+s[j+1:]
else:
s=s[:len(s)-1]
connect(i,s,k)
def connect(i,s,k):
list1=''
if i< k-1:
listl=listl+s+'-'
else:
list1=listl+s
print(listl,end='')
s="hello"
k=random.randint(1,4)
select(s,k)
执行该程序段后,输出结果可能是( )
A.hllo- B.hllo-hll-hl C.hllo-hlo D.hllo-hlo-hl-1
26.用二分法求解 x3- x2 + x - 1 = 0,完善下面程序。
def f(x):
#定义方程
return x**3-x**2+x-1
a=float(input("请输入解区间的左边界:"))
b=float(input("请输入解区间的右边界:"))
while abs(b-a)>1e-6:
x0=(a+b)/2
if ( ① ):
b=x0
if ( ② ):
a=x0
if ( ③ ):
break
print("解为:",x0)
input("运行完毕,请按回车键退出...")
程序中①②③处分别填入( )
A.①f(a)*f(x0)>0;②f(b)*f(x0)<0;③f(x0)==0
B.①f(a)*f(x0)<0;②f(b)*f(x0)<0;③f(x0)==0
C.①f(a)*f(x0)<0;②f(b)*f(x0)<0;③f(x0)=0
D.①f(a)*f(x0)<0;②f(b)*f(x0)>0;③f(x0)==0
27.关于Python操作txt文件,下列说法错误的是( )
A.open函数打开(.txt),open("文件名",'参数'),参数"a+":追加读写,"r+":可读可写
B.writelines() 函数,可以实现将字符串列表写入文件中
C.用write方法将内存中的数据存储到外存储器的文件中
D.文件操作结束时不一定要用close方法关闭文件。
28.下列 Python 表达式中值最小的是( )
A.2**2+5%13//9 B.8//3*7/2 C.len(range(7))/3 D.int("1"+"4")//abs(-7)
29.使用列表lnk模拟链表结构,head为头指针,每个节点包括性别、身高和后续指针。原链表按先男生再女生升序排列(如图a所示),现要修改各节点的链接关系,使得链表按先女生再男生升序排列(如图b所示),实现该功能的代码如下:
lnk=[["男",178,1],["男",180,2],["男",185,3],["女",160,4],["女",172,5],["女",174,-1]]
head = 0
t = head
pre = cur = lnk[head][2]
while lnk[cur][2] ! = -1:
if lnk[cur][0] == "男":
pre = cur
cur = lnk[cur][2]
lnk[cur][2]=t
方框处应填入正确的代码为( )
A. B. C. D.
30.以下循环执行的次数是( )
k=10
while(k):
k=k-1
A.1 B.9 C.11 D.10
二、填空题
31.执行如下程序,写出运行结果。
a=input()
b=input()
c=int(a+b)
d=int(a)+int(b)
print(c,d)
键盘依次输入33和44,则输出结果为 。
32.程序中的“控制流”是指程序执行的 。
33.写出运行结果。
a=int(input("请输入一个自然数:"))
b=int(input("请输入另一个自然数:"))
c=int(a/b)
print(c)
假如输入5和3
结果:
34.Python表达式包含大于、乘、减三种运算符,其中运算优先级最高的是 。
35.在Python中,如何访问字典中的值?
三、判断题
36.机器语言是与计算机无关的,具有很好的可移植性。( )
37.在 Python 程序设计语言中,表达式 17﹪2 的值为 1。( )
38.用户自定义函数是用户自己写的一段程序.一般包括函数名、参数、 返回值、函数体等四部分.其中,函数名和参数是必不可少的部分.( )
39.python语言是一种面向对象的解释型计算机程序设计语言,发明于1989年。目前,python已经成为最受欢迎的程序设计语言之一。 ( )
40.在python中,运行以下程序,输出的结果是2。( )
a=5
b=3
c=6
c=a%b
print(c)
四、操作题
41.小范设计小区停车场车辆道闸系统。该信息系统主要实现,识别驶入车辆的车牌,若有权限驶入,则目动打开停车场闸门的功能。其中,车牌识别子系统的处理过程主要包括:①实时拍摄要驶入车辆的照片,如图a;②如图b所示,图像以坐标start和end为顶点的矩形框内的图像,将其所有像素点RGB值存储到列表变量img1中;③产生获取到车牌区域的图像,如图c所示,最后使用车牌识别函数将该图像识别为文本车牌号码。识别驶入车辆车牌后,使用基于Python的Flask web框架中Get方式,将车牌上传到WEB服务器端,系统判断该车辆是否有权限驶入。
(1)数据库设计。该停车场所有可驶入车辆的信息,存储到数据库文件data.db的da数据表中,车辆信息数据包括:编号,车牌,车主姓名,办理时间,会员标识。其对应的字段名依次为id,code,stime,name,mem,如车辆“江H0217D”的车辆数据记录如下表所示。
下列关于该表字段结构设计最合理的是
A. B.C.
(2)编写车牌识别客户端软件。实现车牌识别子系统的Python代码段如下,请在划线处填入合适代码。
#导入PIL,numpy,matplotlib.pyplot库,代码略
def dis(im):
#此函数实现了将截取车牌图像内容数据im识别为文本格式的车牌号码,代码略f="1001.bmp" #系统采集驶入车辆的原始图片
img=np.array(Image.open(f)) #将图a每个像素的RGB值依次存储到列表变量img
img1=[]*1000
x=0
#将图像以坐标(x1,y1)、(x2,y2)为顶点的矩形区域所有像素RGB值存储在列表变量img
for i in range(x1,x2) #②处
for j in range(y1.y2) #③处
img1[x]=img[i][j]
s_code=dis(img1[0:x]) #将截取的车牌位置的图像使用dis函数进行识别
s.get(URL+s_code) #将车牌上传到服务器
(3)小范测试上述程序,发现运行结果为图c顺时针90度的效果,影响了车牌识别准确率,若要使运行后显示结果如图c所示的图像,则②③处代码需依次改为 _(单选,填字母)。
A.range(xl,y1) range(x2,y2) B.range(y1,x1) range(y2,x2)
C.range(y1,y2) range(x1,x2) D.range(x1,y1) range(x2,y2)
(4)编写服务器端软件。若采用基于Python的Flask web框架编写服务器端“车牌识别子系统”,其访问的地址为http://10.1.10.1/s s_c="江A1100D",则服务器端程序,路由命令格式应为 (单选,填字母)。
A.@app.route("/s")
B.@app.route("/s" ,methods=["GET"])
C.@app.route("/get" ,methods=["GET"]
参考答案
1.A
2.B
3.D
4.A
5.D
6.D
7.A
8.C
9.A
10.C
11.D
12.B
13.A
14.D
15.A
16.A
17.D
18.D
19.D
20.B
21.C
22.C
23.B
24.C
25.C
26.B
27.D
28.D
29.C
30.D
31.3344 77
32.顺序
33.1
34.乘运算符
35.通过键来访问
36.错误
37.正确
38.错
39.对
40.正确
41. B x=x+1 A
B

展开更多......

收起↑

资源预览