浙江省普通高等学校招生2021年1月信息技术选考试卷

文档属性

名称 浙江省普通高等学校招生2021年1月信息技术选考试卷
格式 zip
文件大小 1.3MB
资源类型 试卷
版本资源
科目 信息技术(信息科技)
更新时间 2021-06-28 16:33:41

文档简介

浙江省普通高等学校招生2021年1月信息技术选考试卷
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1.(2021·浙江选考)下列关于信息与信息技术的描述,正确的是(  )
A.信息技术始于广播和电视的诞生
B.信息无处不在,是人类社会所特有的
C.信息技术就是计算机采集、处理、存储信息的技术
D.文字、语言、图形、图像、声音和形体动作都是信息的表达方式
2.(2021·浙江选考)下列关于信息安全的说法,正确的是。(  )
A.打开朋友转发的网页链接一定是安全的
B.安装了杀毒软件后电脑就不会感染病毒
C.数据加密是一种提高信息安全性的有效措施
D.手机的指纹识别解锁技术能确保手机所有信息的安全
3.(2021·浙江选考)用Access软件设计抗疫物资收发系统的数据库,其中已建好的“物资流向”数据表用于存储如图所示的数据。
发放序号 发放日期 领用单位 物资名称 数量 是否定向
20200101 2020.01. 29 街道办事处 医用口罩 1000 是
20200102 2020.02.12 疫情防控组 普通防护服 200 否
20200103 2020.02. 12 疫情防控组 体温枪 500 否
… … … … … …
下列关于“物资流向”数据表的描述,正确的是(  )
A.该数据表的字段数可能多于6个
B.该数据表的表名是不可修改的
C.该数据表中必定有一个字段的字段名为“发放序号”
D.图中“是否定向”列在该数据表中相应字段的数据类型一定是“是/否”
4.(2021·浙江选考)英文字符在计算机中有全角和半角之分。全角英文字符的内码由两个字节组成,第一个字节的值是A3H,第三个字节的值是其对应的半角内码值加上80H得到的。例如,半角字符“A”的内码值是41H,则全角字符“A”的内码值是A3C1H。用UltraEdit软件查看字符内码,部分界面如图所示。
下列说法错误的是(  )
A.全角字符“U”的内码值是A3D5H
B.全角字符“Q”的内码值是A3D1H
C.半角字符“P”的内码值是50H
D.全角字符“a”的内码值是A3F1H
5.(2021·浙江选考)使用GoldWave软件编辑某音频文件,部分界面如图所示。
下列说法正确的是(  )
A.执行“删除”操作后,音频时长减少了3秒
B.先执行“复制”操作,再执行“粘贴”操作后,音频时长增加了6秒
C.执行“静音”操作后直接保存,音频文件的存储容重约为原来的3/10
D.执行“剪裁”操作后直接保存,音频文件的存储容量约为原来的7/10
6.(2021·浙江选考)将一幅未经压缩的1024×800像素、24位真彩色的BMP图像另存为JPEG格式文件,存储后的JPEG文件存储容量为152KB,则BMP文件与JPEG文件的存储容量比约为(  )
A.5:1 B.16:1 C.63:1 D.126:1
7.(2021·浙江选考)VB表达式3+9 Mod 3 * 2的值是(  )
A.0 B.3 C.6 D.9
8.(2021·浙江选考)某算法的部分流程图如图所示。执行这部分流程,若输入s的值为“picture”,则输出的c、i值分别为(  )
A."c",3 B."e",4 C."t",3 D."t",4
9.(2021·浙江选考)将正整数n分解为两个正整数之和,其中一个能被3整除,另一个能被7整除。统计分解方法共有几种的VB程序段如下:
cnt = 0:i = 7
Do While i < n
Loop
Text1. Text = Str(cnt)
方框中的代码由以下三部分组成:
①i = i + 7 ②j = n - i ③If j Mod 3 = 0 Then cnt = cnt + 1
下列选项中,代码顺序正确的是(  )
A.①③② B.②③① C.③②① D.①②③
10.(2021·浙江选考)有如下VB程序段:
s1 = "BGR": s2= "VBPROGRAM"
i = 1:j = 1:s3 = ""
Do While i < = Len(s1) And j < = Len(s2)
If Mid(s1,i,1) = Mid(s2,j,1)Then
i = i + 1
Else
s3 = s3 + Mid(s2,j,1)
End If
j = j + 1
Loop
执行该程序段后,变量s3的值是(  )
A."VPO" B."VPRO" C."VPOAM" D."VPROAM"
11.(2021·浙江选考)采用冒泡排序算法对某数据序列进行排序,经过第一轮排序后的结果是“2,8,3,9,5,6,7”,那么原数据序列不可能的是(  )
A.8,3,9,5,2,7,6 B.8,3,9,2,6,5,7
C.8,2,9,3,5,7,6 D.8,3,2,9,6,5,7
12.(2021·浙江选考)某对分查找算法的VB程序段如下:
'随机产生包含20个整型元素的升序序列,依次存入数组a.代码略
i = 1:j = 20:s = ""
key = Val(Text1. Text)
Do While i < = j
m = (i + j)\2
s = s + Str(a(m))
If a(m)= key Then Exit Do 'Exit Do表示退出循环
If a(m)> key Then j = m - 1 Else i = m + 1
Loop
Text2. Text = s
在文本框Text1中输入待查找数,执行该程序段后,下列选项中,文本框Text2中显示的内容不可能的是(  )
A.78 50 46 33 B.51 37 41 48 C.74 50 46 51 D.73 83 87 89
二、非选择题(本大题共4小题,4+8+7+7,共26分)
13.(2021·浙江选考)王老师收集了学校男生寝室三项检查成绩的数据,并使用Excel软件对数据进行处理,如图a所示。
图a
请回答下列问题:
(1)区域L4:L93的数据是通过公式计算得到的,在L4单元格中输入公式   ,再使用自动填充功能完成区域L5:L93的计算。(提示:总分=内务分×20%+卫生分×30%+纪律分×50%)
(2)寝室号的编制规则是:楼号(第1字符)+楼层号(第2字符)+房间号(第3、4字符)。若要筛选出各男生寝室楼的3楼寝室,筛选方式设置如图b所示,则①处应为    (选填:包含/等于/开头是)。
图b
(3)在新工作表中计算各年级“内务分”、“卫生分”和“纪律分”的平均分后,创建了如图c所示的图表。结合图a和图c,下列说法正确的有 (多选,填字母)。
图c
A.由图c可知男生寝室纪律最好的是高三,内务和卫生最好的是高二
B.更新数据导致高一“内务分”的平均分发生变化,图表不会随之改变
C.对区域L2:L3执行“合并单元格”操作,合并后的单元格名称为L2
D.在图a所示工作表的“寝室号”列前插入一列,“总分”列的数值会发生改变
14.(2021·浙江选考)小明制作主题为“自然风光”的多媒体作品。首先使用Photoshop软件处理图像,然后使用Flash软件制作动画作品。请回答下列问题:
(1)处理图像的部分界面如图a所示。下列说法正确的有 (多选,填字母)。
图a
A.将“背景.psd”文件存储为BMP格式后,BMP文件包含“山脉 副本”图层的内容
B.能将“天空”图层移动到“背景”图层的下方
C.将“白云”图层的不透明度改为40%,会影响图像的呈现效果
D.可复制“山脉”图层的图层样式并粘贴到“树林”图层
E.将“图像大小”改为550×400像素后,所有图层中内容的大小均发生变化
(2)制作动画作品的部分界面如图b所示。在“控制”图层的第   帧插入关键帧后,测试场景,该图层的声音在场景动画播放两秒后停止播放。由此可见,“控制”图层中声音的同步属性为   (选填:事件/开始/数据流)。
图b
(3)在“控制”图层的第60帧上添加了动作脚本“stop(  )”,该帧中的“海洋”按钮实例上添加的动作脚本是“on(release){gotoAndStop(“海洋”,1);play(  );}”。将该按钮实例上的动作脚本:替换为 (多选,填字母)后,按钮实现的交互效果不变。
A.on(release){play(  );}
B.on(release){play(“海洋”,1);}
C.on(release)﹛gotoAndPlay(1);)
D.on(release)﹛gotoAndPlay(“海洋”,1);}
(4)“蝴蝶”图层中的蝴蝶是由“蝴蝶飞舞”元件所生成的实例,该元件部分编辑界面如图c所示,各关键帧中内容均为形状,实现了蝴蝶翅膀扇动一次的动画效果。测试场景时,动画中蝴蝶的翅膀仅扇动了一次,可能的原因是   。
图c
15.(2021·浙江选考)根据申请人的QA和QB值,从m个申请人中挑选2人组队参加某挑战赛。条件一是2人的QA值都必须大于指定参数h;条件二是2人的QA值之差(较大值减较小值)小于h。在满足上述两个条件的所有2人组合中,挑选QB值之和最大的一个组合。(QA、QB和h的值均为正整数)
编写VB程序,实现上述挑选功能。运行程序,在文本框Text1中输入参数h后,单击“挑选”按钮Command1,在列表框List1中按QA值降序显示满足条件一的申请人信息,最后在标签Label1中显示组队结果。程序运行界面如图所示。
请回答下列问题:
(1)若要清空列表框List1,能实现该功能的语句是   (单选,填字母:A .List1. Caption = "" / B
.List1.Text = "" / C .List1. Clear)。
(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
Const m = 20 'm表示申请人个数
Dim id(m)As Integer, qa(m)As Integer, qb(m)As
Integer
Private Sub Command1_Click(  )
Dim i As Integer j As Integer,
k As Integer, t As Integer, max As Integer
Dim h As Integer, n As
Integer '变量n存储满足条件一的申请人个数
Dim s As String
'读取全部申请人的编号、QA和QB值,分别存入数组id、qa和qb,代码略
h = Val(Text1. Text):n = m
For i = 1 To m — 1
k = i
For j = i + 1 To m
If qa(j)> qa(k)Then k = j
Next j
If Then
If k <> i Then
t = qa(i):qa(i) = qa(k):qa(k) = t
t = qb(i):qb(i) = qb(k):qb(k) = t
t = id(i):id(i) = id(k):id(k) = t
End If
Else
n =   
Exit For 'Exit For表示退出循环
End If
Next i
'满足条件一的申请人信息显示在列表框Listl中,代码略
max = 0:s = “没有满足条件的组合”
'在满足条件的组合中,寻找QB值之和最大的组合,若有并列,只保留第一个
For i = n To 2 Step - 1
j = i - 1
Do While   
If qb(i)+ qb(j) > max Then
s = "组队结果:" + Str(id(i)) + "号," + Str(id(j)) + "号"
   
End If
j = j - 1
Loop
Next i
Label1. Caption = s
End Sub
(3)程序中加框处代码有错,请改正。
16.(2021·浙江选考)某物品柜有5层,每层有10个格子,每个格子只能放一个物品。第1层格子编号依次为1到10,第2层格子编号依次为11到20,依此类推。有9组物品(组号1~9),每组有2到8个物品,物品总数不超过50个。将9组物品按组号由小到大依次放入柜中,放置方式有两种:
1)整体放置。按格子编号由小到大的次序查找第一个可放置该组全部物品的空区域(空区域是指从某个空格子开始的同层连续的所有空格子),若找到,则在该空区域居中、连续放置该组全部物品,如图a所示。
2) 零散放置。若所有空区域格子数都小于该组物品数,则将该组每个物品依次放置在当前编号最小的空格子中,如图b所示。
编写VB程序,模拟物品放置。运行程序,在列表框List1中显示每组物品的组号和数量,单击“放置”按钮Command1,在列表框List2中显示每组物品放置结果。程序运行界面如图c所示。
图c
(1)若第1、第2组的物品数分别为6和2,则放置第2组物品的格子编号依次为   。
(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
Constm = 50 'm表示物品柜的格子数
Const w = 10 'w表示物品柜每层的格子数
Const n = 9 'n表示物品的组数
'f(i)存储第i个格子开始的同层连续的所有空格子数。f(i)为0表示第i个格子不是空格子
Dim f(m)As Integer
Dim a(n)As Integer
Private Sub Form_Load(  )
'读取各组物品的个数依次存入数组a,并在List1中显示
'代码略
End Sub
Function getpos(r As Integer As Integer
'按格子编号从小到大的次序,查找空格子数≥r的第一个空区域
'若找到,返回该空区域的起始编号,否则返回 -1
'代码略
End Function
Private Sub Command1_Click(  )
Dim i As Integer,j As
Integer, k As Integer,p As
Integer,v As Integer
Dim s As String
For i = 1 To m
f(i)
= w -(i -1)Mod
w 'w为10,表示每层的格子数
Next i
v = 1
For i = 1 To n
s =
""
p =   
If p = - 1
Then
j = 1
Do While j < = a(i)
If f(v)
<> 0 Then
s = s + Str(v)
f(v)=
j = j + 1
End If
   
Loop
Else
k =(f(p)- a(i)) \ 2
For j = k To 1
Step - 1
f(p)
= j
p = p + 1
Next j
For j =   
f(j)
= 0
s = s + Str(j)
Next j
End If
List2. AddItem "第" + Str(i) + "组:" + s
Next i
End Sub
答案解析部分
1.【答案】D
【知识点】信息及其特征;信息技术的概念与关键技术;信息表达方式与表达技术
【解析】【解答】自从有了人类就有了信息技术,选项A错误;信息无处不在,但在其它生物之间也有信息的传递,选项B错误;信息技术是指一切与信息的获取加工表达交流管理和评价等有关的技术,不仅仅是计算机采集处理存储技术,选项C错误;文字、语言、图形、图像、声音和形体动作都是信息的表达方式,选项D正确。故答案选D。
【分析】本题考查的是信息及信息技术的相关知识。信息是指以声音、语言、文字、图像、动画、气味等方式所表示的实际内容,是事物的运动状态及其状态变化的方式。凡是能扩展人的信息功能的技术,都可以称作信息技术。
2.【答案】C
【知识点】信息系统安全防护;个人信息及安全防范
【解析】【解答】选项A:朋友转发的网页链接并不一定是安全的;选项B:杀毒软件不能查杀所有病毒,安装了杀毒软件后电脑还有可能会感染病毒;选项C:数据加密是一种提高信息安全性的有效措施;选项D:手机的指纹识别解锁技术只能解决手机不被别人非法打开,并不能确保手机所有信息的安全。故答案选C。
【分析】本题考查的是信息安全。信息系统的安全防护有数据与设备的加密、密码的设置、身份认证与安全、数据备份等。
3.【答案】A
【知识点】数据表、字段、记录的编辑;字段的数据类型
【解析】【解答】选项A:字段数可以根据需要增加;选项B:在数据表没有打开状态下,表名可以修改;选项C:字段名称可以自己定义,不一定要有一个字段的字段名为“发放序号”;选项D:“是否定向”字段可以是“是/否”,也可以是数字或文本。故答案选A。
【分析】本题考查的是数据库对信息的管理。Access提供的主要字段数据类型有:文本、数字、日期/时间、货币、自动编号、是/否等;自动编号是一个唯一的顺序号(递增或随机)、用户无法直接修改其值。“是/否”类型存储逻辑值,仅能取两个值;任何指定为数字数据类型的字型可以设置成“字节”、“整数”、“长整数”、“单精度数”、“双精度数”、“同步复制ID”、“小数”五种类型。在Access中通常默认为“双精度数”。
4.【答案】D
【知识点】字符编码
【解析】【解答】由图可知,半角字符“a”的内码为61H,全角字符“U”的内码是A3 D5H,全角字符“P”的内码为:A3 D0H,则“Q”的内码为:A3 D0H+1H= A3 D1H,选项A、B正确;根据题干全角半角转换规则可知,半角字符“P”内码为:D0H-80H=50H,选项C正确;第一个字节的值是A3H,第二个字节为:61H+80H=E1H,所以全角字符“a”的内码值为A3E1H,选项D错误。故答案选D。
【分析】本题考查的是字符编码。使用UltraEdit软件查看字符内码时,得到的是十六进制数,全角字符如同汉字,占用两个字节,半角字符占用一个字节(即ASCII码)。
5.【答案】A
【知识点】声音素材的基本处理;声音、图像、视频编码
【解析】【解答】由图可知,当前音频文件为立体声,选中的也是立体声,选中3秒,执行“删除”操作后,音频时长减少了3秒,选项A正确;执行“复制”“粘贴”操作,音频时长增加3秒,选项B错误;“静音”操作不会改变文件大小,选项C错误;总音频时长为10s,执行“剪裁”操作后,留下的是选中的3秒,时长变为原来的3/10,其他参数不变的情况下,容量为原来的3/10,选项D错误。故答案选A。
【分析】本题考查的是GoldWave对音频的处理。GoldWave软件可以对音频进行删除、剪裁、设置静音、插入静音或合成等操作。
6.【答案】B
【知识点】声音、图像、视频编码
【解析】【解答】原图像存储量=1024*800*24/8/1024=2400KB,压缩后文件大小为152KB,所以存储容量比约为2400:152≈16:1。选项B正确。
【分析】本题考查的是图像文件大小计算。未经压缩的图像大小:存储容量=水平像素×垂直像素×每个像素色彩所需位数/8(单位:字节)
7.【答案】C
【知识点】运算符、基本运算与表达式
【解析】【解答】表达式3+9 Mod 3 * 2,先算3*2=6,后算9 mod 6=3,最后算3+3=6。故答案选C。
【分析】本题考查的是VB表达式。运算符优先级别:*>mod>+。
8.【答案】A
【知识点】流程图识读
【解析】【解答】对输入的字符逐一跟前一个字符比较,直到小于前一个字符,此时输出该字符c及i的值。若输入s的值为“picture”,“p”>“i”>“c”<“t”,所以当取到字符c为“c”时,跳出循环,此时i=3。故答案选A。
【分析】本题考查的是对流程图的识读。
9.【答案】B
【知识点】枚举算法及程序实现
【解析】【解答】本题程序先枚举正整数n一个能被7整除的加数i,然后计算另一个加数j=n-i,最后判断j能否被3整除。如果能被整数,则说明i和j符合,分解方法加1(cnt+1),代码为:If j Mod 3=0 Then cnt=cnt+1。接着枚举下一个组合,使得j满足能被7整除,j=j+7。故答案选B。
【分析】本题考查的是枚举算法。枚举算法就是按问题本身的性质,列举所有可能的结果,并逐一判断,排除其中不符合要求的结果。
10.【答案】B
【知识点】分支结构语句及程序实现;循环结构语句及程序实现
【解析】【解答】程序执行过程中s3变化如下:
循环次数 i Mid(s1,i,1) j Mid(s2,j,1) s3
1 1 B 1 V V
2 1 B 2 B V
3 2 G 3 P VP
4 2 G 4 R VPR
5 2 G 5 O VPRO
6 2 G 6 G VPRO
7 3 R 7 R VPRO
8 4 i> Len(s1)退出循环
故答案选B。
【分析】本题考查的是VB循环与选择语句的综合应用。
11.【答案】D
【知识点】排序算法及程序实现
【解析】【解答】8,3,9,5,2,7,6从后往前冒泡,按从升序排列,排序后为:2,8,3,9,5,6,7,选项A可能;8,3,9,2,6,5,7从后往前冒泡,按从升序排列,排序后为:2,8,3,9,5,6,7,选项B可能;8,2,9,3,5,7,6从后往前冒泡,按从升序排列,排序后为:2,8,3,9,5,6,7,选项C可能;8,3,2,9,6,5,7从后往前冒泡,按从升序排列,排序后为:2,8,3,5,9,6,7,选项D不可能。故答案选D。
【分析】本题考查的是冒泡排序。冒泡排序,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来,走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
12.【答案】C
【知识点】查找算法及程序实现
【解析】【解答】20个数据最多查找次数为 Log 2 20+1=5次(向下取整),已知数组a升序排列。
选项A:第一次找到78,第二次找到50,说明key值比78小往左半部查找,第三次找到46,说明key值比46小,第四次找到33,可能。
选项B:第一次找到51,第二次找到37,说明key值比51小往左半部查找,第三次找到41,说明key值比37大,说明key值比41大,可能。
选项C:第一次找到74,第二次找到50,说明key值比74小往左半部查找,第三次找到46,说明key值比50小,第四次找到51,前后矛盾,不可能。
选项D:第一次找到73,第二次找到83,说明key值比73大往右半部查找,第三次找到87,说明key值比87大,第四次找到89大,可能。
故答案选C。
【分析】本题考查的是对分查找。对分查找的基本思路:在有序的数据序列中(一般放在数组中),首先把查找的数据与数组中间位置的元素进行比较,若相等,则查找成功并退出查找;否则,根据数组元素的有序性,确定数据应在数组的前半部分还是在后半部分查找;在确定了新的查找范围后,重复进行以上比较,直到找到或未找到为止。
13.【答案】(1)=E4*0.2+H4*0.3+K4*0.5或=E4*20%+H4*30%+K4*50%或=SUM(C4:D4)*0.2+SUM(F4:G4)*0.3+SUM(I4:J4)*0.5或等价表达式
(2)开头是
(3)A;C
【知识点】表格数据的处理与计算;数据分析
【解析】【解答】(1)L列是计算对应E列、H列和K列的总分,根据提示公式可知,L4中输入的公式为:=E4*0.2+H4*0.3+K4*0.5或其他等价答案;
(2)由寝室号编排规则可知,寝室号第2个字符为楼层号,要筛选出各男生寝室楼的3楼寝室,只需查找第二个字符为3即可,“ ”表示一个字符,故①处为:开头是;
(3)由图表可知男寝室纪律最好的是高三,内务和卫生最好的是高二,选项A正确;如果建立图表的数据区域的数据发生了变化,则图表也会发生变化,选项B错误;对区域L2:L3执行“合并单元格”操作,合并后的单元格名称为L2,选项C正确;“总分”使用公式计算且引用的单元格为相对地址,故在工作表的“寝室号”列前插入一列,“总分”列的数值不会发生变化,选项D错误。故答案选AC。
【分析】本题考查的是Excel中公式与函数的应用、数据的筛选以及图表的分析。Excel中的运算公式要以等号“=”开头,后面是由单元格地址、运算符和常量组成的一个表达式。对选中的数据系列创建了图表后,数据与图表之间就建立了关联,修改其中的数据,图表也会随之自动调整。对数据的筛选分为“自动筛选”和“高级筛选”。通过对数据筛选条件的设置,可以筛选出所需的数据。
14.【答案】(1)C;D;E
(2)25;数据流
(3)A;D
(4)“蝴蝶飞舞”元件“翅膀”图层的第5帧添加了动作脚本“stop(  );”或同等表述
【知识点】图层及图层的基本操作;常用影片控制函数的应用;多媒体作品的调试与递交;声音同步属性设置
【解析】【解答】(1)“山脉 副本”图层是隐藏的,存储为BMP格式后不可见,选项A错误;将“天空”图层移动到“背景”图层后,“天空”图层内容会被挡住,选项B错误;“白云”图层有内容,修改其不透明度,会影响图像的呈现效果,选项C正确;图层可以复制,选项D正确;更改“图像大小”会改变所有图层的大小,选项E正确。故答案选CDE;
(2)要使声音在场景动画播放两秒后停止播放,需要在播放的两秒后插入关键帧。由图可知帧频为12fps,则帧数为12*2=24,所以要在第25帧处插入关键帧;
事件:声音会和某一个事件同步发生。事件声音会从它的开始关键帧开始播放并贯穿整个事件的全过程,事件声音独立于时间轴。数据流:“数据流”方式的声音将会严格与时间轴同步。如果动画停止,流声音也会立即停止。所以“控制”图层中声音的同步属性为
数据流。
(3)play命令的主要功能就是能让停止的动画继续播放,它没有任何参数,选项A正确,选项B错误;gotoAndStop("场景名",帧)转到场景中指定的帧停止播放,若未指定场景则在当前场景中指定帧播放,此时场景名参数可忽略,由于当前场景是“草原”,选项C错误,选项D正确。故答案选AD;
(4)观察图c可知在第5帧处有“α”标记,可能是由于“蝴蝶飞舞”元件“翅膀”图层的第5帧添加了动作脚本“stop(  );”。
【分析】本题考查的是Photoshop及flash相关操作。图层的基本操作有新建图层、重命名图层、删除图层、调整图层的叠放顺序、设置图层不透明度、添加图层样式等。
15.【答案】(1)C
(2)i - 1;j > = 1 And qa(j)- qa(i) < h或j > 0 And Abs(qa(i)-qa(j)) < h 或等价表达式;max = qb(i) + qb(j)
(3)qa(k) > h
【知识点】排序算法及程序实现
【解析】【解答】(1)清空列表框使用Clear方法。故答案为:C。
(2)第一空:先对满足QA大于h从大到小排序,由For i=n to 2 及后代码可知n是符合条件一的人数,故①处为:i-1(第i个开始不符合条件一);
第二空:接下来从排好序的前i-1人找出符合条件二,从中找出QB值之和最大组合,故②处为j>=1 and qa(j)-qa(i)h或其它等价答案(从i到1之间找QB值之和最大组合);
第三空:如果QB值之和大于max则更新max,故③处为:max=qb(i)+qb(j)。
(3)对满足QA大于h从大到小排序,采用的是选择排序,取出的最大值的下标为k,如果最大值大于h才进行交换,故应改为:qa(k)>h。
【分析】本题主要考查的是对VB程序分析。
16.【答案】(1)1 2或1,2
(2)getpos(a(i));v = v + 1;p To p + a(i)— 1
【知识点】过程与自定义函数;查找算法及程序实现
【解析】【解答】(1)第1组物品有6个,按整体放置的规则,则占用3、4、5、6、7、8格,第2组物品有2个,第一层的第1、2格子连续可以满足摆放。故答案为:1、2。
(2)第一空:程序开始选查找有无空区域,故①处答案为:getpos(a(i));
第二空:由If p=-1 then可知,没有空区域,接下来是零散放置,物品依次放置在当前编号最小的空格子,放好后最小编号要往后移动,故②处答案为:v=v+1;
第三空:如果有空区域,找到居中、连续摆放,由getpos(  )函数注释可知返回的p值是空区域的起始编号,经过for j=k to 1 step -1循环后,p变为该层的空区域的摆放物品的起始编号,编号从p到p+a(i)-1全部摆放第i组物品,并标上不是空格子(数组f为0表示不是空格子),故③处答案为:p to p+a(i)-1。
【分析】本题主要考查的是自定义函数的应用以及对查找算法的分析。
1 / 1浙江省普通高等学校招生2021年1月信息技术选考试卷
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1.(2021·浙江选考)下列关于信息与信息技术的描述,正确的是(  )
A.信息技术始于广播和电视的诞生
B.信息无处不在,是人类社会所特有的
C.信息技术就是计算机采集、处理、存储信息的技术
D.文字、语言、图形、图像、声音和形体动作都是信息的表达方式
【答案】D
【知识点】信息及其特征;信息技术的概念与关键技术;信息表达方式与表达技术
【解析】【解答】自从有了人类就有了信息技术,选项A错误;信息无处不在,但在其它生物之间也有信息的传递,选项B错误;信息技术是指一切与信息的获取加工表达交流管理和评价等有关的技术,不仅仅是计算机采集处理存储技术,选项C错误;文字、语言、图形、图像、声音和形体动作都是信息的表达方式,选项D正确。故答案选D。
【分析】本题考查的是信息及信息技术的相关知识。信息是指以声音、语言、文字、图像、动画、气味等方式所表示的实际内容,是事物的运动状态及其状态变化的方式。凡是能扩展人的信息功能的技术,都可以称作信息技术。
2.(2021·浙江选考)下列关于信息安全的说法,正确的是。(  )
A.打开朋友转发的网页链接一定是安全的
B.安装了杀毒软件后电脑就不会感染病毒
C.数据加密是一种提高信息安全性的有效措施
D.手机的指纹识别解锁技术能确保手机所有信息的安全
【答案】C
【知识点】信息系统安全防护;个人信息及安全防范
【解析】【解答】选项A:朋友转发的网页链接并不一定是安全的;选项B:杀毒软件不能查杀所有病毒,安装了杀毒软件后电脑还有可能会感染病毒;选项C:数据加密是一种提高信息安全性的有效措施;选项D:手机的指纹识别解锁技术只能解决手机不被别人非法打开,并不能确保手机所有信息的安全。故答案选C。
【分析】本题考查的是信息安全。信息系统的安全防护有数据与设备的加密、密码的设置、身份认证与安全、数据备份等。
3.(2021·浙江选考)用Access软件设计抗疫物资收发系统的数据库,其中已建好的“物资流向”数据表用于存储如图所示的数据。
发放序号 发放日期 领用单位 物资名称 数量 是否定向
20200101 2020.01. 29 街道办事处 医用口罩 1000 是
20200102 2020.02.12 疫情防控组 普通防护服 200 否
20200103 2020.02. 12 疫情防控组 体温枪 500 否
… … … … … …
下列关于“物资流向”数据表的描述,正确的是(  )
A.该数据表的字段数可能多于6个
B.该数据表的表名是不可修改的
C.该数据表中必定有一个字段的字段名为“发放序号”
D.图中“是否定向”列在该数据表中相应字段的数据类型一定是“是/否”
【答案】A
【知识点】数据表、字段、记录的编辑;字段的数据类型
【解析】【解答】选项A:字段数可以根据需要增加;选项B:在数据表没有打开状态下,表名可以修改;选项C:字段名称可以自己定义,不一定要有一个字段的字段名为“发放序号”;选项D:“是否定向”字段可以是“是/否”,也可以是数字或文本。故答案选A。
【分析】本题考查的是数据库对信息的管理。Access提供的主要字段数据类型有:文本、数字、日期/时间、货币、自动编号、是/否等;自动编号是一个唯一的顺序号(递增或随机)、用户无法直接修改其值。“是/否”类型存储逻辑值,仅能取两个值;任何指定为数字数据类型的字型可以设置成“字节”、“整数”、“长整数”、“单精度数”、“双精度数”、“同步复制ID”、“小数”五种类型。在Access中通常默认为“双精度数”。
4.(2021·浙江选考)英文字符在计算机中有全角和半角之分。全角英文字符的内码由两个字节组成,第一个字节的值是A3H,第三个字节的值是其对应的半角内码值加上80H得到的。例如,半角字符“A”的内码值是41H,则全角字符“A”的内码值是A3C1H。用UltraEdit软件查看字符内码,部分界面如图所示。
下列说法错误的是(  )
A.全角字符“U”的内码值是A3D5H
B.全角字符“Q”的内码值是A3D1H
C.半角字符“P”的内码值是50H
D.全角字符“a”的内码值是A3F1H
【答案】D
【知识点】字符编码
【解析】【解答】由图可知,半角字符“a”的内码为61H,全角字符“U”的内码是A3 D5H,全角字符“P”的内码为:A3 D0H,则“Q”的内码为:A3 D0H+1H= A3 D1H,选项A、B正确;根据题干全角半角转换规则可知,半角字符“P”内码为:D0H-80H=50H,选项C正确;第一个字节的值是A3H,第二个字节为:61H+80H=E1H,所以全角字符“a”的内码值为A3E1H,选项D错误。故答案选D。
【分析】本题考查的是字符编码。使用UltraEdit软件查看字符内码时,得到的是十六进制数,全角字符如同汉字,占用两个字节,半角字符占用一个字节(即ASCII码)。
5.(2021·浙江选考)使用GoldWave软件编辑某音频文件,部分界面如图所示。
下列说法正确的是(  )
A.执行“删除”操作后,音频时长减少了3秒
B.先执行“复制”操作,再执行“粘贴”操作后,音频时长增加了6秒
C.执行“静音”操作后直接保存,音频文件的存储容重约为原来的3/10
D.执行“剪裁”操作后直接保存,音频文件的存储容量约为原来的7/10
【答案】A
【知识点】声音素材的基本处理;声音、图像、视频编码
【解析】【解答】由图可知,当前音频文件为立体声,选中的也是立体声,选中3秒,执行“删除”操作后,音频时长减少了3秒,选项A正确;执行“复制”“粘贴”操作,音频时长增加3秒,选项B错误;“静音”操作不会改变文件大小,选项C错误;总音频时长为10s,执行“剪裁”操作后,留下的是选中的3秒,时长变为原来的3/10,其他参数不变的情况下,容量为原来的3/10,选项D错误。故答案选A。
【分析】本题考查的是GoldWave对音频的处理。GoldWave软件可以对音频进行删除、剪裁、设置静音、插入静音或合成等操作。
6.(2021·浙江选考)将一幅未经压缩的1024×800像素、24位真彩色的BMP图像另存为JPEG格式文件,存储后的JPEG文件存储容量为152KB,则BMP文件与JPEG文件的存储容量比约为(  )
A.5:1 B.16:1 C.63:1 D.126:1
【答案】B
【知识点】声音、图像、视频编码
【解析】【解答】原图像存储量=1024*800*24/8/1024=2400KB,压缩后文件大小为152KB,所以存储容量比约为2400:152≈16:1。选项B正确。
【分析】本题考查的是图像文件大小计算。未经压缩的图像大小:存储容量=水平像素×垂直像素×每个像素色彩所需位数/8(单位:字节)
7.(2021·浙江选考)VB表达式3+9 Mod 3 * 2的值是(  )
A.0 B.3 C.6 D.9
【答案】C
【知识点】运算符、基本运算与表达式
【解析】【解答】表达式3+9 Mod 3 * 2,先算3*2=6,后算9 mod 6=3,最后算3+3=6。故答案选C。
【分析】本题考查的是VB表达式。运算符优先级别:*>mod>+。
8.(2021·浙江选考)某算法的部分流程图如图所示。执行这部分流程,若输入s的值为“picture”,则输出的c、i值分别为(  )
A."c",3 B."e",4 C."t",3 D."t",4
【答案】A
【知识点】流程图识读
【解析】【解答】对输入的字符逐一跟前一个字符比较,直到小于前一个字符,此时输出该字符c及i的值。若输入s的值为“picture”,“p”>“i”>“c”<“t”,所以当取到字符c为“c”时,跳出循环,此时i=3。故答案选A。
【分析】本题考查的是对流程图的识读。
9.(2021·浙江选考)将正整数n分解为两个正整数之和,其中一个能被3整除,另一个能被7整除。统计分解方法共有几种的VB程序段如下:
cnt = 0:i = 7
Do While i < n
Loop
Text1. Text = Str(cnt)
方框中的代码由以下三部分组成:
①i = i + 7 ②j = n - i ③If j Mod 3 = 0 Then cnt = cnt + 1
下列选项中,代码顺序正确的是(  )
A.①③② B.②③① C.③②① D.①②③
【答案】B
【知识点】枚举算法及程序实现
【解析】【解答】本题程序先枚举正整数n一个能被7整除的加数i,然后计算另一个加数j=n-i,最后判断j能否被3整除。如果能被整数,则说明i和j符合,分解方法加1(cnt+1),代码为:If j Mod 3=0 Then cnt=cnt+1。接着枚举下一个组合,使得j满足能被7整除,j=j+7。故答案选B。
【分析】本题考查的是枚举算法。枚举算法就是按问题本身的性质,列举所有可能的结果,并逐一判断,排除其中不符合要求的结果。
10.(2021·浙江选考)有如下VB程序段:
s1 = "BGR": s2= "VBPROGRAM"
i = 1:j = 1:s3 = ""
Do While i < = Len(s1) And j < = Len(s2)
If Mid(s1,i,1) = Mid(s2,j,1)Then
i = i + 1
Else
s3 = s3 + Mid(s2,j,1)
End If
j = j + 1
Loop
执行该程序段后,变量s3的值是(  )
A."VPO" B."VPRO" C."VPOAM" D."VPROAM"
【答案】B
【知识点】分支结构语句及程序实现;循环结构语句及程序实现
【解析】【解答】程序执行过程中s3变化如下:
循环次数 i Mid(s1,i,1) j Mid(s2,j,1) s3
1 1 B 1 V V
2 1 B 2 B V
3 2 G 3 P VP
4 2 G 4 R VPR
5 2 G 5 O VPRO
6 2 G 6 G VPRO
7 3 R 7 R VPRO
8 4 i> Len(s1)退出循环
故答案选B。
【分析】本题考查的是VB循环与选择语句的综合应用。
11.(2021·浙江选考)采用冒泡排序算法对某数据序列进行排序,经过第一轮排序后的结果是“2,8,3,9,5,6,7”,那么原数据序列不可能的是(  )
A.8,3,9,5,2,7,6 B.8,3,9,2,6,5,7
C.8,2,9,3,5,7,6 D.8,3,2,9,6,5,7
【答案】D
【知识点】排序算法及程序实现
【解析】【解答】8,3,9,5,2,7,6从后往前冒泡,按从升序排列,排序后为:2,8,3,9,5,6,7,选项A可能;8,3,9,2,6,5,7从后往前冒泡,按从升序排列,排序后为:2,8,3,9,5,6,7,选项B可能;8,2,9,3,5,7,6从后往前冒泡,按从升序排列,排序后为:2,8,3,9,5,6,7,选项C可能;8,3,2,9,6,5,7从后往前冒泡,按从升序排列,排序后为:2,8,3,5,9,6,7,选项D不可能。故答案选D。
【分析】本题考查的是冒泡排序。冒泡排序,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来,走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
12.(2021·浙江选考)某对分查找算法的VB程序段如下:
'随机产生包含20个整型元素的升序序列,依次存入数组a.代码略
i = 1:j = 20:s = ""
key = Val(Text1. Text)
Do While i < = j
m = (i + j)\2
s = s + Str(a(m))
If a(m)= key Then Exit Do 'Exit Do表示退出循环
If a(m)> key Then j = m - 1 Else i = m + 1
Loop
Text2. Text = s
在文本框Text1中输入待查找数,执行该程序段后,下列选项中,文本框Text2中显示的内容不可能的是(  )
A.78 50 46 33 B.51 37 41 48 C.74 50 46 51 D.73 83 87 89
【答案】C
【知识点】查找算法及程序实现
【解析】【解答】20个数据最多查找次数为 Log 2 20+1=5次(向下取整),已知数组a升序排列。
选项A:第一次找到78,第二次找到50,说明key值比78小往左半部查找,第三次找到46,说明key值比46小,第四次找到33,可能。
选项B:第一次找到51,第二次找到37,说明key值比51小往左半部查找,第三次找到41,说明key值比37大,说明key值比41大,可能。
选项C:第一次找到74,第二次找到50,说明key值比74小往左半部查找,第三次找到46,说明key值比50小,第四次找到51,前后矛盾,不可能。
选项D:第一次找到73,第二次找到83,说明key值比73大往右半部查找,第三次找到87,说明key值比87大,第四次找到89大,可能。
故答案选C。
【分析】本题考查的是对分查找。对分查找的基本思路:在有序的数据序列中(一般放在数组中),首先把查找的数据与数组中间位置的元素进行比较,若相等,则查找成功并退出查找;否则,根据数组元素的有序性,确定数据应在数组的前半部分还是在后半部分查找;在确定了新的查找范围后,重复进行以上比较,直到找到或未找到为止。
二、非选择题(本大题共4小题,4+8+7+7,共26分)
13.(2021·浙江选考)王老师收集了学校男生寝室三项检查成绩的数据,并使用Excel软件对数据进行处理,如图a所示。
图a
请回答下列问题:
(1)区域L4:L93的数据是通过公式计算得到的,在L4单元格中输入公式   ,再使用自动填充功能完成区域L5:L93的计算。(提示:总分=内务分×20%+卫生分×30%+纪律分×50%)
(2)寝室号的编制规则是:楼号(第1字符)+楼层号(第2字符)+房间号(第3、4字符)。若要筛选出各男生寝室楼的3楼寝室,筛选方式设置如图b所示,则①处应为    (选填:包含/等于/开头是)。
图b
(3)在新工作表中计算各年级“内务分”、“卫生分”和“纪律分”的平均分后,创建了如图c所示的图表。结合图a和图c,下列说法正确的有 (多选,填字母)。
图c
A.由图c可知男生寝室纪律最好的是高三,内务和卫生最好的是高二
B.更新数据导致高一“内务分”的平均分发生变化,图表不会随之改变
C.对区域L2:L3执行“合并单元格”操作,合并后的单元格名称为L2
D.在图a所示工作表的“寝室号”列前插入一列,“总分”列的数值会发生改变
【答案】(1)=E4*0.2+H4*0.3+K4*0.5或=E4*20%+H4*30%+K4*50%或=SUM(C4:D4)*0.2+SUM(F4:G4)*0.3+SUM(I4:J4)*0.5或等价表达式
(2)开头是
(3)A;C
【知识点】表格数据的处理与计算;数据分析
【解析】【解答】(1)L列是计算对应E列、H列和K列的总分,根据提示公式可知,L4中输入的公式为:=E4*0.2+H4*0.3+K4*0.5或其他等价答案;
(2)由寝室号编排规则可知,寝室号第2个字符为楼层号,要筛选出各男生寝室楼的3楼寝室,只需查找第二个字符为3即可,“ ”表示一个字符,故①处为:开头是;
(3)由图表可知男寝室纪律最好的是高三,内务和卫生最好的是高二,选项A正确;如果建立图表的数据区域的数据发生了变化,则图表也会发生变化,选项B错误;对区域L2:L3执行“合并单元格”操作,合并后的单元格名称为L2,选项C正确;“总分”使用公式计算且引用的单元格为相对地址,故在工作表的“寝室号”列前插入一列,“总分”列的数值不会发生变化,选项D错误。故答案选AC。
【分析】本题考查的是Excel中公式与函数的应用、数据的筛选以及图表的分析。Excel中的运算公式要以等号“=”开头,后面是由单元格地址、运算符和常量组成的一个表达式。对选中的数据系列创建了图表后,数据与图表之间就建立了关联,修改其中的数据,图表也会随之自动调整。对数据的筛选分为“自动筛选”和“高级筛选”。通过对数据筛选条件的设置,可以筛选出所需的数据。
14.(2021·浙江选考)小明制作主题为“自然风光”的多媒体作品。首先使用Photoshop软件处理图像,然后使用Flash软件制作动画作品。请回答下列问题:
(1)处理图像的部分界面如图a所示。下列说法正确的有 (多选,填字母)。
图a
A.将“背景.psd”文件存储为BMP格式后,BMP文件包含“山脉 副本”图层的内容
B.能将“天空”图层移动到“背景”图层的下方
C.将“白云”图层的不透明度改为40%,会影响图像的呈现效果
D.可复制“山脉”图层的图层样式并粘贴到“树林”图层
E.将“图像大小”改为550×400像素后,所有图层中内容的大小均发生变化
(2)制作动画作品的部分界面如图b所示。在“控制”图层的第   帧插入关键帧后,测试场景,该图层的声音在场景动画播放两秒后停止播放。由此可见,“控制”图层中声音的同步属性为   (选填:事件/开始/数据流)。
图b
(3)在“控制”图层的第60帧上添加了动作脚本“stop(  )”,该帧中的“海洋”按钮实例上添加的动作脚本是“on(release){gotoAndStop(“海洋”,1);play(  );}”。将该按钮实例上的动作脚本:替换为 (多选,填字母)后,按钮实现的交互效果不变。
A.on(release){play(  );}
B.on(release){play(“海洋”,1);}
C.on(release)﹛gotoAndPlay(1);)
D.on(release)﹛gotoAndPlay(“海洋”,1);}
(4)“蝴蝶”图层中的蝴蝶是由“蝴蝶飞舞”元件所生成的实例,该元件部分编辑界面如图c所示,各关键帧中内容均为形状,实现了蝴蝶翅膀扇动一次的动画效果。测试场景时,动画中蝴蝶的翅膀仅扇动了一次,可能的原因是   。
图c
【答案】(1)C;D;E
(2)25;数据流
(3)A;D
(4)“蝴蝶飞舞”元件“翅膀”图层的第5帧添加了动作脚本“stop(  );”或同等表述
【知识点】图层及图层的基本操作;常用影片控制函数的应用;多媒体作品的调试与递交;声音同步属性设置
【解析】【解答】(1)“山脉 副本”图层是隐藏的,存储为BMP格式后不可见,选项A错误;将“天空”图层移动到“背景”图层后,“天空”图层内容会被挡住,选项B错误;“白云”图层有内容,修改其不透明度,会影响图像的呈现效果,选项C正确;图层可以复制,选项D正确;更改“图像大小”会改变所有图层的大小,选项E正确。故答案选CDE;
(2)要使声音在场景动画播放两秒后停止播放,需要在播放的两秒后插入关键帧。由图可知帧频为12fps,则帧数为12*2=24,所以要在第25帧处插入关键帧;
事件:声音会和某一个事件同步发生。事件声音会从它的开始关键帧开始播放并贯穿整个事件的全过程,事件声音独立于时间轴。数据流:“数据流”方式的声音将会严格与时间轴同步。如果动画停止,流声音也会立即停止。所以“控制”图层中声音的同步属性为
数据流。
(3)play命令的主要功能就是能让停止的动画继续播放,它没有任何参数,选项A正确,选项B错误;gotoAndStop("场景名",帧)转到场景中指定的帧停止播放,若未指定场景则在当前场景中指定帧播放,此时场景名参数可忽略,由于当前场景是“草原”,选项C错误,选项D正确。故答案选AD;
(4)观察图c可知在第5帧处有“α”标记,可能是由于“蝴蝶飞舞”元件“翅膀”图层的第5帧添加了动作脚本“stop(  );”。
【分析】本题考查的是Photoshop及flash相关操作。图层的基本操作有新建图层、重命名图层、删除图层、调整图层的叠放顺序、设置图层不透明度、添加图层样式等。
15.(2021·浙江选考)根据申请人的QA和QB值,从m个申请人中挑选2人组队参加某挑战赛。条件一是2人的QA值都必须大于指定参数h;条件二是2人的QA值之差(较大值减较小值)小于h。在满足上述两个条件的所有2人组合中,挑选QB值之和最大的一个组合。(QA、QB和h的值均为正整数)
编写VB程序,实现上述挑选功能。运行程序,在文本框Text1中输入参数h后,单击“挑选”按钮Command1,在列表框List1中按QA值降序显示满足条件一的申请人信息,最后在标签Label1中显示组队结果。程序运行界面如图所示。
请回答下列问题:
(1)若要清空列表框List1,能实现该功能的语句是   (单选,填字母:A .List1. Caption = "" / B
.List1.Text = "" / C .List1. Clear)。
(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
Const m = 20 'm表示申请人个数
Dim id(m)As Integer, qa(m)As Integer, qb(m)As
Integer
Private Sub Command1_Click(  )
Dim i As Integer j As Integer,
k As Integer, t As Integer, max As Integer
Dim h As Integer, n As
Integer '变量n存储满足条件一的申请人个数
Dim s As String
'读取全部申请人的编号、QA和QB值,分别存入数组id、qa和qb,代码略
h = Val(Text1. Text):n = m
For i = 1 To m — 1
k = i
For j = i + 1 To m
If qa(j)> qa(k)Then k = j
Next j
If Then
If k <> i Then
t = qa(i):qa(i) = qa(k):qa(k) = t
t = qb(i):qb(i) = qb(k):qb(k) = t
t = id(i):id(i) = id(k):id(k) = t
End If
Else
n =   
Exit For 'Exit For表示退出循环
End If
Next i
'满足条件一的申请人信息显示在列表框Listl中,代码略
max = 0:s = “没有满足条件的组合”
'在满足条件的组合中,寻找QB值之和最大的组合,若有并列,只保留第一个
For i = n To 2 Step - 1
j = i - 1
Do While   
If qb(i)+ qb(j) > max Then
s = "组队结果:" + Str(id(i)) + "号," + Str(id(j)) + "号"
   
End If
j = j - 1
Loop
Next i
Label1. Caption = s
End Sub
(3)程序中加框处代码有错,请改正。
【答案】(1)C
(2)i - 1;j > = 1 And qa(j)- qa(i) < h或j > 0 And Abs(qa(i)-qa(j)) < h 或等价表达式;max = qb(i) + qb(j)
(3)qa(k) > h
【知识点】排序算法及程序实现
【解析】【解答】(1)清空列表框使用Clear方法。故答案为:C。
(2)第一空:先对满足QA大于h从大到小排序,由For i=n to 2 及后代码可知n是符合条件一的人数,故①处为:i-1(第i个开始不符合条件一);
第二空:接下来从排好序的前i-1人找出符合条件二,从中找出QB值之和最大组合,故②处为j>=1 and qa(j)-qa(i)h或其它等价答案(从i到1之间找QB值之和最大组合);
第三空:如果QB值之和大于max则更新max,故③处为:max=qb(i)+qb(j)。
(3)对满足QA大于h从大到小排序,采用的是选择排序,取出的最大值的下标为k,如果最大值大于h才进行交换,故应改为:qa(k)>h。
【分析】本题主要考查的是对VB程序分析。
16.(2021·浙江选考)某物品柜有5层,每层有10个格子,每个格子只能放一个物品。第1层格子编号依次为1到10,第2层格子编号依次为11到20,依此类推。有9组物品(组号1~9),每组有2到8个物品,物品总数不超过50个。将9组物品按组号由小到大依次放入柜中,放置方式有两种:
1)整体放置。按格子编号由小到大的次序查找第一个可放置该组全部物品的空区域(空区域是指从某个空格子开始的同层连续的所有空格子),若找到,则在该空区域居中、连续放置该组全部物品,如图a所示。
2) 零散放置。若所有空区域格子数都小于该组物品数,则将该组每个物品依次放置在当前编号最小的空格子中,如图b所示。
编写VB程序,模拟物品放置。运行程序,在列表框List1中显示每组物品的组号和数量,单击“放置”按钮Command1,在列表框List2中显示每组物品放置结果。程序运行界面如图c所示。
图c
(1)若第1、第2组的物品数分别为6和2,则放置第2组物品的格子编号依次为   。
(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
Constm = 50 'm表示物品柜的格子数
Const w = 10 'w表示物品柜每层的格子数
Const n = 9 'n表示物品的组数
'f(i)存储第i个格子开始的同层连续的所有空格子数。f(i)为0表示第i个格子不是空格子
Dim f(m)As Integer
Dim a(n)As Integer
Private Sub Form_Load(  )
'读取各组物品的个数依次存入数组a,并在List1中显示
'代码略
End Sub
Function getpos(r As Integer As Integer
'按格子编号从小到大的次序,查找空格子数≥r的第一个空区域
'若找到,返回该空区域的起始编号,否则返回 -1
'代码略
End Function
Private Sub Command1_Click(  )
Dim i As Integer,j As
Integer, k As Integer,p As
Integer,v As Integer
Dim s As String
For i = 1 To m
f(i)
= w -(i -1)Mod
w 'w为10,表示每层的格子数
Next i
v = 1
For i = 1 To n
s =
""
p =   
If p = - 1
Then
j = 1
Do While j < = a(i)
If f(v)
<> 0 Then
s = s + Str(v)
f(v)=
j = j + 1
End If
   
Loop
Else
k =(f(p)- a(i)) \ 2
For j = k To 1
Step - 1
f(p)
= j
p = p + 1
Next j
For j =   
f(j)
= 0
s = s + Str(j)
Next j
End If
List2. AddItem "第" + Str(i) + "组:" + s
Next i
End Sub
【答案】(1)1 2或1,2
(2)getpos(a(i));v = v + 1;p To p + a(i)— 1
【知识点】过程与自定义函数;查找算法及程序实现
【解析】【解答】(1)第1组物品有6个,按整体放置的规则,则占用3、4、5、6、7、8格,第2组物品有2个,第一层的第1、2格子连续可以满足摆放。故答案为:1、2。
(2)第一空:程序开始选查找有无空区域,故①处答案为:getpos(a(i));
第二空:由If p=-1 then可知,没有空区域,接下来是零散放置,物品依次放置在当前编号最小的空格子,放好后最小编号要往后移动,故②处答案为:v=v+1;
第三空:如果有空区域,找到居中、连续摆放,由getpos(  )函数注释可知返回的p值是空区域的起始编号,经过for j=k to 1 step -1循环后,p变为该层的空区域的摆放物品的起始编号,编号从p到p+a(i)-1全部摆放第i组物品,并标上不是空格子(数组f为0表示不是空格子),故③处答案为:p to p+a(i)-1。
【分析】本题主要考查的是自定义函数的应用以及对查找算法的分析。
1 / 1
同课章节目录