2020-2021学年浙江省浙南名校联盟高二(上)期末信息技术试卷
发布:2024/4/20 14:35:0
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
-
1.下列有关信息与信息处理的说法,错误的是( )
组卷:4引用:1难度:0.6 -
2.下列关于网络的说法,正确的是( )
组卷:4引用:1难度:0.7 -
3.用Access软件建立某图书管理系统,其中的“图书库存”表如图所示。下列说法错误的是( )
组卷:4引用:1难度:0.6 -
4.下列关于计算机信息编码的描述,错误的是( )
组卷:6引用:1难度:0.6 -
5.用Photoshop软件制作“元旦贺卡”作品,如图所示。下列说法正确的是( )
组卷:6引用:1难度:0.7
二、非选择题(本大题共4小题,其中第13小题4分,第14小题8分,第15小题7分,第16小题7分,共26分)
-
15.字符串的变换和还原。
“字符串变换”按以下规则生成新字符串:
(1)若当前字符不是数字字符,则将其添加到新的字符串中;
(2)若当前字符是数字字符,且它之后没有后继字符,则将其添加到新的字符串中;
(3)若当前字符是数字字符,且它之后还有后继字符,则将当前字符所表示的数字设为n,并将它的后继字符复制n+1次后添加到新的字符串中。该后继字符不再参与下一次变换。
(4)上述一次变换为一组,在不同组之间另外插入一个下划线字符“_”用于分隔。
例如:字符串“26ab5g8”变换后的结果为“666_a_b_gggggg_8”。
“字符串还原”则是“字符串变换”的相反操作,例如:将字符串“666_a_b_gggggg_8”还原为“26ab5g8”。
实现上述功能的VB程序如下。
(1)在以下代码中出现了
(2)请在横线处填入合适的代码。
(3)加框处的代码有错,请改正。
PrivateSubCommand1_Click ( )'字符串变换
Dims1AsString,s2AsString,ch1AsString,ch2AsString
DimiAsInteger’jAsInteger,nAsInteger
s1=Text1.Text
s2=″″
Fori=1ToLen(s1)
ch1=Mid(s1,i,1)
Ifch1>=″0″Andch1<=″9″Andi<Len(s1)Then
ch2=Mid(s1,i+1,1)
Forj=1Ton
s2=s2+ch2
Nextj
Else
s2=s2+ch1
EndIf
Ifi<>Len(s1)Thens2=s2+″_″
Nexti
Text2.Text=s2
EndSub
PrivateSubCommand2_Click ( )'字符串还原
Dims2AsString,s3AsString,chAsString
DimiAsInteger,jAsInteger,nAsInteger
s2=Text2.Text
s3=″″
Fori=1ToLen(s2)
ch=Mid(s2,i,1)
n=0
j=i+1
DoWhileMid(s2,j,1)=ch
j=j+1
n=n+1
Loop
i=j
IfThens3=s3+CStr(n)'Cstr
s3=
Ifch=″_″Theni=i+1
Nexti
Text3.Text=s3
EndSub组卷:0引用:1难度:0.5 -
16.叠方块游戏。在一个10×10的区域内玩叠方块游戏,为方便处理,该区域的行号从下往上依次编号为1,2、……、9、10,列号从右往左依次编号为0、1、……、8、9。方块只有一种形状,如下图a所示,左上角是该方块的中心位置。程序界面如下图b所示,单击“生成数据”按钮Command1,随机生成5个[1,9]范围内的数字,并显示在文本框Text1中,每个数字即为方块的中心位置从该数字表示的列掉下来,若碰到方块就叠上去,若一直掉到底部都没有碰到方块,就停在底部。所有操作结束后,输出整个区域的状态,如图c、图d所示。图e为行、列编号示意图。
算法概述如下:用一个二进制位表示某个位置的状态,0表示该位置没有方块,1表示该位置有方块,每一行的状态存储在数组a中。例如:图c第1行的状态为“1010101010”,则a(1)=682,即29+27+25+23+21=682,根据a(1)\2^1Mod2的结果可判断第1行的第1列是否有方块。
(1)以图d为例,a(1)\2^4Mod2的结果是
(2)实现上述功能的VB程序如下,请在横线处填入合适的代码。
DimsAsString
Constn=10
PrivateSubCommand1_Click( )'生成数据
DimiAsInteger,tAsInteger
Randomize
s=““
Fori=1Ton\2
s=s+CStr(t)'Cstr
Nexti
Text1.Text=s
EndSub
PrivateSubCommand2_Click ( )'开始游戏
Dima(n)AsInteger
DimiAsInteger,kAsInteger,tAsInteger
DimansAsString
Fori=0Ton
a(i)=0
Nexti
Fork=1ToLen(s)
t=Val(Mid(s,k,1))
Fori=n-2To0Step-1'i=0时该方块可以直接到达底部
Ifa(i)\2^tMod2=1Ora(i+1)\2^(t-1)Mod2=1Ori=0Then
a(i+2)=a(i+2)+2^t+2^(t-1)
ExitFor'ExitFor为退出For循环
EndIf
Nexti
Nextk
List1.Clear
ans=″″
Fori=10To1Step-1
Fork=0To9
Ifa(i)Mod2=1Then
ans=″■″+ans
Else
ans=″″+ans
EndIf
Nextk
List1.AddItemans
ans=″″
Nexti
EndSub组卷:0引用:1难度:0.5