综合测评(二) 浙教版(2019)必修1(课件 练习三份打包)

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

综合测评(二) 浙教版(2019)必修1(课件 练习三份打包)

资源简介

(共34张PPT)
第五章 人工智能及应用
验收卷(七) 综合测评(二)
(考试时间40分钟;满分50分)
一、选择题(本大题共12小题,每小题2分,共计24分,在每小题给出的四个选项中,只有一个符合题目要求,多选、少选、不选均不得分)
1.下列关于数据和信息的说法,正确的是(  )
A.被收集保存的数据才是真正的数据
B.数据的多种表现形式在计算机中用二进制存储
C.同一信息必须依附于同一个载体
D.有了计算机才有了信息的加工和处理
B
D
A.各比赛项目数据的表现形式可以数字、图片等
B.图中柔道项目价格 “¥20.00”数据有实际意义
C.对于票价高低有不同的理解是因为知识构建不同
D.通过赛时选择合适自己时间的票是智慧的体现
D
3.下列关于大数据相关说法,正确的是 (  )
A.某市学生体质测试的数据是大数据
B.大数据为提高处理效率,采用抽样数据
C.大数据分析为得到正确的处理结果,不允许有个别错误数据
D.大数据不一定强调对事物因果关系的探求,而是更注重它们的相关性
A
A.ASCII 码共表示 127 个字符
B.计算机中的汉字是采用二进制进行编码的
C.条形码、二维码也属于编码方式
D.MPEG-4 是常见的视频编码方式
C
A.存储该字符串的内码共需 15 个字节
B.小写字母“p”的内码值是 70H
C.字符的内码值大小关系为:“3”<“e”<“H”
D.数字“2”的内码值用二进制表示为 00110010
A
6.有关数据安全的说法,下列正确的是 (  )
A.通过数据校验保障交互数据的完整性
B.重要数据可以通过加密提高安全性,不必备份
C.强密码安全,可在多个应用中统一使用
D.保护数据的安全无需保护存储数据的介质
A
7.某算法的部分流程图如图所示。执行这部分流程,输出 s和 i 的值分别是 (  )
A.30 11 B.30 9 C.28 11 D.26 9
C
8.下列 Python 表达式中,值为 True 的是 (  )
A.9/3**2!=1 B."12"=="12345"[1:3]
C.abs(-4.3)>9∥2 D."ac" in "abcaab"
A
9.有如下 Python 程序:
a=[100, 71, 74, 95, 68, 78, 99, 99, 82, 100]
b={"A":0,"B":0,"C":0}
for i in a:
  if i>90:
    b["A"]+=1
  elif i>80:
    b["B"]+=1
  else:
    b["C"]+=1
运行该程序后,b["B"]的值是(  )
A.1 B.6 C.3 D.5
10.某Python程序如下:
a=input("输入数字字符串:")
s=""
flag =1
for i in range(0,len(a)-1,2):
  d1=int(a[i])
  d2=int(a[i+ 1])
  t= d1 + flag*d2
  if t<0:
    t+=10
  elif t>=10:
C
    t-=10
  s = str(t) + s
  flag = -flag
if len(a) % 2== 1:
  s += a[len(a)-1]
print(s)
程序运行时,若输入“48135”,则输出的结果是(  )
A.528 B.582 C.825 D.285
解析 每2个字符作为一组进行处理,将d1 和flag*d2值赋值给t,若t小于0,t增加10,若t大于等于10,t将减小10,否则不变,将t逆序连接到字符 s 中。第1组,t的值为12,t将减小10,s的值为"2";第2组t的值为8,t不变,s的值为"82"。条件len(a) % 2== 1成立,将a中最后一个数字连接到最后。
11.假如正整数 x 在 n 进位下的平方可以分割为两个正整数,且这两个数相加后恰等于 x,那么 x就是 n 进位下的卡布列克数。例如 92=81,而 9=8+1,所以 9 是十进位下的卡布列克数,9 也是十进位下最小的有意义的卡布列克数。编写如下自定义函数判定 x 是否为十进位下的卡布列克数。
def Kaprekar_number(x):
  w = 10; m = x * x
  while m > w and m % w != 0:  #①
    if m ∥ w + m % w == x:  #②
      return True
    w *= 10          # ③
  else: #与 while 语句对齐
    return False
