2020-2021学年浙江省山水联盟高三(上)月考信息技术试卷(12月份)
发布:2024/4/20 14:35:0
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
-
1.下列有关信息与信息技术的说法,正确的是( )
组卷:2引用:1难度:0.7 -
2.下列关于网络的相关说法中,正确的是( )
组卷:0引用:1难度:0.5 -
3.使用Word软件编辑某文档,部分界面如图所示。下列说法正确的是( )
组卷:2引用:1难度:0.6 -
4.关于Access数据表,下列说法正确的是( )
组卷:1引用:1难度:0.6 -
5.一个2位十六进制正整数n,其末位是“F”,下列说法正确的是( )
组卷:4引用:2难度:0.4
二、非选择题(本大题共4小题,其中第13小题4分,第14题8分,第15题7分,第16题7分,共26分)
-
15.小王到某城市,时间只有一天了,但小王很想到该城市的著名大景区游玩,该城市的著名大景区内共有N(超过10)个景点,标号为1至N,假设每个景点都有一个进出口。现在只知道每个景点有一条路连接下一个景点。小王想知道,根据这些道路信息,从其中一个景点出发,最后再回到出发景点离开,最多能游玩多少个景点。
例如,共有N=5个景点,每个景点连接的下一个景点分别是2,4,2,3,1。景点号 1 2 3 4 5 下一景点号 2 4 2 3 1
PrivateSubCommand1_Click
Dima(1To100)AsInteger,d(1To100)AsInteger'数组a存放下一景点号
DimjdAsString,mAsString,cAsInteger,iAsInteger
DimsAsInteger,pAsInteger,kAsInteger,ansAsInteger
jd=Text1.Text+“,“
s=0:c=0
Fori=1ToLen(jd)
m=Mid(jd,i,1)
Ifm<>“,“Then
①
Else
c=c+1:a(c)=s:s=0
EndIf
Nexti
Fork=1To100d(k)=0
Nextkans=0:k=0
Fori=1Toc'枚举起点
Ifd(i)=0Thenp=i
DoWhilep<=c
Ifd(p)=0Then
k=k+1:d(p)=k
Else
②
Ify>ansThenans=yk=0
ExitDo
EndIf'改错
Loop
EndIf
NextiText2.Text=Str(ans)
EndSub
(1)若有7个景点,且每个景点的连接情况为:6,3,5,2,7,5,4,那么小王最多可以游玩的景点数是
(2)程序代码中,程序①②填空
①
②
(3)程序代码中,加框处代码有错,请改正。
改正组卷:4引用:1难度:0.3 -
16.城堡问题。有一个城堡的地形图,城堡被分割成若干个方块,每个方块可以有0~4面墙(粗线表示墙)。
每个方块用一个代表其周围墙的数字之和(0≤p≤15)表示:1表示西墙,2表示北墙,4表示东墙,8表示南墙。城堡的内墙被计算两次,方块(1,1)的南墙同时也是方块(2,1)的北墙。城堡至少有两个房间。例如,图a的每个方块对应数字如图b所示。
程序运行界面如图c所示,现已知城堡地形对应的数字矩阵,要求出城堡一共有多少房间,最大的房间有多大。小金利用深度优先搜索算法解决当前问题,具体算法如下:
在城堡中按行搜索,找到第一个未被搜索过方块,以它为起点,分别按左、上、右、下的顺序向其四个方向试探,若发现一个方向上的方块是未被搜索过且可以通往的(无墙),则以这个方块为新起点,再重复上述试探。若当前方块四个方向上均无路可走,则返回上一个方块进行其他方向上的搜索,直至返回开始当前搜索的第一个方块且这个方块四个方向上也无路可走是,则本轮搜索结束。
(1)将界面中方块(2,2)对应的数字9改为13,方块(2,3)对应的数字6改为7,则城堡中最大的房间占
(2)实现上述功能的VB程序如下,请在横线处填入合适的代码。
Constm=4Constn=7
Dima(1Tom*n*4)AsIntegerDimf(1Tom*n)AsBoolean
Dimc(1Tom*n)AsIntegerPrivateSubCommand1_Click
DimiAsInteger,jAsInteger,xAsInteger,yAsInteger
DimareaAsInteger,maxAsInteger,cntAsInteger
'城堡地形对应的数字矩阵,存入c数组中,并显示在列表框List1中,f数组初值为false,代码略.
Fori=1Tom*nx=c(i)
Forj=1To4
a((i-1)*4+j)=xMod2x=x\2
Nextj
Nexti
max=0
Fori=1Tom
Forj=1Ton
If①
cnt=cnt+1
area=Search(i,j)
Ifmax<areaThen
max=areaEndIf
Nextj
Nexti
Label1.Caption=“城堡一共有“+Str(cnt)+“个房间,最大的房间占“+Str(max)+“块方格.“
EndSub
'从方块(x,y)开始搜索,并返回其所在房间所占方块数.
FunctionSearch(ByValxAsInteger,ByValyAsInteger)AsInteger
DimiAsInteger,jAsInteger,sumAsInteger,rAsInteger,cAsInteger
Dimpre(1Tom*n)AsInteger'记录当前房间搜索的路径
Dimrow(1To4)AsInteger,col(1To4)AsInteger
row(1)=0:row(2)=-1:row(3)=0:row(4)=1
col(1)=-1:col(2)=0:col(3)=1:col(4)=0
sum=1:j=1:pre(1)=x*10+y
f((x-1)*n+y)=True
DoWhileTrue
Fori=1To4
r=x+row(i):c=y+col(i)
Ifr>=1Andr<=mAndc>=1Andc<=nThen
Iff((r-1)*n+c)=FalseAnd②
sum=sum+1
x=r:y=c
f((x-1)*n+y)=True
j=j+1
pre(j)=x*10+y
ExitFor
EndIf
EndIf
Nexti
Ifi>4Then
③
Ifj=0Then
ExitDo
x=pre(j)\10:y=pre(j)Mod10
EndIf
Loop
Search=sumEndFunction组卷:0引用:1难度:0.3