版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
專題六算法的程序?qū)崿F(xiàn)
探考情悟真題
【考情探究】
5年考情預(yù)測(cè)熱
考點(diǎn)考試內(nèi)容考試要求
考題示例考向難度度
解析算法的思想方法2016浙江4月選考,14,5
分;
2017浙江4月選考,14,5
解析算
分;進(jìn)制轉(zhuǎn)換、質(zhì)數(shù)問題及其他數(shù)
法及程C
解析算法的程序?qū)崿F(xiàn)2019浙江1月學(xué)考,11,5論問題'數(shù)學(xué)猜想等
序?qū)崿F(xiàn)
分;
2019浙江6月學(xué)考,11,5
分
枚舉算法的思想方法2016浙江10月選考,14,5
分;
2017浙江“月選考」4,5字符串處理問題是考試熱
枚舉算分;點(diǎn),如在字符串中利用逗
法及程C號(hào)、空格、數(shù)字等特殊符
枚舉算法的程序?qū)崿F(xiàn)2018浙江4月選考,14,5號(hào)完成_些統(tǒng)計(jì)或計(jì)算功
序?qū)崿F(xiàn)
分;能
2018浙江11月選考.14,5
分
冒泡排序的思想方法2015浙江10月選考,16,4
分;
2016浙江4月選考,11,2排序算法優(yōu)化;冒泡排序變
排序算
分;形,如雙向排序、奇偶分開
法及程C★★★A
冒泡排序的程序?qū)崿F(xiàn)2016浙江10月選考,16,3排序,素?cái)?shù)合數(shù)分開排★
序?qū)崿F(xiàn)
分;序、去重復(fù)數(shù)排序等
2017浙江11月選考,16,3
分;
2019浙江4月選考,16,3
分
選擇排序的思想方法2017浙江4月選考,12,2
排序變形,如雙向排序、奇
分;
★★
C偶分開排序、素?cái)?shù)合數(shù)分
☆
選擇排序的程序?qū)崿F(xiàn)
2018浙江4月選考,16,3開排序等
分
順序查找的思想方法順序查找比較簡(jiǎn)單,一般不
查找算
單獨(dú)考,會(huì)結(jié)合其他知識(shí)
2017浙江4月選考,16,3★★
法及程C點(diǎn),比如在數(shù)列中插入數(shù)、
分☆
順序查找的程序?qū)崿F(xiàn)
序?qū)崿F(xiàn)刪除數(shù)列中的重復(fù)數(shù)、w
找替換等
對(duì)分杳找的思想方法2015浙江10月選考,11,2
分;
2016浙江4月選考,12,2
分.
一類題是考查對(duì)分查找的
2016浙江10月選考,12,2運(yùn)用:如查找次數(shù)、查找中
分;各個(gè)變量值的變化;另一類
2017浙江1月選考,IL2題是將數(shù)據(jù)源序列由單一
查找算分;的從小到大變成如奇偶分
法及程C開數(shù)列、循環(huán)有序數(shù)列、
對(duì)分查找的程序?qū)崿F(xiàn)201711★★★★
浙江月選考,⑵2左右交替上升闞等,此類:
序?qū)崿F(xiàn)
分:數(shù)列往往是分成前后兩個(gè)
2018浙江4月選考,12,2有序數(shù)列,查找過程中,對(duì)
分;分的主要思想不變,無非是
增加了一些條件設(shè)置
2018浙江11月選考,16,3
分;
2019浙江4月選考,12,2
分
遞歸算遞歸算法的思想方法遞歸算法本質(zhì)上是自定義
法及程b函數(shù)的應(yīng)用,到目前為止,
☆
遞歸算法的程序?qū)崿F(xiàn)
序?qū)崿F(xiàn)未在真題中出現(xiàn)
算法在通過Connection對(duì)象連
目前關(guān)于數(shù)據(jù)庫一種新的
數(shù)據(jù)管接數(shù)據(jù)庫2016
浙江10月選考,17,6考法是選擇題形式,只要掌..
*
分握連接數(shù)據(jù)庫并讀取數(shù)據(jù)☆
理中的通過Recordset對(duì)象讀
應(yīng)用取數(shù)據(jù)表中的數(shù)據(jù)庫的標(biāo)準(zhǔn)代碼即可。此外
要學(xué)會(huì)分析數(shù)組變量中存
算法在數(shù)據(jù)管理中的應(yīng)
儲(chǔ)的數(shù)據(jù)內(nèi)容和類型,并掌
用
握數(shù)組下標(biāo)的靈活運(yùn)用
分析解讀本專題主要考查幾大算法的思想方法和程序?qū)崿F(xiàn),包括枚舉、解析、排序、查找、遞歸,題型有選擇題和非選擇題。
選擇題為第11和12題、非選擇題為第15和16題,這幾題考杳排序算法與對(duì)分查找的頻度較高,難度為中等或較難。
縱觀幾次真題,程序題有逐年加難的趨勢(shì)。試題中對(duì)于算法的考查不再局限于算法的基本形,而是在基本形的基礎(chǔ)上做了許多
變形,比如冒泡排序的幾種變式,對(duì)分查找的變式等。還有一種變化是,在基本形的基礎(chǔ)上增加程序的功能,比如對(duì)排序算法進(jìn)行改
進(jìn)從而提高排序的效率、記錄排序中數(shù)據(jù)的移動(dòng)過程,利用查找算法杳找并刪除數(shù)列中的重復(fù)數(shù)據(jù)等。
還有一個(gè)重要變化是,最近幾次的真題對(duì)幾個(gè)經(jīng)典算法的考查相對(duì)弱化,開始加強(qiáng)對(duì)數(shù)組的考查。往往在選擇題最后2個(gè)題中
有一個(gè)是考查數(shù)組的綜合運(yùn)用,該題往往難度較大。一般選擇題中保留一題考查排序或?qū)Ψ植檎?考對(duì)分查找的概率較高。
黝§庫程序題一般難度不大,可能是篇幅太長的緣故,大題中考數(shù)據(jù)庫的概率并不高,有很多題都是一句話帶過:從數(shù)據(jù)庫中讀
取了什么數(shù)據(jù)存儲(chǔ)到什么數(shù)組變量中。讀取數(shù)據(jù)并存儲(chǔ)到數(shù)組變量中后,對(duì)數(shù)組的綜合運(yùn)用相對(duì)難度大一些,要學(xué)會(huì)分析題中各數(shù)
組變量的作用,分別存儲(chǔ)了什么類型的數(shù)據(jù),以及數(shù)組下標(biāo)的靈;舌運(yùn)用。目前數(shù)據(jù)庫可能會(huì)有一種新的考法,以選擇題的形式,考查
連接數(shù)據(jù)庫和讀取數(shù)據(jù)庫的基本方法和代碼。要掌握從代碼中分析數(shù)據(jù)庫文件的名稱、數(shù)據(jù)表的名稱,以及數(shù)據(jù)表中字段的讀取
方法、記錄集的移動(dòng)方法等基礎(chǔ)知識(shí)。
破考點(diǎn)練考向
【考點(diǎn)集訓(xùn)】
考點(diǎn)一解析算法及程序?qū)崿F(xiàn)
1.(2018寧波“十校聯(lián)考”,16,3分)在VB的算術(shù)運(yùn)算中,最大的實(shí)數(shù)類型Double有效位數(shù)也只有15位。為了實(shí)現(xiàn)除法運(yùn)算保留
任意位數(shù),小明根據(jù)除法原理,編寫了如下程序,功能如下:在文本框Textl中輸入被除數(shù)(正整數(shù)),在文本框Text2中輸入除數(shù)(正
整數(shù)),在文本框Text3中輸入保留小數(shù)位數(shù),單擊按鈕Commandl,在標(biāo)簽Label1中顯示除法運(yùn)算的商。程序運(yùn)行界面如圖所示,
但加框處代碼有錯(cuò),請(qǐng)改正。
PrivateSubCommand1_C1ick()
Dimx,yAsInteger
DimnAsInteger
DimsAsString
x=Vai(Textl.Text):y=Vai(Text2.Text)
n=Vai(Text3.Text)
s=s+Str(x\y)
s=s+"
k=xMody
Fori=1Ton
|x=x+k*10|'(1)
k=xMody
Nexti
Label1.Caption="商為:"+s
EndSub
答案(Dx=k*10(2)s=s+Str(x\y)
2.(2018浙江十校聯(lián)盟選考適應(yīng)性考試,14,5分)編寫“二進(jìn)制數(shù)轉(zhuǎn)換為十六進(jìn)制數(shù)”程序,實(shí)現(xiàn)如下功能:在文本框Text!中輸
入一個(gè)二進(jìn)制數(shù),單擊“轉(zhuǎn)換”按鈕Commandl,將二進(jìn)制數(shù)轉(zhuǎn)換為十六進(jìn)制數(shù)并在文本框Text2中顯示。程序運(yùn)行界面如圖所示。
⑴設(shè)計(jì)如圖所示的程序界面,至少要使用個(gè)類(填數(shù)字)。
⑵實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。
PrivateSubCommandIClickO
DimsiAsString,s2AsString
DimiAsInteger,xAsInteger
Constcode=”0123456789ABCDEF”
si=Textl.Text:s2="”
DoWhileLen(sl)Mod400
si="0"+si
Loop
x=0:i=1
DoWhilei<=Len(sl)
x=x*2+Val(Mid(si,i,1))
i=i+l
If①Then
s2=s2+Mid(code,x+1,1)
EndIf
Loop
Text2.Text=s2
EndSub
⑶若文本框Textl中輸入的內(nèi)容為“101101”,單擊“轉(zhuǎn)換”按鈕后,文本框Text2中顯示的內(nèi)容是0
答案(1)4⑵①iMod4=1或(i-l)Mod4=0(或其他等價(jià)答案)②x=0⑶2D
考點(diǎn)二枚舉算法及程序?qū)崿F(xiàn)
L(2019寧波新高考適應(yīng)性考試)得分問題:給出一個(gè)由A和X組成的字符串,統(tǒng)計(jì)字符的得分之和。每個(gè)A的得分為已經(jīng)連續(xù)出
現(xiàn)的A的個(gè)數(shù),X得分為0。例如,AAXXAXXAAA的得分為1+2+0+0+1+0+0+1+2+3?,F(xiàn)編寫一個(gè)程序,功能如下:在文本框Text1中輸
入字符串,單擊“統(tǒng)計(jì)”按鈕Cmd_Sta后,程序計(jì)算得分,結(jié)果顯示在Text2中。
(l)Cmd_Sta對(duì)象屬于類(單選,填字母:A.Form/B.Label/C.TextBox/D.CommandButton),
⑵實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)诔绦騽澗€處填入合適的代碼。
PrivateSubCmd_Sta_Click()
DimsumAsInteger,iAsInteger,entAsInteger
DimcAsString,szAsString
sz=TextLText
ent=0:sum=0
Fori=1ToLen(sz)
①
Ifc="A"Then
②
sum=sum+ent
Else
ent=0
EndIf
Nexti
Tcxt2.Text=Str(sum)
EndSub
⑶運(yùn)行^亥程序,輸入數(shù)據(jù)如上圖所示,程序執(zhí)行到循環(huán)結(jié)束時(shí),變量ent的值為0
答案(1)D(2)①c=Mid(sz,i,1)或c=Mid(Textl.Text,i,1)②ent=ent+1(3)3
2.珠心算是在大腦中以算盤表象作為載體,運(yùn)用珠算法則所進(jìn)行的計(jì)算。某學(xué)校的珠心算老師采用一種快速考查珠心算加法能力
的測(cè)驗(yàn)方法。他隨機(jī)給出一個(gè)正整數(shù)集合,集合中的數(shù)各不相同,然后要求學(xué)生回答:其中共有多少個(gè)數(shù)恰好等于集合中另外兩個(gè)
(不同的)數(shù)之和?例如對(duì)于集合U,2,3,4},一共有2個(gè)數(shù)等于集合中另外兩個(gè)數(shù)之和,它們是3、4(4=3+1,3=2+1)。將上述算法編
寫成程序,其功能如下:程序運(yùn)行時(shí)產(chǎn)生n個(gè)范圍在[1,100]內(nèi)的不同的隨機(jī)整數(shù)存儲(chǔ)在數(shù)組a中,并在列表框List1中顯示。單擊
按鈕Command1后,在標(biāo)簽Label1上輸出結(jié)果,如圖所示。
⑴對(duì)于集合{1,2,3,4,5.6},一共有個(gè)數(shù)等于集合中另外兩個(gè)數(shù)之和。
⑵實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)趧澗€處填入合適代碼。
Constn=12
Dima(lTon)AsInteger
Dimflag(lTo100)AsBoolean
PrivateSubForm_Load()
DimiAsInteger,tAsInteger
Fori=lTo100
flag(i)=False
Nexti
i=l
DoWhilei<=n
t=Int(Rnd*100)+1
IfNotflag(t)Then
①
Listl.AdditemStr(t)
flag(t)=True
i=i+l
EndIf
Loop
EndSub
PrivateSubCommandl_Click()
DimiAsInteger,jAsInteger,ansAsInteger
ans=0
Fori=lTon
Forj=i+lTon
Ifa(i)+a(j)<=100Then
If?Then
ans=ans+l
flag(a(i)+a(j))=False
EndTf
二
Nextj
Nexti
Label1.Caption="共有"+Str(ans)+”個(gè)數(shù)!"
EndSub
答案(1)4(2)①a(i)=t②flag(a(i)+a(j))或flag(a(i)+a(j)):True③EndIf
考點(diǎn)三排序算法及程序?qū)崿F(xiàn)
1.(2019金華十校第一學(xué)期調(diào)研考試,11,2分)有一個(gè)數(shù)組,采用冒泡排序,第一翩E序后的結(jié)果為3.18,5,35,8,9,11,13,32,那么
該數(shù)組的原始順序不可能星()
A.18,5,35,8,9,11,13,32,3
B.18,5,35,8,9,11,3,13,32
C.18,5,35,3,8,9,11,13,32
D.3,18,5,35,13,11,32,8,9
答案D
2.(2020屆名校協(xié)作體信息技術(shù)試題)某排序算法的VB程序段如下:
k=1
Fori=1To2
Forj=1To6-2*i
Ifk*a(j)<k*a(j+2)Then
t=a(j):a(j)=a(j+2):a(j+2)=t
EndIf
k=-k
Nextj
Nexti
數(shù)組元素a⑴到a(6)的初始值依次為“15,11,58,38,26,9”,該程序段執(zhí)行后,數(shù)組元素a⑴到a(6)的值分別為()
A.58,9,26,11,15,38B.58,38,26,11,15,9
C.15,38,26,11,58,9D.58,38,26,15,11,9
答案A
3.(2018溫州新力量聯(lián)盟期末)有如下VB程序段:
Constn=8
Dima(lTon)AsInteger
Fori=1Ton
a(i)=Int(Rnd*20)
Nexti
x=n\2
Fori=xTo2Step-1
Forj=1Toi-1
Ifa(j)<a(i)Then
t=a(j):a(j)=a(i):a(i)=t
EndIf
Nextj
Nexti
i=n
DoWhilei>x+1
k=i
Forj=i-lTox+lStep-1
Ifa(j)>a(k)Thenk=j
Nextj
Ifk<>iThen
t=a(k):a(k)=a(i):a(i)=t
EndIf
i=i-1
Loop
執(zhí)行完這段代碼后,數(shù)組a中各個(gè)元素的值可能的是()
A.2,8,9,11,16,16,7,3B,19,19,18,12,9,8,6,6
C.20,17,10,10,5,II,13,16D.14,11,10,5,0,6,15,15
答案D
4.(2018寧波“十校聯(lián)考”期末)若有以下數(shù)據(jù):64,57,22,96,71,分別存儲(chǔ)在a(1)至a(5)中,經(jīng)過以下程序段處理后的數(shù)據(jù)
依次為()
Dima(lTo6)AsInteger
s=0
Fori=1To5
Ifa(i)Mod2=1Thens=s+1
Nexti
Fori=1To4
Ifa(i)Mod2=0Then
Forj=5Toi+1Step-1
Ifa(j)Mod2=1Then
a(6)-a(i):a(i)=a(j):a(j)=a(6):ExitFor
EndIf
Nextj
EndIf
Nexti
Fori=s+2To5
k=i-1
Forj=iTo5
Ifa(k)>a(j)Thenk=j
Nextj
Ifk<>i-1Then
a(6)=a(i-1):a(i-1)=a(k):a(k)=a(6)
EndIf
Nexti
A.22,57,64,71,96B.71,57,22,96,64
C.71,57,22,64,96D.57,71,22,64,96
答案C
考點(diǎn)四查找算法及程序?qū)崿F(xiàn)
1.(2019浙江“七彩陽光”聯(lián)盟期初聯(lián)考)某對(duì)分有找算法部分代碼如下:
i=1:j=1000:flag=True:p=0
key=Vai(Textl.Text)
DoWhilei<=jAndflag
m=(i+j)\2
p=p+1
Ifa(m)=keyThenflag=False
Ifa(m)>keyThenj=m-1Elsei=m+1
Loop
數(shù)組元素a⑴到a(1000)中存放著升序排列的數(shù)據(jù)。下列說法正確的是()
A.若key的值小于a(1),則執(zhí)行該段程序后,變量j的值等于1
B.若key的值等于a(l),則執(zhí)行該段程序后,變量p的值等于10
C.若key的值等于a(1000),則執(zhí)行該段程序后,變量i的值等于1001
D.無論key的值是否在數(shù)組a中,執(zhí)行該段程序后,變量i的值均不可能等于m
答案C
2.(2018溫州九校聯(lián)考,12,2分)有如下VB程序段:
i=l:j=10:p=0
f=False
k=Int(Rnd*100)+0.5
DoWhilei<=jAndNotf
m=Fix((i+j)/2+0.5)
Tfk=a(m)Then
f=True
Elselfk<a(m)Then
j=m-l:p=p+l
Else
i=m+l:p=p-l
EndIf
Loop
Label1.Caption=Str(p)
數(shù)組元素a(1)到a(10)的值依次為“5,16,22,28,35,43,52,67,78,89”,執(zhí)行該程序段后,Label1的值不可能是()
A.-3B.-lC.1D.3
答案D
3.某對(duì)分查找算法的VB程序段如下:
k=Val(Tcxtl.Text)
i=l:j=6:Labell.Caption="":f=Ealse
DoWhilei<=jAndNotf
m=(i+j)\2
Ifa(m)=kThenf=True
Ifa(m)>a(i)Then
Ifa(i)<=kAndk<a(m)Thenj=m-lElsei=i+l
Else
Ifa(m)<kAndk<=a(j)Theni=i+lElsej=j-l
EndIf
Label1.Caption=Label1.Caption+Str(a(m))
Loop
數(shù)組元素a(1)到a(6)的值依次為“58,66,72,24,35,40”,在文本框Text1中輸入的值為35,執(zhí)行該程序段,標(biāo)簽Label1中顯示
的值是()
A.7235B.2435
C.722435D.72242435
答案D
4.(2019五校聯(lián)考)某對(duì)分查找算法的VB程序段如下:
Key=Int(Rnd*49)*2+1
s=0:i=1:j=10
DoWhilei<=j
m=(i+j)\2
IfKey=a(m)ThenExitDo
IfKey<a(m)Then
j=m-1:s=2*s
Else
i=m+1:s=2*s+1
EndIf
Loop
數(shù)組a⑴到a(10)的值依次為“2,6,7,15,20,24,27,43,52,63”,執(zhí)行該程序段后,s的值不可熊為()
A.2B.3C.5D.15
答案A
考點(diǎn)五遞歸算法及程序?qū)崿F(xiàn)
1.某同學(xué)用伯編碼如下程序:
PrivateSubCommand1ClickO
DimkAsInteger,aAsInteger,bAsInteger
a=Vai(Textl.Text):b=Vai(Text2.Text)
Label1.Caption=trans(a,b)
EndSub
Functiontrans(niAsInteger,nAsInteger)AsString
Ifm<>0Then
r=mModn
trans=trans(m\n,n)+Str(r)
Else
trans="0"
EndIf
EndFunction
程序運(yùn)行時(shí),在文本框Text1和Text2中分別輸入11和2,則Label1中的輸出結(jié)果是()
A.01011B.1011C.01101D.11010
答案A
2.樓梯有n階臺(tái)階,上樓可以一步上1階,也可以一步上2階,探究共有多少種不同的走法。
⑴完善程序:
PrivateSubCommand1Click()
DimnAsInteger
n=Vai(Textl.Text)
Text2.Text=Str(f(n))
EndSub
Functionf(aAsInteger)
Ifa=1Then
f=1
Elselfa=2Then
f=①
Else
f=②
EndIf
EndFunction
⑵若有10階臺(tái)階,共有種走法。
答案(D①2②f(a-1)+f(a-2)(2)89
考點(diǎn)六算法在數(shù)據(jù)管理中的應(yīng)用
小林編寫了一個(gè)統(tǒng)計(jì)高三16個(gè)班級(jí)選考技術(shù)人數(shù)占比的YB程序。運(yùn)行界面如圖所示,窗體加載時(shí),從數(shù)據(jù)庫中(其中“選考三”
字段中存儲(chǔ)了“技術(shù)”選考信息)調(diào)用數(shù)據(jù),統(tǒng)計(jì)各班選考技術(shù)的人數(shù)占比,并在列表框Listl中顯示“班級(jí)”和“選技術(shù)占比”。
單擊“排序”按鈕Command1,數(shù)據(jù)按選技術(shù)占比降序排序,在List2中顯示排序結(jié)果。
持序后
10
8
5
L1
實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)回答下列問題:
⑴分析程序,可知調(diào)用的數(shù)據(jù)表的名稱為O
⑵請(qǐng)?jiān)趧澗€處填入合適的代碼。
DimnAsInteger,iAsInteger,jAsInteger,變量n用于統(tǒng)計(jì)學(xué)生總數(shù)
DimratedTo16)AsInteger,num(lTo16)AsInteger,class(1To16)AsInteger
Dimtech(lTo50)AsInteger,cinfo(lTo5000)AsInteger,subj(lTo5000)AsString
PrivateSubFormLoad()
DimconnAsNewADODB.Connection,rsAsNewADODB.Recordset
conn.Connectionstring="Provider=Microsoft.ACE.OLEDB.12.0;DATASource="&App.Path&"\stuimfo.accdb”
conn.Open
Setrs.ActiveConncction=conn
rs.Open,SELECT*FROMxkqk*
'此處代碼略,實(shí)現(xiàn)將每個(gè)學(xué)生班級(jí)存儲(chǔ)到數(shù)組cinfo中,選考三科目存儲(chǔ)到數(shù)組subj中
Fori=1Ton
①‘統(tǒng)計(jì)各班人數(shù)存儲(chǔ)到數(shù)組num中,num(l)存儲(chǔ)1班的人數(shù)
Nexti
Fori=1To16
class(i)=i
Forj=1Ton
Ifclass(cinfo(j))=iThen
Ifsubj(j)="技術(shù)"Then②
EndIf
Nextj
rate(i)=tech(i)/num(i)*100
List1.Addlternads(class(i),3)+"/1,+ads(rate(i),7)+"%”
Nexti
EndSub
PrivateSubCommand1_C1ick()
DimiAsInteger,tAsInteger,sAsInteger
Fori=1To15
Forj=16Toi+1Step-1
If?Then
t=rate(j):rate(j)=rate(j-l):rate(j-l)=t
s=class(j):class(j)=class(j-l):class(j-l)=s
EndIf
Nextj
Nexti
List2.Additem"班級(jí)"+〃"+"選技術(shù)占比”
Fori=1To16
List2.AdditemStr(class(i))+"+Str(rate(i))+"為”
Nexti
EndSub
答案(l)xkqk(2)①num(cinfo(i))=num(cinfo(i))+l
②tech(i)=tech(i)+l③rale(j)>rate(j-1)
【五年高考】
考點(diǎn)一解析算法及程序?qū)崿F(xiàn)
2015—2019年真題■提升題組
1.(2019浙江6月學(xué)考,11,5分)小宇為選定班級(jí)參賽作品編了一個(gè)VB程序,設(shè)計(jì)如下:在文本框Texll中輸入5位評(píng)委對(duì)3個(gè)作
品的評(píng)分依據(jù)(評(píng)委對(duì)作品的評(píng)分?jǐn)?shù)據(jù)由3位十進(jìn)制數(shù)組成,第1位對(duì)應(yīng)作品編號(hào),第2、3位對(duì)應(yīng)作品得分,分值范圍為[60,99]0
如“275”表示2號(hào)作品得分75)。單擊“計(jì)分”按鈕后,在標(biāo)簽Label1中輸出3個(gè)作品的平均分,在Label2中輸出參賽的作品
(選擇最高平均分作品參賽,若最高平均分存在并列,則從并列作品中隨機(jī)抽?。﹐程序運(yùn)行界面如圖所示。
⑴“計(jì)分”按鈕的對(duì)象名為.
⑵程序部分代碼如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。
PrivateSubjf_Click()
DimsAsString,dAsString,iAsInteger
DimflAsSingle,f2AsSingle,f3AsSingle
s=Textl.Text
i=1
DoWhile①
d=Mid(s,i,3)
IfMid(d,1,1)=TThen
fl=fl+Vai(Mid(d,2,2))
ElselfMid(d,1,1)=〃2"Then
f2=f2+Vai(Mid(d,2,2))
Else
f3=f3+Vai(Mid(d,2,2))
EndIf
②
Loop
Label1.Caption="作品1平均分為:“+Str(f1/5)+”作品2平均分為:"+Str(f2/5)+”作品3平均分為:"+Str(f3/5)
以下省略“處理并列最高平均分,并在Label2中輸出選取的參賽作品”的代碼
EndSub
⑶運(yùn)行該程序時(shí),在文本框Textl中以不同的順序輸入原評(píng)分?jǐn)?shù)
據(jù):380/295/283/170/180/385/372/285/190/180/390/384/272/170/276,單擊“計(jì)分”按鈕,則Label1中顯示的結(jié)果
(選填:會(huì)/不會(huì))發(fā)生改變。
答案⑴jf⑵①i〈=Len(s)或i<Len(s)或i<=57或其他可行答案②i:i+4⑶不會(huì)
2.(2019浙江1月學(xué)考,11,5分)小紅編寫了一個(gè)將5位以內(nèi)的十六進(jìn)制正整數(shù)轉(zhuǎn)化成十進(jìn)制數(shù)的VB程序,功能如下:在文本框
Textl中輸入一個(gè)十六進(jìn)制正整數(shù),單擊“轉(zhuǎn)換”按鈕Commandl,在標(biāo)簽Labe13中顯示結(jié)果。程序運(yùn)行界面如圖所示。
(1)要使窗體Forml標(biāo)題顯示“數(shù)制轉(zhuǎn)換”,則需修改窗體的(單選,填字母:A.Font/B.Caption/C.BackColor)屬
性。
⑵實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。
PrivateSubCommand1Click()
DimxAsString,chAsString
DimflagAsBoolean,iAsInteger,resultAsLong
x二①
i=1
result=0
flag=True
ch=Mid(x,1,1)
DoWhilei<=Len(x)Andflag=True
Ifch>="0"Andch<="9"Then
result=result*16+Vai(ch)
Elselfch>="A〃Andch<=〃Z"Then
result=result*16+(Asc(ch)-Asc("A")+10)
Elselfch>="a"Andch<=〃z"Then
result=result*16+(Asc(ch)-Asc("a")+10)
Else
flag=False
EndIf
i=i+1
ch=②
Loop
Ifflag=TrueThen
Label3.Caption=Str(result)
Else
Labe13.Caption二"輸入錯(cuò)誤”
EndIf
EndSub
⑶若在文本框Text]中輸入5+9,單擊“轉(zhuǎn)換”按鈕后,標(biāo)簽Labe13中顯示的內(nèi)容是(單選,填字母:A.14/B.E/
C.輸入錯(cuò)誤)。
答案(DB(2)①Tex11.TexI或其他等價(jià)表達(dá)式②Mid(x,i,1)或Vid(Texll.Text,i,1)或其他等價(jià)表達(dá)式(3)C
3.(2017浙江4月選考,14,5分)奇偶校驗(yàn)是一種校驗(yàn)數(shù)據(jù)傳輸正確性的方法。其中奇校驗(yàn)方法:統(tǒng)計(jì)二進(jìn)制數(shù)據(jù)的數(shù)位中“1”的
個(gè)數(shù),若個(gè)數(shù)為奇數(shù),則校驗(yàn)位值為0,否則校驗(yàn)位值為1。小李編寫了一個(gè)計(jì)算奇校驗(yàn)位值的VB程序,功能如下:在文本框Textl
中輸入廣255間的十進(jìn)制待校驗(yàn)數(shù),單擊“計(jì)算”按鈕Command1后,在文本框Text2中顯示該數(shù)對(duì)應(yīng)的二進(jìn)制值,并在標(biāo)簽
Label3中顯示該數(shù)的校驗(yàn)位值。程序運(yùn)行界面如圖所示。
⑴在設(shè)計(jì)程序界面時(shí),要清空文本框中的顯示內(nèi)容,應(yīng)修改該文本框中的屬性。
⑵實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。
PrivateSubCommand1_C1ick()
DimaAsInteger,sAsString
DimnAsInteger,tAsInteger,vAsInteger
n=Vai(Textl.Text)
t=0
s=""
DoWhilen>0
a=nMod2
n=n\2
t=?______
s=Str(a)+s
Loop
v=tMod2
Text2.Text=s
Labe13.Caption="校驗(yàn)位值:"+②
EndSub
⑶運(yùn)行該程序,在文本框Textl中輸入22,單擊“計(jì)算”按鈕,則顯示的校驗(yàn)位值是0
答案(l)Text(2)①t+a②Str(l-v)(3)0
考點(diǎn)二枚舉算法及程序?qū)崿F(xiàn)
2015—2019年真題,提升題組
1.(2018浙江11月選考,14,5分)在平面坐標(biāo)系中,給定一組有序的點(diǎn)。從原點(diǎn)出發(fā),依次用線段連接這些點(diǎn),構(gòu)成一條折線。要
求編寫一個(gè)“計(jì)算折線長度”的程序,功能如下:在文本框Texll中依次輸入這些點(diǎn)的坐標(biāo)值(數(shù)據(jù)都用逗號(hào)分隔并以逗號(hào)結(jié)尾),
單擊“計(jì)算”按鈕Cmd后,程序計(jì)算這條折線的長度,結(jié)果顯示在Label1中。例如,三個(gè)點(diǎn)的坐標(biāo)為⑸10),(8,12),(6,17),輸入
格式S口圖所示。
u計(jì)篇折線長度
15,10,8,12,6,17,||1
折線長度為:20.17105
(l)Cmd對(duì)象屬于類(單選,填字母:A.Form/B.Label/C.TextBox/D.CommandButLon)o
⑵實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。
PrivateSubCmd.ClickO
DimiAsInteger,jAsInteger,kAsInteger
DimxlAsSingle,ylAsSingle,x2AsSingle,y2AsSingle
DimdAsSingle,TotaldAsSingle,vAsSingle,sAsString
s二①
xl=0:yl=0'出發(fā)點(diǎn)為坐標(biāo)原點(diǎn)
k=l:j=l:Totald=0
Fori=lToLcn(s)
IfMid(s,i,1)=","Then
v=Val(Mid(s,j,i-j)),提取坐標(biāo)值,保存在變量v中
j=i+l
If?Then
x2=v
Else
y2=v
d=Sqr((x2-xl)-2+(y2-yl)2)
Totald=Totald+d
xl=x2:yl=y2
EndIf
k=k+l
EndIf
Nexti
Label1.Caption=Str(Totald)
EndSub
⑶運(yùn)行該程序,輸入題干中的數(shù)據(jù),程序執(zhí)行到循環(huán)結(jié)束時(shí),變量k為。
答案(DD(2)①Text1.Text②kMod2=1(3)7
2.(2018浙江4月選考,14,5分)某種編碼以4位二進(jìn)制碼為一組,每組前兩位表示方向,后兩位表示距離。編寫一個(gè)程序,將編碼
翻譯成方向和距離,距離值為每組編碼后兩位二進(jìn)制碼轉(zhuǎn)換為十進(jìn)制數(shù)的值。具體功能如下:在文本框Textl中輸入連續(xù)多組編碼,
單擊“翻譯”按鈕Commandl,結(jié)果顯示在列表框Listl中。程序運(yùn)行界面如圖所示。
⑴要使程序運(yùn)行時(shí),文本框Textl的Width屬性值為2018,可在FormLoad事件過程中添加語句(單選填字
母:A.Width=2018/B.Textl.Width=2018/C.Width.Text1=2018)o
⑵實(shí)現(xiàn)上述功能的VB程序如下,請(qǐng)?jiān)趧澗€處填入合適的代碼。
PrivateSubCommand1Click()
DimsAsString,cAsString,dAsString
DimnAsInteger,blAsInteger,b2AsInteger,vAsInteger,iAsInteger
s=Textl.Text:n=Len(s):i=1
DoWhilei<=n
c=Mid(s,i,2)
Tfc="00"Then
d="東〃
Elselfc="01"Then
d一南"
Elselfc-"10"Then
d=〃西〃
Else
d=〃北〃
EndIf
bl=Vai(Mid(s,i+2,1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 包含維修條款的2025年度二手手機(jī)買賣合同范本3篇
- 二零二五版桉樹種植與星海生態(tài)教育合作項(xiàng)目合同3篇
- 二零二五年度出國留學(xué)學(xué)費(fèi)支付及管理合同3篇
- 二零二五年度煤炭運(yùn)輸合同范本:多式聯(lián)運(yùn)與綜合物流服務(wù)協(xié)議4篇
- 二零二五版文化中心場(chǎng)地租賃協(xié)議書4篇
- 2025年度海洋工程聘用工程師及項(xiàng)目實(shí)施合同4篇
- 2025版充電樁安全風(fēng)險(xiǎn)評(píng)估與應(yīng)急預(yù)案制定合同3篇
- 二零二五版智慧醫(yī)療路演投資合同范本4篇
- 二手房交易詳細(xì)合同2024年版版B版
- 2025版工業(yè)機(jī)床設(shè)備買賣及零配件供應(yīng)合同3篇
- 2025年度版權(quán)授權(quán)協(xié)議:游戲角色形象設(shè)計(jì)與授權(quán)使用3篇
- 心肺復(fù)蘇課件2024
- 《城鎮(zhèn)燃?xì)忸I(lǐng)域重大隱患判定指導(dǎo)手冊(cè)》專題培訓(xùn)
- 湖南財(cái)政經(jīng)濟(jì)學(xué)院專升本管理學(xué)真題
- 全國身份證前六位、區(qū)號(hào)、郵編-編碼大全
- 2024-2025學(xué)年福建省廈門市第一中學(xué)高一(上)適應(yīng)性訓(xùn)練物理試卷(10月)(含答案)
- 《零售學(xué)第二版教學(xué)》課件
- 廣東省珠海市香洲區(qū)2023-2024學(xué)年四年級(jí)下學(xué)期期末數(shù)學(xué)試卷
- 房地產(chǎn)行業(yè)職業(yè)生涯規(guī)劃
- 江蘇省建筑與裝飾工程計(jì)價(jià)定額(2014)電子表格版
- MOOC 數(shù)字電路與系統(tǒng)-大連理工大學(xué) 中國大學(xué)慕課答案
評(píng)論
0/150
提交評(píng)論