关于上述程序代码,以下说法正确的是(  )
A.执行语句 print(Kaprekar_number(45)),输出结果为 False
B.若将语句①while 后面的 m>w 修改为 m>=w,其他部分保持不变,不影响函数功能
C.语句块②可用语句 return m ∥ w + m % w == x 代替
D.交换②所在if语句块和语句③的顺序,不影响函数功能
B
解析 程序的功能是计算x的平方m,计算m ∥ w + m % w之和是否与x相等,若相等则返回True。A选项45的平方为2025,当w为100时,20+25=45,因此返回为True。B选项当m=w时,条件m % w != 0肯定不成立,因此修改后程序功能不变。C选项若w为10,m ∥ w 与 m % w之和与x不相等,直接结束返回False,而不会去检测100或更大的w。D选项交换后,没有检测w为10的情况。
12.有如下Python程序段:
p={};s=input()
for i in range(len(s)):
  p[s[i]]=i
i=0
while i  n=p[s[i]]
  j=i+1
  while j<=n:
    if p[s[j]]>n:
      n=p[s[j]]
    j=j+1
  print(s[i:j])
  i=j
若输入“arrayiybi”,则输出结果的最后一行内容是(  )
A.arra B.yiy
C.iybi D.yiybi
D
二、非选择题(本大题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分)
13.猜数游戏。游戏规则如下:设定一个秘密数,每猜错一次会得到格式为“iAjB”的提示,其中“iA”表示数字猜对且位置也猜对的数有i个,“jB”表示数字猜对但位置没猜对的数有j个。例如秘密数为“2507”时,若猜测数为“1702”,则提示是“1A2B”。
(1)现已知秘密数为“37692”,猜测数为“79612”,则提示是    。
(2)上述功能的部分Python程序如下,请在划线处填入合适的代码。
#将设定的秘密数存放于变量s中
while True:
  g=input()
  if g==s:
    print("猜对了");break
  i=A=B=0
  cnt1, cnt2 = [0] * 10, [0] * 10
  while i    if ①     :
       A+=1
    else:
      cnt1[int(s[i])]+=1
      ②   
    i+=1
  for j in range(10):
    m= min(cnt1[j],cnt2[j])
    ③   
  print("提示:",str(A)+"A"+str(B)+"B")
答案 (1)2A2B 或"2A2B" (2) ①s[i]==g[i] ②cnt2[int(g[i])]+=1或cnt2[int(g[i])]=cnt2[int(g[i])]+1 ③B=B+m 或B+=m
解析 (1)数字位置均正确的有2个,数字对位置错的有两个。(2)①检测数字s[i]和猜的数字位置g[i]是否正确,变量A为数字位置正确的个数。②cnt1用于统计s中相应数字出现的次数,cnt2用于统计猜数g中相应数字出现的次数。 ③数字位置均正确的没有统计在cnt1和cnt2中。若m=0,说明该数字或者没有出现过,或者只在g或s某一个出现过,此时应不计数;若m=1,说明这个数字在g和s中均出现了1次,但没有被统计到A中,即数字正确而位置不正确有1;若m=2,说明数字正确而位置不正确。
14.为研究某项疾病与年龄的关系,某医院对以前的诊断记录进行整理和分析,整理部分数据如图a所示。
(1)观察图a所示数据,发现年龄列数据格式不一致为了便于数据分析,下列操作合适的是     。(单选,填字母)
A.删除“年龄”列数据
B.将“年龄”列含有中文字的记录删除
C.将“年龄”列数据转为文本类型
D.将“年龄”列含有中文字的记录修改为只包含数字的年龄
(2)将数据整理好后,为了统计0~18、19~35、36~60、61以上(含61)四个年龄段的某疾病患病人数占该疾病总患病人数的比例,并绘制如图b示图表,编写如下Python程序,请在划线处填入合适代码。
import pandas as pd
import matplotlib.pyplot as plt
df=pd.read_excel('data.xlsx')
tp=input('请输入疾病类型:')
df1=①     #筛选tp疾病的数据
count=[0] * 4
for i in df1.index:
  age=df.at[i, '年龄']
  if ②     :
    count[0]+=1
  elif age <=35:
    count[1] +=1
  elif age <=60:
    count[2] +=1
  else:
    count[3] +=1
