版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2020版3年高考2年模擬電子資源第6節(jié)VB訪問(wèn)Access數(shù)據(jù)庫(kù)模擬演練1.最新國(guó)際體操競(jìng)賽的評(píng)分規(guī)則簡(jiǎn)單描述如下:兩位D組裁判分別打“難度分”,取平均值作為該參賽選手的最終難度分。五位E組裁判分別打“完成分”,在5個(gè)E組打分2果中,去掉一個(gè)最高分和一 個(gè)最低分,然后取平均值作為該參賽選手的最終完成分。難度分和完成分之和,即該參賽選手的最終得分。例如:某參賽選手打分如下:D組裁判打E組裁判打分分6.56.99.59.08.38.87.6該選手“難度分”為(6.5+6.9)/2=6.7 。E組裁判打分去掉一個(gè)最高分和一個(gè)最 低分之后,計(jì)算“完成分”為(9.0+8.3+8.8)/3=8.7。所以
2、該選手最終得分為6.7+8.7=15.4 分。小杜編寫一個(gè) VB程序:程序運(yùn)行時(shí)從數(shù)據(jù)庫(kù)讀取參賽選手人數(shù)和參賽選手的打 分?jǐn)?shù)據(jù),依次存儲(chǔ)在數(shù)組a中;單擊“統(tǒng)計(jì)”按鈕,依據(jù)數(shù)組a中的相關(guān)數(shù)據(jù)統(tǒng)計(jì) 各選手的“難度分” “完成分”和“最終得分”,并在列表框List1中輸出。數(shù) 組a各元素的含義如下,程序運(yùn)行界面如圖所示。數(shù)組數(shù)組元素的含義元素a(0)存儲(chǔ)參賽人數(shù)na(1)十入八a(1)和a(2)為第1位選手的D組兩位裁判的打分。a(3)、a(4)、a為第1位選手的E組五位裁判的打分a(8)十一,、山一八a(8)和a(9)為第2位選手的D組兩位裁判的打分。a(10)、a(11)、a(14)為第2位選手
3、的E組五位裁判的打分 a(14)實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)回答下列問(wèn)題:(1)根據(jù)程序運(yùn)行界面中的數(shù)據(jù)及數(shù)組a各元素白勺含義,數(shù)組元素a(8)和a(9)的值為(填序號(hào):A.6.2 和 5.6/B.5.8 和 6.2/C.6.1 和 5.5)分析程序,可知數(shù)據(jù)庫(kù)的文件名為 。請(qǐng)?jiān)趧澗€處填入合適的代碼。Dim a(0 To 210) As SingleDim d(1 To 30) As SingleDim e(1 To 30) As SingleDim f(1 To 30) As Single'數(shù)組大小滿足處理要求'依次各選手的難度分'依次各選手的完成分'依次各
4、選手的最終得分Private Sub Command1_Click()'本過(guò)程從數(shù)據(jù)庫(kù)讀取相關(guān)數(shù)據(jù),存儲(chǔ)在數(shù)組a中Dim conn As New ADODB.ConnectionDim rs As New ADODB.Recordsetconn ConnectionStri ng= "provider=Microsoft.ACE.OLEDB.12.0; data source=" + "成績(jī).accdb”conn.OpenSet rs.ActiveConnection=conn'本過(guò)程的其他語(yǔ)句略End SubPrivate Sub Command
5、2_Click()'依據(jù)數(shù)組a中的相關(guān)數(shù)據(jù)統(tǒng)計(jì)各班級(jí)平均分Dim i As Integer, j As Integer, n As Integer, p As IntegerDim max As Single, min As Single, sum SingleFor i=1 To n p=(i-1)*7+1 d(i)=(a(p)+a(p+1)/2 sum=0max=a(p+2) : min=a(p+2)For j=p+2 To p+6 sum=sum+a(j) If a(j) > max Then max=a(j) min=a(j)Next je(i)=(sum-max-min
6、)/3f(i尸d(i)+e(i)List1.AddItem Str(i)+ “ " +Str(d(i)+“ " +Str(e(i)+“ " +Str(f(i)Next iEnd Sub答案(1)C成績(jī).accdb(3) n=a(0)If a(j)<min Then解析 本題綜合考查算法的程序?qū)崿F(xiàn)和 VB訪問(wèn)數(shù)據(jù)庫(kù)。(1)根據(jù)程序運(yùn)行界面中 的數(shù)據(jù)及數(shù)組a各元素的含義,知數(shù)組元素a(8)和a(9)的平均值為5.8分,也就 是第二位選手的難度分為5.8分,只有C選項(xiàng)的平均分為5.8分。(2)數(shù)據(jù)庫(kù)的文 件名的擴(kuò)展名格式為“ accdb”,通過(guò)分析數(shù)據(jù)庫(kù)連接部分代
7、碼,容易找出數(shù)據(jù)庫(kù) 的文件名為“成績(jī).accdb”。(3)變量n代表參賽選手的人數(shù),根據(jù)題意,數(shù)組 元素a(0)為參賽選手人數(shù),所以需要將數(shù)組元素a(0)的值賦給變量n,即n=a(0); 通過(guò)分析得知變量min代表五位E組裁判打“完成分”的最低分。通過(guò)連續(xù)求 數(shù)組中最值的算法得出處答案為If a(j)<min Then 。2.某單位招考公務(wù)員,2010年和2011年分別有4 020名和2 000名考生報(bào)名,下 列VB程序用于統(tǒng)計(jì)兩次考試都參加的考生信息。程序界面設(shè)計(jì)如圖所示,2010年和2011年的考生信息分別顯示在 List1和List2中,點(diǎn)擊“統(tǒng)計(jì)”按鈕,在 List3中顯示兩次考
8、試都參加的考生信息和總?cè)藬?shù)。(1)實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)跈M線處填入合適代碼。Dim a (1 To 4020 )As StringDim b (1 To 2000 )As StringPrivate Sub Form_Load()Dim conn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim constr As stringconstr= "Provider=Microsoft.ace.OLEDB.12.0; ”constr=constr &"Data Source= " &
9、; App.Path+ “KaoSheng.accdb”conn.ConnectionString=constrconn.open()Dim sql As String'將參加2010年下半年考試的考生的身份證號(hào)碼按升序存放在a數(shù)組中sql= "select * from kaoshengInfo where year= '2010' order by sfzh力ascrs.Open sql,conni=0Do While Not rs.EOFi=i+1a(i)=rs( “sfzh ” )List1.additem(a(i)rs.MoveNextLoop
10、9;將參加2011年下半年考試的考生的身份證號(hào)碼按升序存放在b數(shù)組中sql= "select * from kaoshengInfo where year= '2011' order by sfzh asc” rs.Open sql,conn i=0Do While Not rs.EOFi=i+1b(i)=rs(“sfzh ” )List2.additem(b(i)rs.MoveNextLooprs.CloseEnd SubPrivate Sub Command1_Click ()Dim bot As Integer , top As Integer , m As I
11、ntegerDim i As Integer ,ans As Integerans=0For i=1 To 2000bot=1Do While bot <=topm=Fix ( ( bot+top ) / 2 )If a ( m )=b ( i ) ThenList3.AddItem a ( m )Exit DoElseIf Thentop=m-1Elsebot=m+1End IfLoopNext iList3.AddItem“總計(jì)” +str(ans)+ “人次”End Sub分析上述代碼,在數(shù)據(jù)庫(kù)中用于存放考試信息的數(shù)據(jù)表名稱答案(1)top=4000 ans=ans+1 a(m)&
12、gt;b(i)(2) kaoshengInfo解析 本題考查數(shù)據(jù)庫(kù)的使用和對(duì)分查找。(1)題目中需要找出兩年都參加的人數(shù),采取的做法是枚舉考生較少的一年的人, 也就是b數(shù)組,同時(shí)利用對(duì)分法去驗(yàn)證枚舉到的人在另一年 (a數(shù)組中)是否存在。 對(duì)分的上界為bot,下界為top,分別為1和4 000,若查找到則輸出并將ans力口 1, 否則當(dāng)查找值b(i)小于中間值a(m)時(shí),改變下界,是一個(gè)標(biāo)準(zhǔn)的對(duì)分查找程序。(2)注意到程序中的 “ select * from kaoshengInfo where year= '2011' order by sfzh asc "。這是數(shù)據(jù)
13、庫(kù)查詢語(yǔ)句,表示從kaoshengInfo這張數(shù)據(jù)表中查 詢,where year= '2011'表示查詢所有 2011年的記錄。3.小王為學(xué)校教務(wù)處編寫了一個(gè)排考場(chǎng)座位的VB程序??紙?chǎng)采用“6排5歹共30人的模式。程序執(zhí)行后,考生的考號(hào)與姓名顯示在列表框 List1中,單擊“考場(chǎng)座位”按鈕Command傳場(chǎng)號(hào)與座位顯示在 Text1中,程序運(yùn)行界面如圖a所示,考生數(shù)據(jù)存放在數(shù)據(jù)庫(kù)文件“ kaochang.accdb ”中,數(shù)據(jù)表如圖b所示。實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)回答下列問(wèn)題: 當(dāng)"Form_Load()”事件處理過(guò)程運(yùn)行結(jié)束時(shí),變量x的值為(2)請(qǐng)?jiān)跈M線處填
14、入合適的代碼。Private Sub Command1_Click()Dim y As IntegerDim start As Integer'考場(chǎng)第1位數(shù)據(jù)元素的下標(biāo)Dim pa As Integer '數(shù)據(jù)庫(kù)導(dǎo)入VB時(shí)學(xué)生數(shù)據(jù)下標(biāo)Dim pb As Integer '考場(chǎng)座位數(shù)據(jù)下標(biāo)Dim i As Integer,j As Integer,k As Integer,m As Integerstart=1pa=startrecCount=x-1If recCount Mod 30 <> 0 ThenFor i=1 To y '將當(dāng)前考生人數(shù)添加到
15、30的整數(shù)倍recCount=recCount+1sName(recCount尸Next iEnd IfFor j=1 To recCount / 30pa=startpb=startFor i=1 To 30kcsName(pb)=sName(pa)pb=pb+1If i Mod 5=0 Thenpa=start+i 5ElseEnd IfNext istart=start+30Next jTextl.Text="" start=1For k=1 To recCount / 30m=startText1.Text=Text1.Text+ “第” +Str(k)+ “考場(chǎng)”
16、 +vbCrLf 'vbCrLf為換行標(biāo)志符,實(shí)現(xiàn)Textl中內(nèi)容換行顯示For i=1 To 6For j=1 To 5Text1.Text=Text1.Text+ "" +kcsName(m)m=m+1Next jText1.Text=Text1.Text+vbCrLfNext iText1.Text=Text1.Text+vbCrLf+vbCrLfNext kEnd SubPrivate Sub form_load()Dim myconn As New ADODB.ConnectionDim myrecord As New ADODB.Recordsetmyc
17、onn.ConnectionString= "provider=microsoft.ace.oledb.12.0;data source=e:kaoch ang.accdb”myconn.Openstrsql="select*from 三中"myrecord.Open strsql,myconnx=1List1.AddItem ”考號(hào) 姓名”List1.AddItem " ”Do While Not myrecord.EOF'讀取數(shù)據(jù)庫(kù)數(shù)據(jù),存入數(shù)組kh(x)、sName(x)中,代碼略Listl.AddItem kh(x)+ “ "
18、+sName(x) x=x+1myrecord.MoveNextLoopmyrecord.CloseEnd Sub答案43(2)y=30-recCount Mod 30pa=pa+6 start=start+30解析(1)數(shù)據(jù)庫(kù)名稱是kaochang.accdb,數(shù)據(jù)表名稱是“三中”,注意數(shù)據(jù)表 是沒(méi)有擴(kuò)展名的。變量x記錄讀取到的學(xué)生數(shù)據(jù)的數(shù)組下標(biāo),當(dāng)x=42時(shí),Do While Not myrecord.EOF是指到數(shù)據(jù)表的最后一條記錄后退出循環(huán),當(dāng)前條件成立,還 在數(shù)據(jù)表內(nèi),所以繼續(xù)執(zhí)行,x=x+1,x為43,跳出循環(huán)。 If recCount Mod 30 <> 0 Theny=30-recCount Mod 30For i=1 To yrecCount=recCount+1sName(recCount)=""Next iEnd If選擇嵌套循環(huán)結(jié)構(gòu)的作用:首先判斷學(xué)生人數(shù)是不是 30的倍數(shù),若不是,求出相 差人數(shù),通過(guò)循環(huán)結(jié)構(gòu)將加入的數(shù)組元素賦值為空字符串。 If i Mod 5=0 Thenpa=start+i 5Elsepa=pa+6End If本段選擇結(jié)構(gòu)的作用:當(dāng)i不是5的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)作之旅:藝術(shù)與實(shí)踐
- 農(nóng)村地區(qū)流動(dòng)兒童、留守兒童和其他兒童教育機(jī)會(huì)比較研究
- 二零二五年度快遞行業(yè)服務(wù)質(zhì)量提升合作協(xié)議2篇
- “雙減”政策背景下教師工作負(fù)擔(dān)的風(fēng)險(xiǎn)分析及其化解
- 二零二五年度房地產(chǎn)項(xiàng)目招投標(biāo)顧問(wèn)合同3篇
- 全國(guó)川教版信息技術(shù)七年級(jí)上冊(cè)第13課《個(gè)性化的桌面設(shè)置》說(shuō)課稿
- 北京市昌平區(qū)2024-2025學(xué)年高二上學(xué)期期末考試地理試卷(含答案)
- 湖北省鄂州市(2024年-2025年小學(xué)六年級(jí)語(yǔ)文)統(tǒng)編版摸底考試((上下)學(xué)期)試卷及答案
- 泵車知識(shí)培訓(xùn)課件視頻
- 貴州盛華職業(yè)學(xué)院《傳熱學(xué)B》2023-2024學(xué)年第一學(xué)期期末試卷
- 術(shù)中獲得性壓力性損傷預(yù)防
- 新形勢(shì)下物資采購(gòu)面臨的機(jī)遇、挑戰(zhàn)及對(duì)策思考
- 電氣接線工藝培訓(xùn)
- 中央空調(diào)安全規(guī)范
- 胸腔積液-課件
- 2023年全國(guó)統(tǒng)一建筑工程預(yù)算工程量計(jì)算規(guī)則完整版
- cn.7a一種醬香型大曲酒固態(tài)發(fā)酵的生態(tài)控制方法
- TLFSA 003-2020 危害分析與關(guān)鍵控制點(diǎn)(HACCP)體系調(diào)味面制品生產(chǎn)企業(yè)要求
- GB/T 8491-2009高硅耐蝕鑄鐵件
- 供水安全與搶修
- DB31 595-2021 冷庫(kù)單位產(chǎn)品能源消耗指標(biāo)
評(píng)論
0/150
提交評(píng)論