2020-2021學(xué)年浙江省名校協(xié)作體高三(下)月考信息技術(shù)試卷
發(fā)布:2024/4/20 14:35:0
一、選擇題(本大題共12小題,每小題2分,共24分。每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的,不選、多選、錯(cuò)選均不得分)
-
1.下列關(guān)于信息的說(shuō)法正確的是( ?。?/h2>
組卷:14引用:2難度:0.6 -
2.下列關(guān)于信息的表達(dá)與交流,說(shuō)法正確的是( ?。?/h2>
組卷:7引用:2難度:0.6 -
3.使用Access軟件設(shè)計(jì)的博物館文物信息數(shù)據(jù)表,需存儲(chǔ)如表所示的數(shù)據(jù)。
序號(hào) 文物名稱 文物編號(hào) 距今時(shí)間 收藏日期 來(lái)源 1 晚清七色釉盤 Q4877111854510 208年 2001-3-1 捐贈(zèng) 2 明官窯矮罐 M6877111665125 531年 1998-6-8 館有 3 漢青銅短劍 H7877111783721 2000年 1978-9-16 租借 … … … … … … 組卷:7引用:1難度:0.5 -
4.下列有關(guān)進(jìn)制與編碼的說(shuō)法,正確的是( ?。?/h2>
組卷:7引用:1難度:0.6 -
5.用Photoshop制作“重陽(yáng)蹬高”作品,其中“重”字的輪廓被選區(qū)選中,部分界面如圖所示。
下列說(shuō)法正確的是( ?。?/h2>組卷:8引用:1難度:0.7
二、非選擇題(本大題共4小題,其中第13小題4分,第14小題8分,第15小題7分,第16小題7分,共26分)
-
15.某分段排序算法描述如下:
(1)將原始數(shù)據(jù)按升序分成若干有序段。
(2)將第1段和第2段進(jìn)行合并,使得合并后的數(shù)據(jù)依舊有序,得到新的有序段。
(3)將新的有序段再次和下一個(gè)有序段進(jìn)行合并。
(4)重復(fù)上述操作,直到全部數(shù)據(jù)變成一個(gè)有序段為止,排序結(jié)束。
如數(shù)據(jù):1、3、9、4、5、7、2、6,第1段為1、3、9,第2段為4、5、7,將第1段和第2段合并,得到新的第1段為1、3、4、5、7、9。繼續(xù)和下一段2、6進(jìn)行合并,合并后段數(shù)變?yōu)?段,則排序結(jié)束。
編寫VB程序,實(shí)現(xiàn)分段排序功能:在文本框Text1中輸入數(shù)據(jù)總量,單擊“數(shù)據(jù)生成”按鈕Commandl后,在列表框List1中顯示原始數(shù)據(jù),然后單擊“分段排序”按鈕Command2,在列表框List2中顯示排序后的結(jié)果。程序運(yùn)行界面如圖所示。
請(qǐng)回答下列問(wèn)題:
(1)若要清空列表框List1,下列代碼正確的是
A.List1.Clear/B.List1.List=““/C.List1.Text=““/D.List1.Caption=“空白“)。
(2)實(shí)現(xiàn)分段排序功能的VB程序如下,請(qǐng)?jiān)跈M線處填入合適的代碼。
(3)程序中代碼有錯(cuò),請(qǐng)改正。
Dim a(1 To 1000)As Integer
Dim n As Integer
Private Sub Command1_Click ( ?。?br />'輸入數(shù)據(jù)總量n,隨機(jī)生成n個(gè)數(shù)據(jù)保存在數(shù)組
'a(1)~a(n)中,并在List1中顯示數(shù)據(jù),代碼略
End Sub
Private Sub Command2_Click ( ?。?br />Dim b(1 To 10000)As Integer
Dim p1 As Integer,p2 As Integer,t1 As Integer,t2 As Integer
Dim t As Integer,k As Integer,i As Integer,j As Integer
p1=1
t1=leng(p1)
p2=p1+t1
Do While p2<=n
①
i=p1:j=p2:t=1
Do While i<p2 Or j<p2+t2
If j>=p2+t2 Or i<p2 And a(i)<a(j) Then
b(t)=a(i):i=i+1
Else
b(t)=a(j):j=j+1
End If
t=t+1
Loop
For k=1 To ②
a(k)=b(k)
Next k
t1=t1+t2
p2=p1+p2
Loop
'在List2中輸出數(shù)組a(i)的值,代碼略
End Sub
Function Leng(ByVal p As Integer) As Integer
'該函數(shù)返回?cái)?shù)組a中數(shù)組下標(biāo)p開(kāi)始的升序有序段的長(zhǎng)度,代碼略
End Function組卷:2引用:1難度:0.3 -
16.親戚尋找。小李總是因?yàn)檎J(rèn)不清親戚而苦惱,于是他設(shè)計(jì)了如下程序來(lái)模擬親戚尋找的過(guò)程。已知:如果1和2是親戚,1和3是親戚,則2和3也是親戚。代碼思維如下:
(1)將每個(gè)人看成是一個(gè)鉤碼,能掛在另一個(gè)掛鉤底下,自己底下也能掛其他掛鉤。
(2)如果兩個(gè)鉤碼在同一條鉤碼串上,則為親戚(如2、3都能找到1)。
(3)如果兩個(gè)是親戚但不在一串鉤碼上,則可將其中一串的最上面的鉤碼掛在另一串的下方。
例如從圖a加框處的前三行數(shù)據(jù)可得到圖b所示的鉤碼串1和鉤碼串2,從第四行數(shù)據(jù)可知9、5也為親戚,則可將兩串鉤碼合并,合并后3為2的頂端,5為3的頂端,其余數(shù)據(jù)以此類推。
根據(jù)算法思想,編寫VB程序功能如下:程序初始化時(shí)給出6條親戚關(guān)系顯示在List1中,單擊“理關(guān)系”按鈕,在List2中顯示每個(gè)人所在鉤碼的頂端編號(hào)。在Text1和Text2中分別輸入兩人的編號(hào),單擊“詢問(wèn)”按鈕,輸出兩個(gè)人是否為親戚關(guān)系。程序運(yùn)行界面如圖a所示。
(1)根據(jù)圖a數(shù)據(jù),若輸入兩人的編號(hào)為4和5,則兩人的關(guān)系是否為親戚
(2)實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)跈M線處填入合適的代碼。
Const n=9'總?cè)藬?shù)
Const m=6'已知的親戚關(guān)系數(shù)
Dim a(1 To n) As String,b(1 To n) As String
Dim f(1 To n) As String'記錄不同的親戚鉤碼串成員,每條親戚鉤碼串內(nèi)互為親戚
Dim k As Integer'親戚鉤碼串的數(shù)目
Private Sub Form_Load ( )
'初始化List1和List2,生成m條親戚關(guān)系,每條親戚關(guān)系的編號(hào)對(duì)應(yīng)存儲(chǔ)在數(shù)組a(i)和b(i)'中,在List1中輸出a(i)和b(i),代碼略
End Sub
Private Sub Command1_Click ( ?。?br />Dim i As Integer,x As Integer,y As Integer
f(1)=a(1)+b(1)'利用a(1)、b(1)生成第一條鉤碼串存儲(chǔ)在f(1)中
k=1'k為鉤碼串編號(hào)
For i=2 To m
x=root(a(i),0):y=root(b(i),0)'x為調(diào)用函數(shù)獲取a(i)所在的鉤碼串編號(hào)
If x=0 And y=0 Then k=k+1:①
If x<>0 And y=0 Then f(x)=f(x)+b(i)
If x=0 And y<>0 Then f(y)=f(y)+a(i)
If x<>y And x<>0 And y<>0 Then'x、y在不同鉤碼串則將兩條鉤碼串合并
f(x)=f(x)+f(y):f(y)=f(k):k=k-1
End If
Next i
For i=1 To n'輸出每個(gè)人所在鉤碼的頂端編號(hào)
x=root(CStr(i),0):y=root(CStr(i),1)'Cstr
If x<>0 Then
If y=Len(f(x)) ThenList2.AddItem Str(i)+““+CStr(i)
If y<>Len(f(x)) Then List2.AddItem Str(i)+““+②
End If
Next i
End Sub
'按鈕Command2的功能為判斷輸入的兩個(gè)人是否為親戚關(guān)系,代碼略
Function root(a As String,b As Integer) As Integer'參數(shù)a表示待查找目標(biāo),參數(shù)b
'表示返回值類型,0表示返回目標(biāo)所在鉤碼串編號(hào),1表示返回目標(biāo)在該鉤碼串中的位置
Dim m As Integer,n As Integer,i As Integer,j As Integer
m=0:n=0:i=k:j=0
Do While i>0
If a=Mid(f(i),Len(f(i))-j,1)Thenm=i:n=Len(f(i))-j:Exit Do
j=j+1
If j=Len(f(i)) Then i=i-1:j=0
Loop
If ③
End Function組卷:4引用:1難度:0.3