x=['0-18', '19-35', '36-60', '61以上']
y=[]
for i in range(4):
  y.append( ③     )
plt.bar(x, y) #显示不同年龄段患该病的人数百分比
#设置图表其他参数,代码略
(3)观察图b,“疾病A”患病比例最大的年龄段为     。
(4)若想获取61岁及以上的人群中,患病率最高的10种疾病,编写如下程序。
def get_head10(df, age):
    
  return df.疾病.head(10)
print(get_head10(df, 61))
上述程序段中方框处可选代码为:①df = df.sort_values("年龄", ascending=False)
②df = df[df.年龄>=age] ③df = df.groupby("疾病", as_index=False).count()
则加框处应填代码的顺序依次为    。(单选,填字母)
A.①②③ B.①③②
C.②①③ D.②③①
答案 (1)D (2)①df[df['疾病类型']==tp] 
②age<=18 ③count[i]/sum(count)*100 或count[i]/len(df1)*100 (3)0-18 (4)D
解析 本题考查Pandas数据处理。(1)略。
(2)①在df中查找符合条件df['疾病类型']==tp的记录。②count数组统计各个年龄段的人数。③图表显示不同年龄段患该病的人数百分比,将各个年龄人数占该疾病类型的人数百分比。(3)略。(4)数据处理的顺序是:筛选、分组统计、排序(降序)。若要统计患病率,需按疾病类型进行分组统计,形成如图所示数据。
其中姓名列和年龄列为统计的人数,若要找出人数最多的需按其中一个关键字进行降序排列。
15.某智能货架有一排货位,货位号从 0 开始编号,每个货位等宽。货架上可放置不同宽度(占 1~3 个货位)的箱子,箱子从左往右连续相邻摆放。每次放置箱子时,只能在货架上最后一个箱子的右侧放置新箱子。可以搬离中间的某个箱子,但该箱右侧所有箱子被自动左移。编写程序,模拟搬离或放置操作,操作结束后,输出当前货架上所有箱子的起始位置。请回答下列问题:
(1)若货架有5个箱子,状态如图所示,搬离第2个箱子后,当前货架上最后一个箱子的起始位置是    。
(2)实现上述功能的部分 Python 程序如下,请在划线处填入合适的代码。
#共有n 个箱子供操作,代码略
lst=[-1]*n
st=m=0
while True:
  '''操作序列如[''P1'', ''M0'',……. , ''E''],依次读取序列元素,存入变量 op,''P1''表示放置宽度为 1 的箱子,''M0''表示搬离第 1 个箱子,代码略'''
  if op[0]=="P":
    w=int(op[1:]) #表示箱子的宽度为 w
    lst[m]=st
    st=st+w
    ①   
  elif op[0]=="M":
    i = int(op[1:]) #表示第 i+1 个箱子将被搬离
    if lst[i+1] != -1:  #计算移动的距离
      dis=②   
    else:
      dis=st-lst[i]
    while lst[i+1]!= -1:
      lst[i]=lst[i+1]-dis
      i=i+1
    lst[i] = -1
    st=③   
    m =m - 1
  else:
    break
