t=a(j):
a(j)=a(j-1):
a(j-1)=1
①
EndIf
Nextj
Loop
则代码中①处的语句可为()
A.i=i+1B.i=j+1C.i=k-1D.i=j
【答案】D
【详解】本题考查的是VB排序。
阅读程序可知,这是冒泡排序的变式,从后往前开始冒泡,每次交换完后,要记录下当前最小值得下标,如果当前比较后最小值下标为10,表示排序结束。
故①处的语句可为i=j。
选项D正确。
二、非选择题(本大题共4小题,其中第13小题4分,第14小题8分,第15小题7分,第16小题7分,共26分)
13.收集某中学两个班级体质健康测试数据,并对部分项目用Excel软件进行数据处理,如图a所示。
请回答下列问题:
(1)区域G3:
G82的数据是通过公式计算得到的,在G3单元格中输入公式________,再使用自动填充功能完成区域G4:
G82的计算。
(提示:
体重指数=体重/身高2,单位:
千克/米2)
(2)对区域A2:
G82进行相关数据分析,下列说法正确的是_______(多选,填字母)。
A.更新C列身高数据,G列体重指数的值会随之改变
B.为了将女生身高最高的数据显示在当前工作表第3行,可选择身高为主要关键字、性别为次要关键字均按降序排序
C.为了显示男生1000/800米得分大于85的数据,可先对“性别”进行筛选,选择的值为“男”,再对“1000/800米得分”进行筛选,条件为大于85
D.为了显示女生肺活量得分最高的3位学生数据,可先对“性别”进行筛选,选择的值为“女”,再对“肺活量得分”进行筛选,选择“10个最大的值”并显示最大的3项
(3)对图a中的数据进行相关统计,结果放在新工作表中,如图b所示。
根据图b中的数据制作的图表如图c所示,创建该图表的数据区域是________。
【答案】
(1).=D3/(C3*C3)*10000或=D3/C3^2*10000或等价表达式
(2).AC(3).A2:
A6,D2:
E6
【详解】本题考查的是Excel操作。
(1)由提示可知,C3公式应为:
=D3/(C3*C3)*10000或=D3/C3^2*10000。
(2)G列体重指数是根据C列和D列计算得出,故更新C列会改变G列,选项A正确;为了将女生身高的数据显示在当前工作表第3行,应将性别为主要关键字、身高为次要关键字均按降序排序,故选项B错误;当对多项内容进行筛选时,显示的数据是同时满足所有筛选条件的项,故选项C正确;最大的3项中如果数据有重复,显示不只3位学生,故选项D错误。
(3)根据图表的图例项及坐标横轴的内容可以确定选择的数据区域是:
A2:
A6,D2:
E6。
14.使用Flash软件创作“绿水青山”多媒体作品,部分编辑界面如图所示。
请回答下列问题:
(1)在创作之前进行了作品设计,下列说法正确的是_________(多选,填字母)。
A.考虑作品创作及运行需要的硬件和软件,属于作品的应用需求分析
B.考虑作品的用户情况和作品效益,属于作品的创作需求分析
C.将作品划分为片头,主交互界面、片尾等组成部分,属于系统结构设计
D.描述作品每个场景
展示内容及呈现方式,属于制订脚本大纲
E.制订处理各种多媒体素材的方案,属于媒体元素分解
(2)测试影片时,动画播放到当前场景第60帧自动停止,则“按钮”图层第60帧的动作脚本是_______(单选,填字母:
A.stop(60);/B.stop();),单击第60帧中的“重播”按钮实现从该帧跳转到当前场景第1帧并播放,则该按钮实例上添加的动作脚本是on(release)_________(单选,填字母:
A.play();/B.gotoAndPlay
(1);)。
(3)“文字”图层第15帧中仅有的对象云朵为形状,该帧已设置形状补间。
测试场景时,第15帧到第30帧没有实现从云朵渐变为“绿水青山”的形状补间效果,原因是_____。
(4)“小船”图层中小船都是“船”元件的实例。
为了使小船在测试场景时从第41帧到第60帧在舞台上消失,其他动画效果保持不变,下列操作方法可行的是______(多选,填字母)。
A.将该图层移动到“背景”图层下方
B.选中该图层第41帧到第60帧执行“删除帧”操作
C.选中该图层第41帧执行“清除帧”操作
D.选中该图层第41帧执行“插入空白关键帧”操作
E.选中该图层第41帧执行“插入关他帧”操作,并将该帧中小船实例的Alpha值设为0%
【答案】
(1).CE
(2).B(3).B(4).该图层第3帧中的对象没有分离成形状或同等表述(5).BDE
【详解】本题考查的是flash制作。
(1)考虑作品创作及运行需要的硬件和软件,属于作品的创作需求分析,选项A说法错误;考虑作品的用户情况和作品效益,属于作品的应用需求分析,选项B说法错误;将作品划分为片头、主交互界面、片尾等组成部分,属于系统结构设计,选项C说法正确;描述作品每个场景的展示内容及呈现方式,属于模块设计,选项D说法错误;制定处理各种多媒体素材的方案,属于媒体元素分解,选项E说法正确。
(2)stop()命令不带参数,故应选B,gotoAndPlay("场景名",帧);转到指定场景中指定的帧开始播放,若未指定场景则当前场景中指定帧播放,此时场景名参数可忽略;故第二空应选B。
(3)形状补间两个关键帧中的对象必须是分离状态,故可能是该图层第30帧中的对象没有分离成形状。
(4)为了使小船在测试场景时从第41帧到第60帧在舞台上消失,可以删除该部分的帧或设置为空白帧或设置成透明。
故应选BDE。
15.根据某场馆一天中每位参观者的进馆和出馆时间,可统计该场馆当天人流量的分布情况。
每个人进、出馆的时间用一个长度为11的字符串表示,例如“08:
05-08:
45”表示进馆时间为8点5分,出馆时间为8点45分。
现要求统计当天馆内人数超过指定人数的总时长。
根据上述要求编写VB程序,功能如下:
读取n个人进,出馆的时间,显示在列表框List1中。
程序运行时,在文本框Text1中输入指定人数,单击“统计”按钮Command1,在标签Label1中显示馆内人数超过指定人数的总时长。
程序运行界面如图所示。
(1)在VB表达式Va1(Text1.Text)中,Va1、Text1、Text依次表示______(单选,填字母:
A.方法名、属性名、事件名/B.函数名、对象名、方法名/C.函数名、对象名、属性名)。
(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
(3)程序中加框处代码有错,请改正。
______
Constn=800
Dimd(1Ton)AsString,a(1To2*n)AsString
PrivateSubForm_Load()
’读取n个人进、出馆的时间,存入数组d并显示在列表框List1中,代码略
EndSub
PrivateSubCommand1_Cliek()
DimiAsInteger,jAsInteger,kAsInteger,spAsInteger
DimiAsInteger,cntAsInteger,mtsAsInteger,sumAsInteger
DimsAsString
’提取每个人的进,出馆时间,分别加上IN、OUT标记后存入数组a
Fori=lTon
a(i)=Mid(d(i),1,5)+"IN"
=Mid(d(i),7,5)+"OUT"
Nexti
Fori=1To2*n-1对数组元素a
(1)到a(2*n)从小到大排序
__
Fori=iTo2*n-1
Ifa(j)Nextj
s=a(i):
a(i)=a(k):
a(k)=s
Nexti
sp=Val(Text1,Text)
t=-1:
cnt=0:
sum=0
Fori=1To2*n
mts=Val(Mid(a(i),1,2))*60+Val(Mid(a(i),4,2))
IfMid(a(i),6,2)=“IN”Thencnt=cnt+1Else__
Ifcnt>spThen
Ift=-1Thent=mts
Elselft>-1Then
__
t=-1
EndIf
Nexti
Label1.Caption="超过指定人数的总时长:
"+Str(sum)+"分钟"
EndSub
【答案】
(1).C
(2).a(n+i)或a(2*n+1-i)(3).k=2*n(4).cnt=cnt-1(5).sum=sum+mts-1
【详解】.本题考查的是VB排序及数组应用。
(1)Val是函数名、Text1是对象名、text是属性名,故应选C。
(2)对数组元素a采用的是选择排序,由内循环可知,每次循环只到2*n-1,为了每一遍加工,数据要比较到最后一个,故第一空应填:
k=2*n;如果读取的是进入时间,则人数加1,如果读取的是出去的时间,则人数减1,故第二空应填:
cnt=cnt-1;呆在馆内的时间为:
入馆时间-出馆的时间。
如果记录的入馆人数第一次超过限定人数,记录下时间存在t中,如果记录的入馆人数已经没有超过限定人数,则开始统计呆在馆内的时间。
故第三空应填:
sum=sum+mts-t。
(3)先把入馆时间存储在数组前,出馆时间存储在数组后,故加框处应改为:
a(n+i)或a(2*n+1-i)。
16.有n个小组(编号1至n),每个小组有m个成员,每个成员都有一个大于等于0的得分。
现要求按下列规则计算每个小组的成绩,并找出成绩最高的小组。
小组成绩的计算规则是:
若小组成员中得分最高的前k人得分都不低于k,且其他成员得分都不超过k,则该小组成绩为k。
例如,第1小组共有8个成员,得分依次为“5,2,7,11,8,6,5,1”,由此可知最高的前5人得分为“11,8,7,6,5”,其他3人得分为“5,2,1”,因此该小组成绩为5。
按上述要求,编写VB程序,功能如下:
在列表框List1中显示各小组每个成员的得分,单击“计算”按钮Command1,在列表框List2中显示成绩最高的小组编号及成绩(如果有多个小组并列最高,则全部显示)。
(l)若第2小组各成员得分依次为“0,4,12,l,5,9,3,9”,则该小组的成绩是_______。
(2)请在划线处填入合适的代码。
Constn=6
Constm=8
Dima(n*m)AsInteger
Dimc(m)AsInteger,ans(n)AsInteger
PrivateSulbForm_Load()
’读取n个小组每个成员的得分,按组别从小到大依次存入数组a,并显示在List1中
’n(l)到a(m)存储第1小组m个成员
得分
’a(m+1)到a(2*m)存储第2小组m个成员的得分
’以此类推,代码略
EndSub
PrivuteSubCummand1_Click()
DimiAsInteger,pAsInteger,gAsInteger,maxgAsInteger
maxg=-1
Fori=lTon
g=GroupScore(i)
Ifg>maxgThen
maxg=g:
p=l
__
Elselfg=maxgThen
p=p+1
ans(p)=i
EndIf
Nexti
Fori=lTop
List2.Addltcm“第”+Str(ans(i))+“组,成绩:
”+Str(maxg)
Nexti
EndSulb
函数返回第w小组的成绩
FunctionGroupScone(wAsInteger)AsInteger
DimiAsInteger,kAsInteser
Fori=0Tom
e(i)=0
Nexti
Fori=(w-l)*m+lTow*m
k=a(i)
Ifk>mThen__
e(k)=e(k)+1
Nexli
k=m
DoWhitee(k)0
k=k-1
__
Loop
GroupScore=k
EndFuinction
【答案】
(1).4
(2).ans(p)=i或ans
(1)=i(3).k=m(4).c(k)=c(k)+c(k+1)
【详解】本题考查的是VB综合应用。
(1)该小组最高前4人得分为“12,9,9,5”不低于4,其它得分为“4,3,1,0”不超过4,因此该小组的成绩是4。
(2)数组ans存储的是最大得分的组别,如果第i组的得分大于maxg,则记录到数组ans的第一个位置上,故第一空为:
ans(p)=i或ans
(1)=i;数组e(k)存储的是数组a值为k的人数,m个成员最大返回值为m,如果数组a中的值大于m,全部统计在e(m)中,故第二空应为:
k=m;得分高的人数存放在数组e后头,从最大可能返回值m,依次递减的验证前k个人是否大于k,故第三空应为:
e(k)=e(k)+e(k+1)。