試卷征集
加入會(huì)員
操作視頻

小明編寫(xiě)了一個(gè) VB 程序?qū)Τ煽?jī)數(shù)據(jù)進(jìn)行排序。為保證相同分?jǐn)?shù)的同學(xué)相對(duì)位置(指原數(shù)據(jù)中的前后關(guān)系)不發(fā)生改變,他試著采用一種新的排序算法來(lái)解決。為便于描述算法的實(shí)現(xiàn)過(guò)程,假定有如下數(shù)組 a:
下標(biāo) 1 2 3 4 5
5 3 3 2 4
第一步:統(tǒng)計(jì)數(shù)組 a 中每個(gè)值 a(i)出現(xiàn)的次數(shù),存入 b(a(i)),統(tǒng)計(jì)完成后數(shù)組 b 的情況如下:
下標(biāo) 1 2 3 4 5
0 1 2 1 1
第二步:從前向后,依次使數(shù)組 b 中的每個(gè)值等于其與前一項(xiàng)之和,這樣數(shù)組 b(a(i))就代表
了數(shù)組 a 中小于或等于 a(i)的元素個(gè)數(shù),完成第二步后數(shù)組 b 如下:
下標(biāo) 1 2 3 4 5
0 1 3 4 5
第三步:從后往前,依次將數(shù)組 a 中元素填入數(shù)組 c 中,將數(shù)組元素 a(i)放在數(shù)組 c 的第 b(a(i))項(xiàng),如元素 a(1)=5,應(yīng)該放在數(shù)組 c 的 b(5)位(即 c(5))。每放一個(gè)元素就將 b(a(i))遞減;完成第三步后,數(shù)組 c 如下所示,已經(jīng)完成升序排序,且相對(duì)位置不變,即原來(lái) a ( 2)的值 3 仍然在 a(3)的值 3 前面。
下標(biāo) 1 2 3 4 5
2 3 3 4 5
程序運(yùn)行界面如圖所示:
菁優(yōu)網(wǎng)
實(shí)現(xiàn)上述功能的 VB 程序如下,回答以下問(wèn)題:
( 1)從代碼中可以得知,用于連接數(shù)據(jù)庫(kù)的對(duì)象名是:
conn
conn

( 2)請(qǐng)?jiān)跈M線處填上相應(yīng)代碼。
Dim a(1To 50)As Integer'存放學(xué)生的成績(jī)
Dim sname(1To 50)As String'存放學(xué)生姓名
Dim n As Integer
Private Sub Command1_Click( ?。?br />Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
conn.ConnectionString=“Provider=Microsoft.ACE.OLEDB.12.0;Data Source=“+
App.Path+“\stu.jye.ai“
conn.Open
strSQL=“SELECT*From stucj“
Set rs.ActiveConnection=conn
rs.Open strSQL
n=0
List1.AddItem“姓 名“&““&“成績(jī)“
Do While Not rs.EOF
n=n+1
a(n)=rs.Fields(“cj“)
sname(n)=rs.Fields(“xm“)
List1.AddItem sname(n) &““& Str(a(n))
rs.movenext
rs.movenext

Loop
rs.Close
conn.Close
End Sub
Private Sub Command2_Click(  )
Dim i As Integer,k As Integer
Dim b(0To 100)As Integer
Dim c(1To 50)As Integer,c1(1To 50)As String'c 和 c1 作為臨時(shí)數(shù)組
For i=1To n
b(a(i))=b(a(i))+1
Next
For i=1To 100
b(i)=②
b(i)+b(i-1)
b(i)+b(i-1)

Next
For i=n To 1Step-1
c(b(a(i)))=a(i)
c1(b(a(i)))=sname(i)
b(a(i))=b(a(i))-1
b(a(i))=b(a(i))-1

Next
For i=1To n'把臨時(shí)數(shù)組 c 和 c1 中的數(shù)據(jù)放入 a 和 sname 數(shù)組
a(i)=c(i)
sname(i)=c1(i)
Next
List2.AddItem“姓 名“&““&“成績(jī)“
For i=1To n
List2.AddItem sname(i) &““& Str(a(i))
Next
End Sub

【答案】conn;rs.movenext;b(i)+b(i-1);b(a(i))=b(a(i))-1
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書(shū)面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/6/27 10:35:59組卷:3引用:1難度:0.4
相似題
  • 1.學(xué)校舉辦了“語(yǔ)文作文現(xiàn)場(chǎng)賽”,參賽同學(xué)成績(jī)存儲(chǔ)在文本文件“gra.jye.ai”中,如左圖所示(每一行記錄一位同學(xué)的姓名和成績(jī),以“:”分隔)。陳老師利用Python程序?qū)ψ魑某煽?jī)進(jìn)行處理,統(tǒng)計(jì)出各個(gè)分?jǐn)?shù)等級(jí)的人數(shù),并輸出結(jié)果。程序運(yùn)行界面如右圖所示。
    菁優(yōu)網(wǎng)
    實(shí)現(xiàn)上述功能的Python程序如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。
    菁優(yōu)網(wǎng)

    發(fā)布:2024/12/17 2:0:1組卷:6引用:2難度:0.3
  • 2.有如下Python程序段:
    菁優(yōu)網(wǎng)
    執(zhí)行該程序段,輸入字符串“abcdefg”,則輸出的結(jié)果是( ?。?/h2>

    發(fā)布:2024/12/20 6:30:1組卷:2引用:3難度:0.4
  • 菁優(yōu)網(wǎng)3.試題描述的內(nèi)容:
    一個(gè)單窗體VB程序的運(yùn)行界面如圖所示。下列說(shuō)法正確的是( ?。?br />(1)窗體內(nèi)有1個(gè)按鈕
    (2)窗體內(nèi)有2個(gè)文本框
    (3)窗體內(nèi)有3個(gè)標(biāo)簽
    (4)該窗體的標(biāo)題(Caption)屬性值是“加法計(jì)算器”

    發(fā)布:2024/12/20 20:0:2組卷:1引用:1難度:0.6
小程序二維碼
把好題分享給你的好友吧~~
APP開(kāi)發(fā)者:深圳市菁優(yōu)智慧教育股份有限公司| 應(yīng)用名稱:菁優(yōu)網(wǎng) | 應(yīng)用版本:5.0.7 |隱私協(xié)議|第三方SDK|用戶服務(wù)條款
本網(wǎng)部分資源來(lái)源于會(huì)員上傳,除本網(wǎng)組織的資源外,版權(quán)歸原作者所有,如有侵犯版權(quán),請(qǐng)立刻和本網(wǎng)聯(lián)系并提供證據(jù),本網(wǎng)將在三個(gè)工作日內(nèi)改正