#输出当前货架上所有箱子的起始位置,代码略
答案 (1)5 (2)①m=m+1 ②lst[i + 1]- lst[i] ③st-dis
解析 (1)搬离第2个箱子,每个箱子向左移动3个单位,因此起始位置为5。(2)①从语句lst[m]=st和st=st+w来看,m表示箱子索引号,st表示起始位置,起始位置每次增加箱子长度,因此箱子索引也要增加。②计算移动距离,条件lst[i+1]!= -1表示后面还有箱子,因此移出箱子的距离为前后两个箱子起始位置的差值。③语句lst[i] = -1更新最后一个箱子往前移动后,少了一个箱子,因此起始位置也要相应往前移动。验收卷(七) 综合测评(二)
(考试时间40分钟;满分50分)
一、选择题(本大题共12小题,每小题2分,共计24分,在每小题给出的四个选项中,只有一个符合题目要求,多选、少选、不选均不得分)
1.下列关于数据和信息的说法,正确的是 (  )
A.被收集保存的数据才是真正的数据
B.数据的多种表现形式在计算机中用二进制存储
C.同一信息必须依附于同一个载体
D.有了计算机才有了信息的加工和处理
答案 B
2.智能亚运一站通上推荐赛事如图,下列关于数据、知识和智慧说法不正确的是 (  )
A.各比赛项目数据的表现形式可以数字、图片等
B.图中柔道项目价格 “¥20.00”数据有实际意义
C.对于票价高低有不同的理解是因为知识构建不同
D.通过赛时选择合适自己时间的票是智慧的体现
答案 D
3.下列关于大数据相关说法,正确的是 (  )
A.某市学生体质测试的数据是大数据
B.大数据为提高处理效率,采用抽样数据
C.大数据分析为得到正确的处理结果,不允许有个别错误数据
D.大数据不一定强调对事物因果关系的探求,而是更注重它们的相关性
答案 D
4.下列关于信息编码的说法,不正确的是 (  )
A.ASCII 码共表示 127 个字符
B.计算机中的汉字是采用二进制进行编码的
C.条形码、二维码也属于编码方式
D.MPEG-4 是常见的视频编码方式
答案 A
5.使用 UltraEdit 软件查看内码,部分界面如图所示,下列说法不正确的是 (  )
A.存储该字符串的内码共需 15 个字节
B.小写字母“p”的内码值是 70H
C.字符的内码值大小关系为:“3”<“e”<“H”
D.数字“2”的内码值用二进制表示为 00110010
答案 C
6.有关数据安全的说法,下列正确的是 (  )
A.通过数据校验保障交互数据的完整性
B.重要数据可以通过加密提高安全性,不必备份
C.强密码安全,可在多个应用中统一使用
D.保护数据的安全无需保护存储数据的介质
答案 A
7.某算法的部分流程图如图所示。执行这部分流程,输出 s和 i 的值分别是 (  )
A.30 11 B.30 9
C.28 11 D.26 9
答案 A
8.下列 Python 表达式中,值为 True 的是 (  )
A.9/3**2!=1 B."12"=="12345"[1:3]
C.abs(-4.3)>9∥2 D."ac" in "abcaab"
答案 C
9.有如下 Python 程序:
a=[100, 71, 74, 95, 68, 78, 99, 99, 82, 100]
b={"A":0,"B":0,"C":0}
for i in a:
  if i>90:
    b["A"]+=1
  elif i>80:
    b["B"]+=1
  else:
    b["C"]+=1
运行该程序后,b["B"]的值是 (  )
A.1 B.6
C.3 D.5
答案 A
10.某Python程序如下:
a=input("输入数字字符串:")
s=""
flag =1
for i in range(0,len(a)-1,2):
  d1=int(a[i])
  d2=int(a[i+ 1])
  t= d1 + flag*d2
  if t<0:
    t+=10
  elif t>=10:
    t-=10
  s = str(t) + s
  flag = -flag
if len(a) % 2== 1:
  s += a[len(a)-1]
print(s)
程序运行时,若输入“48135”,则输出的结果是 (  )
A.528 B.582
C.825 D.285
答案 C
解析 每2个字符作为一组进行处理,将d1 和flag*d2值赋值给t,若t小于0,t增加10,若t大于等于10,t将减小10,否则不变,将t逆序连接到字符 s 中。第1组,t的值为12,t将减小10,s的值为"2";第2组t的值为8,t不变,s的值为"82"。条件len(a) % 2== 1成立,将a中最后一个数字连接到最后。
11.假如正整数 x 在 n 进位下的平方可以分割为两个正整数,且这两个数相加后恰等于 x,那么 x就是 n 进位下的卡布列克数。例如 92=81,而 9=8+1,所以 9 是十进位下的卡布列克数,9 也是十进位下最小的有意义的卡布列克数。编写如下自定义函数判定 x 是否为十进位下的卡布列克数。
def Kaprekar_number(x):
  w = 10; m = x * x
  while m > w and m % w != 0:  #①
    if m ∥ w + m % w == x:  #②
      return True
    w *= 10          # ③
  else: #与 while 语句对齐
    return False
