内容正文:
第三章 算法的程序实现 检测练习
一、选择题
1.以下表达式运算结果为True的是( )
A.23%200**1/2<-2**4+4*2
B."Hz" in "Hangzhou Asian Games"
C.abs(int(-4.65))==round(4.65)
D.not False and not True or not False
2.某python程序如下:
s=[3,3,3,6,6,8,11,11,9,4,2,5]
r=[]
for i in range(1,len(s)-1):
if not(s[i-1]<s[i]<s[i+1] or s[i-1]>s[i]>s[i+1]):
if s[i-1]==s[i]:
continue
j=len(r)-1
while j>=0 and s[i]<=s[r[j]]:
j-=1
if j==len(r)-1 or j==-1:
j+=1
r=r[:j]+[i]+r[j:]
print(r)
程序运行后,输出的结果为( )
A.[3,6,10] B.[6,11,2] C.[6,3,10] D.[10,3,6]
3.用python算法控制结构描述“如果报名人数超过10人则输出活动升级,若小于3人则输出活动取消,否则输出活动正常举行”,设t为报名人数,下列选项正确的是( )
A. B. C. D.
4.使用 Python 程序编程探究平面上圆与圆的位置关系,程序代码如下:
def judge(a,b):
dis=(cir[a][0]-cir[b][0])**2+(cir[a][1]-cir[b][1])**2
if dis==(cir[a][2]+cir[b][2])**2:
return 1
return 0
#cir存储"A"、"B"、"C"三个圆的 x,y 坐标及半径
cir={"A":[1,1,1],"B":[4,5,4],"C":[0,2,1]}
cnt=judge("A","B")+judge("A","C")+judge("B","C")
运行程序后,变量 cnt 的值是()
A.3 B.2 C.1 D.0
5.用python程序处理图像文件“chenchen.jpg”,该图像颜色位深度为24bit,图像如图所示:
程序代码如下:
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
img=np.array(Image.open("chenchen.jpg").convert("L"))
rows,cols=img.shape
for i in range(rows):
for j in range(cols):
if():
img[i,j]=1
else:
img[i,j]=0
plt.imshow(img,cmap="gray")
plt.show()
下列说法正确的是( )
A.待处理图像的文件名为“chenchen”
B.处理后的图像像素数将增加
C.将加框处语句中的“>”改为“<=”,则处理后的图像中黑白色将互换
D.将加框处语句中128改为188,则处理后图像中的黑色部分将减少
6.已知:food="milkeggbread",feel={1:"love",2:"like",3:"hate"},people=["he","she","it"],则表达式people[2]+feel[2][2:4]+food[1::4]的值是( )
A.itkeige B.itteige C.itkemer D.itikeige
7.用Python程序对分辨率为500*500的图像文件white.jpg(如图所示)进行处理,程序段如下:
from PIL import Image
im = Image.open("white.jpg").convert("L")#打开图像文件,并将其转换为灰度图像
pix=im.load()#加载图像像素数据
width,height=im.size#获取图像宽度值和高度值
for x in range(width):
for y in range(height):
if x<= width//2 and y<= height//2:
if x%50 == 0 or y%50 == 0:
pix[x,y]=0
elif y > height//2:
if x == y:
pix[x,y]=0
im.show()
执行上述程序段后,显示的图像效果是( )
A. B. C. D.
8.有如下Python程序段:
import random
s1="PROGRESS";s2=""
f=[False]