相关试卷
-
1、某商场开展双11促销活动,活动规则如下:
①购买商品不超过100元,按9.5折结算;
②购买商品超过100元,其中100元按9.5折结算,超过100元的部分按9折结算;
使用Python程序计算实际支付费用res,顾客所选商品金额为m,下列选项中不正确的是( )
A.
if m <= 100:
res = m * 0.9
else:
res = 95 + (m - 100) * 0.9
B.
if m > 100:
res = 95 + (m - 100) * 0.9
else:
res = m * 0.95
C.
if m > 100:
res = 95 + (m - 100) * 0.9
if m <= 100
res = m * 0.95
D.
res = m * 0.95
if m > 100:
res = res + (m - 100) * 0.9
A、A B、B C、C D、D -
2、某编码包含了“设备类型、区域、场地、位置”等信息,最后一位为校验码,如图所示。
若编码“0200301112347”存储在变量s中,下列选项中能获取该编码“位置”信息的是( )
A、s[1:4] B、s[9:13] C、s[8:11] D、s[8:-1] -
3、小李使用计算机程序模拟“石头剪刀布”游戏:变量a、b代表不同玩家,数字0、1、2分别表示玩家出石头、剪刀和布对应的数值,下列表达式中能判断玩家a获胜的是( )A、a < b B、a == b - 1 or a == b - 2 C、a == b - 1 or a == b + 2 D、a == b + 1 or a == b - 2
-
4、某超市的两种商品在本周的总销售量为40个,已知A商品2元/个,B商品5元/个,两种商品的销售总额为185元,计算出两种商品的本周销售量。为解决该问题,小李设计算法如下:
①初始化A商品的销售量为0
②当A商品销售量小于等于40,执行以下步骤:
·计算B商品销售量 = 总销售量 - A商品销售量
·若两种商品总销售额等于185,则输出两种商品的本周销售量。
·x自增1,跳转到②并判断是否继续执行。将上述算法用流程图表示如图所示,其中虚线框内的部分流程为( )
A、B、
C、
D、
-
5、某超市的两种商品在本周的总销售量为40个,已知A商品2元/个,B商品5元/个,两种商品的销售总额为185元,计算出两种商品的本周销售量。为解决该问题,小李设计算法如下:
①初始化A商品的销售量为0
②当A商品销售量小于等于40,执行以下步骤:
·计算B商品销售量 = 总销售量 - A商品销售量
·若两种商品总销售额等于185,则输出两种商品的本周销售量。
·x自增1,跳转到②并判断是否继续执行。关于上述算法,下列说法不正确的是( )
A、该算法采用自然语言进行描述 B、该算法中包含了分支结构 C、解决此问题的算法属于枚举算法 D、该算法没有输入,不符合算法的特征 -
6、某二进制数x形如“1□0□1”,其中“□”表示该数位上的数字不确定,下列说法正确的是( )A、将x转换为十进制数后,无法确定该十进制数的奇偶 B、将x转换为十进制数后,十进制数一定小于等于27 C、二进制数x+1与x的位数可能不同 D、在二进制数x的末位添加一个“0”得到一个新数,该新数是x的10倍
-
7、萝卜快跑是百度推出的无人驾驶出租车服务,车上配备了激光雷达、摄像头等传感器用于获取路况数据。通过大量模拟和实际驾驶进行训练,萝卜快跑能对行驶过程中各种交通标识、行人、车辆等进行识别,以优化驾驶策略,保障行驶安全。注册用户可通过手机App查看出租车车速、电量等实时信息。当抵达目的地后,通过语音播报提醒用户勿遗忘随身物品。关于该无人驾驶服务中人工智能技术的应用,下列说法正确的是( )A、无人驾驶是以数据为驱动,通过不断试错选择规划路线 B、通过海量数据对无人驾驶进行训练,是联结主义的体现 C、无人驾驶能自动优化驾驶策略,说明机器一定比人更聪明 D、无人驾驶作为有智能的机器,不需要遵守人类道德伦理规范
-
8、萝卜快跑是百度推出的无人驾驶出租车服务,车上配备了激光雷达、摄像头等传感器用于获取路况数据。通过大量模拟和实际驾驶进行训练,萝卜快跑能对行驶过程中各种交通标识、行人、车辆等进行识别,以优化驾驶策略,保障行驶安全。注册用户可通过手机App查看出租车车速、电量等实时信息。当抵达目的地后,通过语音播报提醒用户勿遗忘随身物品。关于该无人驾驶服务中的数据安全,下列说法不正确的是( )A、为预防数据丢失,可以搭建异地容灾系统 B、对用户的数据进行加密处理有助于保护数据安全 C、黑客的入侵会引发行驶安全问题,但不涉及数据安全 D、不仅要保障数据存储介质不被损坏,还应该提高数据本身的安全
-
9、萝卜快跑是百度推出的无人驾驶出租车服务,车上配备了激光雷达、摄像头等传感器用于获取路况数据。通过大量模拟和实际驾驶进行训练,萝卜快跑能对行驶过程中各种交通标识、行人、车辆等进行识别,以优化驾驶策略,保障行驶安全。注册用户可通过手机App查看出租车车速、电量等实时信息。当抵达目的地后,通过语音播报提醒用户勿遗忘随身物品。关于“萝卜快跑”中的数据,下列说法正确的是( )A、摄像头获取交通标识图像时无需数字化,即可识别 B、语言播报过程是将模拟信号转换成数字信号 C、享受无人驾驶出租车服务的同时会产生新的数据 D、数据都以二进制方式存储,因此这些数据的表现形式相同
-
10、某工厂有两个生产车间,现要为两个车间生产的产品进行分组,以便后续进行检测。分组前先将每个车间每天生产的产品排在一起:先是第一车间第一天生产的产品,再是第二车间第一天生产的产品;接着是第一车间第二天和第二车间第二天生产的产品……。这些产品用正整数1,2,3,…进行编号。其中,第一车间产品用0表示,第二车间产品用1表示。连续排在一起的同一车间的产品可以视为一个“块”。
假设,有初始产品序列如下表:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
0
0
0
0
1
1
1
0
0
0
1
1
0
1
1
0
1
1
1
1
如编号1,2,3,4为第一车间第一天生产的产品块,5,6,7为第二车间第一天生产的产品块,依次类推。分组时,取每一块最左边的第一个产品组成一组,直至所有产品抽取完。注意,当取完一个车间的产品后,其左右两块同一车间的产品会合并成一个块。例如第一组抽取的产品是(序号):1,5,8,11,13,14,16,17,剩余产品是:
2
3
4
6
7
9
10
12
15
18
19
20
0
0
0
1
1
0
0
1
1
1
1
1
此时,剩余最左边编号是12,15,18的三块会合成同一块,那么第二组抽取的产品只有4个,分别是(序号):2,6,9,12。而后第三组抽取的产品是:3,7,10,15。第四组抽取的产品是4,18。第五组抽取的产品是19。第六组抽取的产品是20。所有产品抽完后,分组结束。
以下程序完成并输出了原始产品序列的分组情况,请回答以下问题:
(1)若产品序列是“001100010011”,则第二组抽取的产品序号是(用正整数按递增的顺序作答)。
(2)主程序对原始产品序列进行处理,输出了每次分组的结果。
对于题述产品序列,其输出的分组结果如下图所示,请将程序补充完整。
# 采集原始产品序列,如“001100010011”,并保存至变量 s 中,代码略
s = s + "." # 在产品序列串末尾放置一个点号,表示结束符
sel = [False] * len(s)
q, k, begin = [], 0, 0
for i in range(1, len(s)):
if (①):
q.append([begin, i-1, s[i-1]]) # 为 q 追加一个元素
begin = i
i = 0
cnt = len(s) – 1
while cnt > 0:
print("第" + str(i+1) + "组:", end="")
q2 = selection(q, 0, len(q))
i += 1;
print("")
q = mergence(q2, 0, len(q2))
(3)selection 函数实现了产品的抽取,请将程序补充完整。
def selection(q, head, tail):
global cnt # 定义 cnt 为全局变量,即与主程序 cnt 变量通用
q2 = []
while head < tail:
F = q[head]
head += 1
while ②:
F[0] += 1
print(F[0] + 1, end=" ")
cnt -= 1
sel[F[0]] = True
if F[0] == F[1]:
continue
③
q2.append(F)
return q2
(4)mergence 函数实现了产品抽取后剩余产品的调整,请将程序补充完整。
def mergence(q2, head2, tail2):
q = []
while head2 < tail2:
X = q2[head2]
head2 += 1
while head2 < tail2:
Y = q2[head2]
if X[2] == Y[2]:
④
head2 += 1
else:
break
q.append(X)
return q
-
11、已知某校高一年级第一、二学期期中、期末考试4次成绩存储在“exam. xlsx”中,如图1所示。教务管理员对历次考试中七门选考科目考试成绩(赋分)进行处理,本着分数优先原则,将平均分最高的两门科目作为备选科目,为高一学生选课提供参考.
图1
(1)若某生考试缺考则该科目分数标记为0,已知总分列是所有考试科目分数总和,请对数据进行整理,剔除缺考考生数据,划线处能实现该功能的语句是
import pandas as pd
df=pd. read_ excel("exam. xlsx")
df=
(2)计算每个同学的历次考试的平均成绩
gf=
若gf对象输出后图2所示,请为划线处选择合适的代码(单选,填字母)
A.df. groupby('姓名', as_ index=False). mean() B.df. groupby('姓名', as_ index=True). mean()
C.df. groupby('姓名'). mean() D.df. groupby('班级', as_ index=False). mean()
图2
(3)计算每个同学的两门优势学科,请在划线①②③处完善代码。
km=gf. columns[4:11]#获取七门选考科目学科名称
gf. insert(12,"优势学科","")
#在总分列后插入新的一列,列标题名为“优势学科”初始值为""
for i in gf.①:
subjectl=subject2=""
max1=max2=0
for j in range(0,len(km)):
②
if cj>max1:
③
subject1=km[j]
max2=max1
max1=cj
elif cj>max2:
subject2=km[j]
max2=cj
gf. at[i,"优势学科"]=subject1+subject2
-
12、有一个猜数字的魔术,魔术师让观众心中默想一个小于50的两位数,接着问该观众,在如图1所示的6张卡片中哪几张有他想的数。最后,魔术师总能准确地猜出这个数。
图1 图2
小温学习了信息编码相关知识后,很快发现了该魔术的奥秘。他发现卡片1中所有的数字转成二进制后最低位都是1,卡片2的所有数字转成二进制后倒数第二位(从最低位开始数第二位)的数字都是1,卡片3的所有数字转成二进制后倒数第三位(从最低位开始数第三位)的数字都是1……以此类推。现编写程序,验证小温的想法,运行结果如图2所示,程序代码如下,请回答下列问题。
def judge(a, i):#参数a代表需要验证卡片的数据列表,参数i代表卡片编号
flag=False; ans=0
for j in a:
k=j//2**(i-1)
ans+=①
if ans==len(a):
②
return flag
#生成6张卡片中值,并存储在a中a=[[1,3,5……47,49],[2,3,6……50],……]
for i in range(6):#依次验证卡片1到卡片6
if ③:
print('卡片'+str(i+1)+'验证成功')
(1)请在横线处填入合适的代码。
(2)小温的父亲的年龄在50岁以下,其年龄仅在卡片1、卡片3、卡片4、卡片6出现过,则小温父亲的年龄为(填数字)岁。
-
13、有如下Python程序段
s="01357987"; k=3; stack=[s[0]]
for char in s[1:]:
while stack[-1] > char and k > 0:
stack.pop() #删除 stack 列表的最后一个元素
k-=1
stack.append( char) #在 stack 列表的结尾插入元素 char
while k > 0:
stack.pop()
k-=1
while stack[0] == "0":
stack.pop(0)
print( stack)
执行该程序段后,stack的值是( )
A、['1','3','5','7'] B、['7','9','8','7'] C、['0','7','9','8','7'] D、['0,'1','3','5','7'] -
14、有如下程序段:
# 随机生成 5 个正整数并存入列表 s 中,代码略
def sort_indices(s) :
n=len(s)
y=[i for i in range(n)] # 生成序列 0 ~ n-1
for i in range(n-1) :
for j in range(n-i-1):
if s[y[j]]>=s[y [j+1]] :
y [j],y [j+1]=y [j+1],y[j]
return y
执行上述程序后,若返回的结果为[2,1,0,4,3],下列选项中,列表 s 中各元素值可能的是( )
A、[3,2,1,5,4] B、[4,2,1,5,3] C、[5,2,1,3,4] D、[3,2,5,1,4] -
15、某二分查找算法用于查找非降序序列arr中小于等于key的最后一个元素位置,python代码如下:
arr=[1,1,4,4,4,5,5,5]
key=int(input())
L=0; R=len(arr)-1
while (1) :
mid=(L+R+1)//2
if (2) :
L=mid+1
else:
R=mid-1
print((3) )
划线(1)(2)(3)处可供选择的语句有:
①L < R ②L<=R ③arr[mid] < key ④arr[mid]<=key ⑤L ⑥R
则正确的代码应为( )
A、①③⑤ B、①④⑥ C、②③⑤ D、②④⑥ -
16、某递归函数如下所示:
def hs(m):
if m<=1:
f=1
else:
f=hs(m-1)+hs(m-2)
return f
ans=0
for i in range(5):
if hs(i)%2==1:
ans+=1
print(ans)
程序运行后,输出的结果是( )
A、2 B、10 C、4 D、5 -
17、有如下Python程序段:
s="Hello World"; s2=""
for i in s:
if "A"<=i<="Z":
i=chr(ord(i)+ord("a")-ord("A"))
if "a"<=i<="z":
s2=chr((ord(i)-ord("a")+3)%26+ord("a"))+s2
else:
s2=i+s2
print(s2)
执行该程序段后,输出的结果为( )
A、gour rooh B、gourz roohk C、khoor zruog D、hoor ruog -
18、某 Python 代码段如下,
x = 142; y = 125; z = 120
res = 0
if x > y:
res = x
elif y> z:
res = res + z
res = res - 5
print (res)
执行该程序段后输出的结果是( )
A、115 B、137 C、140 D、157 -
19、变量a,b均为布尔型,下列Python表达式与not a or b等价的是( )A、not(a or b) B、not(a and b) C、a !=True or b!=False D、a==False and b==False
-
20、假设完全二叉树的树根为第1 层,树中第10 层有5 个叶子节点,则完全二叉树最多有多少个节点?( )A、2047 B、2048 C、2037 D、2038