关于上述程序代码,以下说法正确的是 (  )
A.执行语句 print(Kaprekar_number(45)),输出结果为 False
B.若将语句①while 后面的 m>w 修改为 m>=w,其他部分保持不变,不影响函数功能
C.语句块②可用语句 return m ∥ w + m % w == x 代替
D.交换②所在if语句块和语句③的顺序,不影响函数功能
答案 B
解析 程序的功能是计算x的平方m,计算m ∥ w + m % w之和是否与x相等,若相等则返回True。A选项45的平方为2025,当w为100时,20+25=45,因此返回为True。B选项当m=w时,条件m % w != 0肯定不成立,因此修改后程序功能不变。C选项若w为10,m ∥ w 与 m % w之和与x不相等,直接结束返回False,而不会去检测100或更大的w。D选项交换后,没有检测w为10的情况。
12.有如下Python程序段:
p={};s=input()
for i in range(len(s)):
  p[s[i]]=i
i=0
while i  n=p[s[i]]
  j=i+1
  while j<=n:
    if p[s[j]]>n:
      n=p[s[j]]
    j=j+1
  print(s[i:j])
  i=j
若输入“arrayiybi”,则输出结果的最后一行内容是 (  )
A.arra B.yiy
C.iybi D.yiybi
答案 D
二、非选择题(本大题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分)
13.猜数游戏。游戏规则如下:设定一个秘密数,每猜错一次会得到格式为“iAjB”的提示,其中“iA”表示数字猜对且位置也猜对的数有i个,“jB”表示数字猜对但位置没猜对的数有j个。例如秘密数为“2507”时,若猜测数为“1702”,则提示是“1A2B”。
(1)现已知秘密数为“37692”,猜测数为“79612”,则提示是    。
(2)上述功能的部分Python程序如下,请在划线处填入合适的代码。
#将设定的秘密数存放于变量s中
while True:
  g=input()
  if g==s:
    print("猜对了");break
  i=A=B=0
  cnt1, cnt2 = [0] * 10, [0] * 10
  while i    if ①     :
       A+=1
    else:
      cnt1[int(s[i])]+=1
      ②   
    i+=1
  for j in range(10):
    m= min(cnt1[j],cnt2[j])
    ③   
  print("提示:",str(A)+"A"+str(B)+"B")
答案 (1)2A2B 或"2A2B" (2) ①s[i]==g[i] ②cnt2[int(g[i])]+=1或cnt2[int(g[i])]=cnt2[int(g[i])]+1 ③B=B+m 或B+=m
解析 (1)数字位置均正确的有2个,数字对位置错的有两个。(2)①检测数字s[i]和猜的数字位置g[i]是否正确,变量A为数字位置正确的个数。②cnt1用于统计s中相应数字出现的次数,cnt2用于统计猜数g中相应数字出现的次数。 ③数字位置均正确的没有统计在cnt1和cnt2中。若m=0,说明该数字或者没有出现过,或者只在g或s某一个出现过,此时应不计数;若m=1,说明这个数字在g和s中均出现了1次,但没有被统计到A中,即数字正确而位置不正确有1;若m=2,说明数字正确而位置不正确。
14.为研究某项疾病与年龄的关系,某医院对以前的诊断记录进行整理和分析,整理部分数据如图a所示。
(1)观察图a所示数据,发现年龄列数据格式不一致为了便于数据分析,下列操作合适的是     。(单选,填字母)
A.删除“年龄”列数据
B.将“年龄”列含有中文字的记录删除
C.将“年龄”列数据转为文本类型
D.将“年龄”列含有中文字的记录修改为只包含数字的年龄
(2)将数据整理好后,为了统计0~18、19~35、36~60、61以上(含61)四个年龄段的某疾病患病人数占该疾病总患病人数的比例,并绘制如图b示图表,编写如下Python程序,请在划线处填入合适代码。
import pandas as pd
import matplotlib.pyplot as plt
df=pd.read_excel('data.xlsx')
tp=input('请输入疾病类型:')
df1=①     #筛选tp疾病的数据
count=[0] * 4
for i in df1.index:
  age=df.at[i, '年龄']
  if ②     :
    count[0]+=1
  elif age <=35:
    count[1] +=1
  elif age <=60:
    count[2] +=1
  else:
    count[3] +=1
x=['0-18', '19-35', '36-60', '61以上']
y=[]
for i in range(4):
  y.append( ③     )
plt.bar(x, y) #显示不同年龄段患该病的人数百分比
#设置图表其他参数,代码略
(3)观察图b,“疾病A”患病比例最大的年龄段为     。
(4)若想获取61岁及以上的人群中,患病率最高的10种疾病,编写如下程序。
def get_head10(df, age):
    
  return df.疾病.head(10)
