相关试卷
-
1、小明使用Python编写了某答题卡中单项选择题的判分程序,该单选题每题2分。扫描答题卡获取选项填涂信息,输入标准答案,程序自动判断并输出分数。具体方法为:
一个选项是否被填涂,可以从判断一个像素的颜色开始,像素的填涂情况是通过RGB的值来判断 ,灰度值低于132的表示该点被填涂;一个信息点64%的像素被填涂,则认为该区域已填涂,返回值为“1”。区域未填涂时返回值为“0”;各选项的编码为:A→“1000”,B→“0100”,C→“0010”,D→“0001”;输入标准答案,程序进行对比并返回结果。答题卡相关信息如下:
(1)、某题的标准答案为“C”,该题填涂情况为“0100”,则分数为分。(2)、实现上述功能的程序如下,请在划线处填入合适的代码。from PIL import Image
#输入起始点坐标(xs,ys),信息点宽度高度(fw, fh),间隔宽度高度(sw, sh),代码略
num = 5 # 判分个数
def bw_judge(R, G, B): # bw_judge用于判断一个像素的填涂情况,代码略
def fill_judge(x, y): # fill_judge用于判断信息点的填涂情况
count = 0
for i in range(x, x + fw + 1):
for j in range(y, y + fh + 1):
R, G, B = pixels[i, j]
if bw_judge(R, G, B) = = True:
count = count + 1
return
total_width = fw+ sw
total_height = fh + sh
image = Image.open("t2.bmp")
pixels = image.load()
number = ""
bz=[""]*num
df=0
bzd=input('请输入标准答案:')
da={"A":"1000","B":"0100","C":"0010","D":"0001"}
for i in range(len(bzd)):
bz[i]=
for row in range(num): #分数判定
for col in range(4):
y = ys + total_height * row
if fill_judge(x, y) == True :
number = number + '1'
else:
number = number + '0'
if number = = bz[row]:
df+=2
number=""
print("得分为:",df)
-
2、报数游戏。已知班上有n名学生(用编号1,2,3,„,n分别表示),学生按照编号由小到大顺时针围成一个圆圈,从编号为1的学生开始顺时针报数,报到m的同学出列;下一名同学又从1开始报数,报数为m的同学继续出列;以此规律重复下去,直到剩下最后一位同学为止。(1)、当n=10,m=3时,最后留下的同学的编号是。(2)、下列代码通过构造一个循环单向链表,模拟报数的过程,逐一删除报数为m的节点,直到剩下一个节点为止。请在划线处填入合适的代码。
n=int(input("n="))
m=int(input("m="))
lst=[]
for i in range(n-1):
lst.append([i+1,i+1])
lst.append( ) #将尾节点的指针指向头节点,构成循环单向链表
p=len(lst)-1
while n>1:
for i in range(1,m): #从1~(m-1)依次报数
out=lst[p][1]
n=n-1
print("最后留下的同学的编号是:", lst[p][0])
(3)、下列代码通过构造一个循环队列,模拟报数的过程,将报数为m的元素进行出队操作(报数非m的元素重新入队),直到剩下一个元素为止。请在划线处填入合适的代码。n=int(input("n="))
m=int(input("m="))
q=[0]*n ; head=0 ; tail=0
for i in range(1,n+1): #构造循环队列
q[tail]=i
c=0
while (head+1)%n!=tail:
c=c+1
if c==m:
head=(head+1)%n
else:
tail=(tail+1)%n
head=(head+1)%n
print("最后留下的同学的编号是: ",q[head])
-
3、小明收集了本周信息技术学科学习评价的数据,如下图所示。(1)、观察上表小明做了如下操作,其中属于数据整理的是( )(多选,填字母)A、删除重复行第五行 B、验证并修改D2单元格数据 C、通过公式计算全班平均分 D、重新设置C3单元格格式(2)、为了分析每个组的平均分,设计了如下Python程序,请将程序补充完整。程序执行结果如下图所示。
import pandas as pd
import matplotlib.pyplot as plt
df=pd.read_excel("成绩表.xlsx")
df=df.rename(columns={"选择题总分":"选择题"})
print(df1)
(3)、利用Python程序绘制各小题得分率图表,如第下图所示。请在划线处填写合适的代码。
num=int(input("请输入小组:"))
plt.figure(figsize=(10,5))
list=[]
for i in range(12):
s="题"+str(i+1)
list.append(*50)
plt.bar(range(1,13),list)
plt.title(str(num)+"group")
plt.xlabel("question number")
plt.ylabel("correct rate")
plt.show()
-
4、有如下 python 程序段:
from random import randint
a=[0]*6; i=0
while i<6:
a[i]=randint(1,10)
if a[i]%2==i%2:
i=i-1
elif i%2==1:
a[i]=a[i-1]+a[i]
i=i+1
执行该程序段后,数组 a 中的值可能为( )
A、[4, 9, 2, 7, 6, 13] B、[7, 11, 3, 13, 9, 17] C、[5, 7, 7, 19, 3, 11] D、[6, 12, 4, 8, 8, 16] -
5、有如下 Python 程序段:
import pandas as pd
s1=pd.Series(["赵天一","周光起","王子涵","徐静怡"],index=["01","02","03","04"])
s1["02"]="周广其"
xh=s1.index
name=s1.values
height=[168,175,170,180]
weight=[57,65,62,65]
col=["姓名","身高","体重"]
data={"姓名":name,"身高":height,"体重":weight}
df1=pd.DataFrame(data,index=xh,columns=col)
print(df1[df1["身高"]>170])
运行该程序段,输出显示的内容为( )
A、B、
C、
D、
-
6、有如下Python程序
a = [3,2,1,-8,3,-2,8,6]
s = t = a[0]
for i in range(1,len(a)):
if s > 0:
s += a[i]
else:
s = a[i]
if s > t:
t = s
print(t)
该程序段的运行结果是( )
A、6 B、-10 C、15 D、33 -
7、有如下Python程序段:
a=int(input("请输入一个数:"))
if a>0:
a=a%10
elif a==0:
a=a+1
else:
a=a**2
a=a+10
print(a)输入a值为20,执行该程序段后,输出的结果是( )
A、14 B、11 C、10 D、1 -
8、下列有关大数据及其处理的说法,错误的是( )A、大数据的四个特征:数据体量巨大、速度快、数据类型多、价值密度低 B、对大数据进行处理时,必须保证每个数据都准确无误 C、批处理计算适合处理静态数据 D、流计算适合处理实时更新的数据
-
9、某数据加密方法描述如下:
⑴以字节为单位进行加密处理;
⑵将1个字节的8位二进制数分割成前4位与后4位两个二进制数;
⑶分别将上述两个4位二进制数转换为十进制数;
转换前的字符M
字符M的ASCII十进制值
对应的二进制数
分割、转换后的十进制数
对应的加密字符
若将“密码表”中值为“0”对应的加密字符“I”改成“i”,加密后的密文可能无法解密,原因是。
⑷将每个十进制数转换为1个加密字符,对应的“密码表”如下:
值(十进制)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
加密字符
I
l
i
k
e
C
H
N
P
o
s
t
c
a
r
d
小明按照上述方法,设计了一个字符串(仅包含若干个ASCII字符)加密办法,功能是将这个字符串的每个字符的ASCII码值作为1个字节转换为两个加密字符,连接这些加密字符,最后得到加密结果。下表显示了字符串中一个字符的加密过程:
下图左框中“This is an example!”是一个字符串,它由19个字符(包括大小写字母、空格和标点符号)组成,按照上述方法,每个字符加密后得到两个加密字符,最后加密结果为38个字符,如图中右框所示。
请回答下列问题:
(1)、观察可知“e”加密后的结果为(单选,填字母:A. HC / B.Ci / C.Ce)。(2)、已知ASCII表中,大写字母比对应的小写字母的十进制ASCII值要小32D,根据以上加密规则,完成字符“M”的加密过程,请将答案填写在下表空白处。(3)、若将“密码表”中值为“0”对应的加密字符“I”改成“i”,加密后的密文可能无法解密,原因是。 -
10、基本运算(1)、(2*6**2//4-100) %10(2)、闰年判断条件: 年份是4的倍数,且不是100的倍数,或者公历年份是400的倍数都是闰年。用逻辑运算来判断年份year是否为闰年(若为闰年输出True,否则输出False)(3)、写python小程序,要求:任意输入两个小数,计算它们的和并输出。
-
11、小张参与“声音的量化”实验活动课,他采用传感器采集声音,并利用示波器显示声波信号,其记录的主要活动过程与结果如下图1-3所示。
请回答下列问题:
(1)、声音信号的数字化,需要经过采样、量化、数字化的过程。当对某个声音信号采样时,3秒内采集到的样本数为3000,则采样频率为( )(单选,填字母) 。A、300Hz B、1000Hz C、3000Hz D、9000Hz(2)、如上图所示,将声音的高低划分成8个等级,每一个等级都使用等长的二进制位数表示,则量化位数最少为( )比特。(单选,填字母)A、1 B、2 C、3 D、4(3)、某声音数字化后的数据量为 4MB,换算为( )比特。(单选,填字母)A、8*4 B、1024*8*4 C、1024*1024*4 D、1024*1024*8*4(4)、一段时长为10s的wav单声道音频文件,采样频率是44.1kHz,量化位数为16bit,它所占的存储容量约为( )。(单选,填字母)A、861KB B、6891B -
12、如图是一个汉字的16*16点阵图。若白色像素记作“0”,黑色像素记作“1”,采用逐行记录的办法,可以实现“汉”字的字形的数字化。
图a
请回答下列问题:
(1)、如图a所示,第一行共有16个像素,存储和表示第一行数据需要 位二进制数。(2)、如图a所示,第一行按自左向右的顺序编码成二进制数序列后,转换成十六进制数为。(3)、结合图a,下列说法正确的有( )(多选,填字母)。A、每个像素使用一位二进制数表示 B、该点阵图数字化后存储需要30个字节 C、这个汉字字形的编码方案是ASCII D、最后一行的第一个字节和第二个字节编码相同 -
13、疫情暴发期间,有关部门利用大数据技术进行技术防控。通过地图大数据预测人流密度,监测疫情动向,一键上报疫情检查情况,实时生成疫情数据报告,研判疫情态势,开展就医查询……下列应用中,未用到大数据技术的是( )A、绘制确诊病人住院前的行动轨迹,查找与之密切接触人员的动向 B、在超市、银行等场所,用手持温仪测量入场人员的体温数据 C、相关机构实时采集各地的疫情数据,进行每天的疫情信息发布 D、用户利用“城市势力图”等提供的信息,避开人流密度高的地区
-
14、下列不属于大数据特征的是( )A、价值密度高 B、处理速度快 C、数据类型多 D、数据体量大
-
15、为了预防自然灾害引起的数据损坏,一般可采用的措施有( )A、建设异地容灾系统 B、对数据进行加密 C、安装防火墙 D、安装磁盘阵列系统
-
16、关于数据存储容量的表达式:
①1Byte = 8bit ②1KB = 1000 bit ③1MB = 1024B ④1GB =1024MB
下列选项中包含的两个表达式都正确的是( )
A、①② B、②③ C、①④ D、③④ -
17、下列属于文本文件的是( )A、music.mp3 B、movie.mp4 C、introduction.txt D、background.jpg
-
18、下列不属于字符编码的是( )A、ASCII B、BMP C、GB2312 D、Unicode
-
19、下列关于信息数字化的说法,正确的是( )A、将数字信号转换成模拟信号的过程称为数字化 B、将十进制数转换成二进制数进行编码是数字化 C、打印机可以把模拟图像转换成数字图像 D、将模拟信号转换成数字信号一般需要经过采样、量化、编码等步骤
-
20、身体质量指数(简称BMI),是用体重公斤数除以身高米数平方得出的数字,是国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。如果18.5≤BMI≤25,则正常;高于25,则体重过重。小强体重90KG,身高1.70M,计算BMI值约为31。结合上述事例,下列对于数据、信息、知识和智慧的描述中正确的是( )A、体重计上显示的“90Kg”仅仅是一个数据,并不包含任何信息 B、鉴于小强的身体质量指数,联想到了“肥胖、脂肪”,这是知识的体现 C、正确使用身体质量指数公式,并计算出小强的BMI,这体现了人类的智慧 D、小强经过坚持不懈地锻炼,将体重由90Kg控制到了70Kg,这是因为体重信息具有真伪性