print(get_head10(df, 61))
上述程序段中方框处可选代码为:①df = df.sort_values("年龄", ascending=False)
②df = df[df.年龄>=age] ③df = df.groupby("疾病", as_index=False).count()
则加框处应填代码的顺序依次为    。(单选,填字母)
A.①②③ B.①③②
C.②①③ D.②③①
答案 (1)D (2)①df[df['疾病类型']==tp] 
②age<=18 ③count[i]/sum(count)*100 或count[i]/len(df1)*100 (3)0-18 (4)D
解析 本题考查Pandas数据处理。(1)略。
(2)①在df中查找符合条件df['疾病类型']==tp的记录。②count数组统计各个年龄段的人数。③图表显示不同年龄段患该病的人数百分比,将各个年龄人数占该疾病类型的人数百分比。(3)略。(4)数据处理的顺序是:筛选、分组统计、排序(降序)。若要统计患病率,需按疾病类型进行分组统计,形成如图所示数据。其中姓名列和年龄列为统计的人数,若要找出人数最多的需按其中一个关键字进行降序排列。
15.某智能货架有一排货位,货位号从 0 开始编号,每个货位等宽。货架上可放置不同宽度(占 1~3 个货位)的箱子,箱子从左往右连续相邻摆放。每次放置箱子时,只能在货架上最后一个箱子的右侧放置新箱子。可以搬离中间的某个箱子,但该箱右侧所有箱子被自动左移。编写程序,模拟搬离或放置操作,操作结束后,输出当前货架上所有箱子的起始位置。请回答下列问题:
(1)若货架有5个箱子,状态如图所示,搬离第2个箱子后,当前货架上最后一个箱子的起始位置是    。
(2)实现上述功能的部分 Python 程序如下,请在划线处填入合适的代码。
#共有n 个箱子供操作,代码略
lst=[-1]*n
st=m=0
while True:
  '''操作序列如[''P1'', ''M0'',……. , ''E''],依次读取序列元素,存入变量 op,''P1''表示放置宽度为 1 的箱子,''M0''表示搬离第 1 个箱子,代码略'''
  if op[0]=="P":
    w=int(op[1:]) #表示箱子的宽度为 w
    lst[m]=st
    st=st+w
    ①   
  elif op[0]=="M":
    i = int(op[1:]) #表示第 i+1 个箱子将被搬离
    if lst[i+1] != -1:  #计算移动的距离
      dis=②   
    else:
      dis=st-lst[i]
    while lst[i+1]!= -1:
      lst[i]=lst[i+1]-dis
      i=i+1
    lst[i] = -1
    st=③   
    m =m - 1
  else:
    break
#输出当前货架上所有箱子的起始位置,代码略
答案 (1)5 (2)①m=m+1 ②lst[i + 1]- lst[i] ③st-dis
解析 (1)搬离第2个箱子,每个箱子向左移动3个单位,因此起始位置为5。(2)①从语句lst[m]=st和st=st+w来看,m表示箱子索引号,st表示起始位置,起始位置每次增加箱子长度,因此箱子索引也要增加。②计算移动距离,条件lst[i+1]!= -1表示后面还有箱子,因此移出箱子的距离为前后两个箱子起始位置的差值。③语句lst[i] = -1更新最后一个箱子往前移动后,少了一个箱子,因此起始位置也要相应往前移动。验收卷(七) 综合测评(二)
(考试时间40分钟;满分50分)
一、选择题(本大题共12小题,每小题2分,共计24分,在每小题给出的四个选项中,只有一个符合题目要求,多选、少选、不选均不得分)
1.下列关于数据和信息的说法,正确的是 (  )
A.被收集保存的数据才是真正的数据
B.数据的多种表现形式在计算机中用二进制存储
C.同一信息必须依附于同一个载体
D.有了计算机才有了信息的加工和处理
2.智能亚运一站通上推荐赛事如图,下列关于数据、知识和智慧说法不正确的是 (  )
A.各比赛项目数据的表现形式可以数字、图片等
B.图中柔道项目价格 “¥20.00”数据有实际意义
C.对于票价高低有不同的理解是因为知识构建不同
D.通过赛时选择合适自己时间的票是智慧的体现
3.下列关于大数据相关说法,正确的是 (  )
A.某市学生体质测试的数据是大数据
B.大数据为提高处理效率,采用抽样数据
C.大数据分析为得到正确的处理结果,不允许有个别错误数据
D.大数据不一定强调对事物因果关系的探求,而是更注重它们的相关性
4.下列关于信息编码的说法,不正确的是 (  )
A.ASCII 码共表示 127 个字符
B.计算机中的汉字是采用二进制进行编码的
C.条形码、二维码也属于编码方式
D.MPEG-4 是常见的视频编码方式
5.使用 UltraEdit 软件查看内码,部分界面如图所示,下列说法不正确的是 (  )
A.存储该字符串的内码共需 15 个字节
B.小写字母“p”的内码值是 70H
C.字符的内码值大小关系为:“3”<“e”<“H”
D.数字“2”的内码值用二进制表示为 00110010
6.有关数据安全的说法,下列正确的是 (  )
A.通过数据校验保障交互数据的完整性
B.重要数据可以通过加密提高安全性,不必备份
C.强密码安全,可在多个应用中统一使用
D.保护数据的安全无需保护存储数据的介质
7.某算法的部分流程图如图所示。执行这部分流程,输出 s和 i 的值分别是 (  )
A.30 11 B.30 9
C.28 11 D.26 9
8.下列 Python 表达式中,值为 True 的是 (  )
A.9/3**2!=1 B."12"=="12345"[1:3]
C.abs(-4.3)>9∥2 D."ac" in "abcaab"
9.有如下 Python 程序:
a=[100, 71, 74, 95, 68, 78, 99, 99, 82, 100]
b={"A":0,"B":0,"C":0}
for i in a:
  if i>90:
    b["A"]+=1
  elif i>80:
    b["B"]+=1
  else:
    b["C"]+=1
运行该程序后,b["B"]的值是 (  )
A.1 B.6
C.3 D.5
10.某Python程序如下:
a=input("输入数字字符串:")
s=""
flag =1
for i in range(0,len(a)-1,2):
  d1=int(a[i])
  d2=int(a[i+ 1])
  t= d1 + flag*d2
  if t<0:
    t+=10
  elif t>=10:
    t-=10
  s = str(t) + s
  flag = -flag
if len(a) % 2== 1:
  s += a[len(a)-1]
print(s)
程序运行时,若输入“48135”,则输出的结果是 (  )
A.528 B.582
C.825 D.285
11.假如正整数 x 在 n 进位下的平方可以分割为两个正整数,且这两个数相加后恰等于 x,那么 x就是 n 进位下的卡布列克数。例如 92=81,而 9=8+1,所以 9 是十进位下的卡布列克数,9 也是十进位下最小的有意义的卡布列克数。编写如下自定义函数判定 x 是否为十进位下的卡布列克数。
def Kaprekar_number(x):
  w = 10; m = x * x
  while m > w and m % w != 0:  #①
    if m ∥ w + m % w == x:  #②
      return True
    w *= 10          # ③
  else: #与 while 语句对齐
    return False
关于上述程序代码,以下说法正确的是 (  )
A.执行语句 print(Kaprekar_number(45)),输出结果为 False
B.若将语句①while 后面的 m>w 修改为 m>=w,其他部分保持不变,不影响函数功能
C.语句块②可用语句 return m ∥ w + m % w == x 代替
D.交换②所在if语句块和语句③的顺序,不影响函数功能
12.有如下Python程序段:
p={};s=input()
for i in range(len(s)):
  p[s[i]]=i
i=0
while i  n=p[s[i]]
  j=i+1
  while j<=n:
    if p[s[j]]>n:
      n=p[s[j]]
    j=j+1
  print(s[i:j])
  i=j
若输入“arrayiybi”,则输出结果的最后一行内容是 (  )
A.arra B.yiy
C.iybi D.yiybi
二、非选择题(本大题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分)
13.猜数游戏。游戏规则如下:设定一个秘密数,每猜错一次会得到格式为“iAjB”的提示,其中“iA”表示数字猜对且位置也猜对的数有i个,“jB”表示数字猜对但位置没猜对的数有j个。例如秘密数为“2507”时,若猜测数为“1702”,则提示是“1A2B”。
(1)现已知秘密数为“37692”,猜测数为“79612”,则提示是    。
(2)上述功能的部分Python程序如下,请在划线处填入合适的代码。
#将设定的秘密数存放于变量s中
while True:
  g=input()
  if g==s:
    print("猜对了");break
  i=A=B=0
  cnt1, cnt2 = [0] * 10, [0] * 10
  while i    if ①     :
       A+=1
    else:
      cnt1[int(s[i])]+=1
      ②   
    i+=1
  for j in range(10):
    m= min(cnt1[j],cnt2[j])
    ③   
  print("提示:",str(A)+"A"+str(B)+"B")
14.为研究某项疾病与年龄的关系,某医院对以前的诊断记录进行整理和分析,整理部分数据如图a所示。
(1)观察图a所示数据,发现年龄列数据格式不一致为了便于数据分析,下列操作合适的是     。(单选,填字母)
A.删除“年龄”列数据
B.将“年龄”列含有中文字的记录删除
C.将“年龄”列数据转为文本类型
D.将“年龄”列含有中文字的记录修改为只包含数字的年龄
(2)将数据整理好后,为了统计0~18、19~35、36~60、61以上(含61)四个年龄段的某疾病患病人数占该疾病总患病人数的比例,并绘制如图b示图表,编写如下Python程序,请在划线处填入合适代码。
import pandas as pd
import matplotlib.pyplot as plt
df=pd.read_excel('data.xlsx')
tp=input('请输入疾病类型:')
df1=①     #筛选tp疾病的数据
count=[0] * 4
for i in df1.index:
  age=df.at[i, '年龄']
  if ②     :
    count[0]+=1
  elif age <=35:
    count[1] +=1
  elif age <=60:
    count[2] +=1
  else:
    count[3] +=1
x=['0-18', '19-35', '36-60', '61以上']
y=[]
for i in range(4):
  y.append( ③     )
plt.bar(x, y) #显示不同年龄段患该病的人数百分比
#设置图表其他参数,代码略
(3)观察图b,“疾病A”患病比例最大的年龄段为     。
(4)若想获取61岁及以上的人群中,患病率最高的10种疾病,编写如下程序。
def get_head10(df, age):
      
  return df.疾病.head(10)
print(get_head10(df, 61))
上述程序段中方框处可选代码为:①df = df.sort_values("年龄", ascending=False)
②df = df[df.年龄>=age] ③df = df.groupby("疾病", as_index=False).count()
则加框处应填代码的顺序依次为    。(单选,填字母)
A.①②③ B.①③②
C.②①③ D.②③①
15.某智能货架有一排货位,货位号从 0 开始编号,每个货位等宽。货架上可放置不同宽度(占 1~3 个货位)的箱子,箱子从左往右连续相邻摆放。每次放置箱子时,只能在货架上最后一个箱子的右侧放置新箱子。可以搬离中间的某个箱子,但该箱右侧所有箱子被自动左移。编写程序,模拟搬离或放置操作,操作结束后,输出当前货架上所有箱子的起始位置。请回答下列问题:
(1)若货架有5个箱子,状态如图所示,搬离第2个箱子后,当前货架上最后一个箱子的起始位置是    。
(2)实现上述功能的部分 Python 程序如下,请在划线处填入合适的代码。
#共有n 个箱子供操作,代码略
lst=[-1]*n
st=m=0
while True:
  '''操作序列如[''P1'', ''M0'',……. , ''E''],依次读取序列元素,存入变量 op,''P1''表示放置宽度为 1 的箱子,''M0''表示搬离第 1 个箱子,代码略'''
  if op[0]=="P":
    w=int(op[1:]) #表示箱子的宽度为 w
    lst[m]=st
    st=st+w
    ①   
  elif op[0]=="M":
    i = int(op[1:]) #表示第 i+1 个箱子将被搬离
    if lst[i+1] != -1:  #计算移动的距离
      dis=②   
    else:
      dis=st-lst[i]
    while lst[i+1]!= -1:
      lst[i]=lst[i+1]-dis
      i=i+1
    lst[i] = -1
    st=③   
    m =m - 1
  else:
    break
#输出当前货架上所有箱子的起始位置,代码略

展开更多......

收起↑

资源列表