




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《VisualBasic程序設(shè)計(jì)——以計(jì)算思維為導(dǎo)向》課后答案作者:金瑩張潔第1章1.VB的IDE(集成開發(fā)環(huán)境)的組成有哪些部分?解:標(biāo)題欄、菜單欄、工具欄、控件工具箱、窗體設(shè)計(jì)窗口、代碼窗口、工程資源管理窗口、屬性窗口、窗體布局窗口。2.VB程序的可視化編程過(guò)程有哪些步驟?解: 分析設(shè)計(jì),程序需要實(shí)現(xiàn)的功能如何用VB實(shí)現(xiàn);界面設(shè)計(jì),在窗體上添置需要的控件對(duì)象,并設(shè)置對(duì)象的屬性;代碼的編寫,VB是事件驅(qū)動(dòng)的程序語(yǔ)言,所以代碼均應(yīng)寫在每一個(gè)事件過(guò)程或通用過(guò)程中;保存窗體和工程文件;調(diào)試程序和測(cè)試運(yùn)行程序;考慮是否有更優(yōu)化的方法。3.考慮一下計(jì)算思維的重要性,與程序設(shè)計(jì)的關(guān)系。略4.修改例1-1,窗體輸出“HelloWorld”時(shí),將命令按鈕隱藏起來(lái)。 解:PrivateSubCommand1_Click()Print"HelloWorld"Command1.Visible=FalseEndSub第2章1.算法的特點(diǎn)有哪些? 解:確定性、有窮性、可行性、輸入、輸出2.寫出給以下5個(gè)數(shù)字:15、21、11、37、24按從小到大排序的算法。(分別用自然語(yǔ)言、流程圖描述) 解:算法一(自然語(yǔ)言描述):Step1:找出最小的數(shù)字11,排在第1個(gè);Step2:在剩下的4個(gè)數(shù)字中找出最小的數(shù)字15,排在第2個(gè);Step3:在剩下的3個(gè)數(shù)字中找出最小的數(shù)字21,排在第3個(gè);Step4:再在剩下的2個(gè)數(shù)字中找出最小的數(shù)字24,排在第4個(gè);Step5:剩下最后一個(gè)數(shù)字37,排在第5個(gè)。算法二(流程圖描述):開始開始N(1)~N(5)分別賦值i=1i<k在N(i)到N(5)中尋找最小的數(shù),交換到N(i)中i=i+1輸出N(1)ToN(5)結(jié)束3.有10個(gè)數(shù)據(jù)的集合S,寫一個(gè)算法:在集合S中查找數(shù)據(jù)N,如果找到即輸出“找到數(shù)據(jù)N”,如果沒(méi)找到則輸出“沒(méi)有找到數(shù)據(jù)N”。(分別用自然語(yǔ)言、流程圖描述) 解:算法一(自然語(yǔ)言描述):S1:輸入數(shù)據(jù)的個(gè)數(shù)k=10和要查找的數(shù)據(jù)N;S2:使i=1,i用于計(jì)數(shù);S3:從數(shù)據(jù)集合中依次讀取一個(gè)數(shù)據(jù)X;S4:若X=N,輸出“找到數(shù)據(jù)N”的信息,算法結(jié)束,否則轉(zhuǎn)S5;S5:使i=i+1,計(jì)數(shù)器計(jì)數(shù);S6:若i≤k;則重復(fù)執(zhí)行S3、S4、S5(循環(huán));否則轉(zhuǎn)S7;S7:輸出“沒(méi)有找到數(shù)據(jù)N”信息,算法結(jié)束。算法二(流程圖描述):開始開始輸入k=10待查找數(shù)據(jù)NX=Ni=i+1輸出沒(méi)有找到數(shù)據(jù)N結(jié)束i=i+1讀出Xi<=k是輸出找到數(shù)據(jù)N讀出X是4.設(shè)計(jì)一個(gè)判斷素?cái)?shù)的算法(所謂素?cái)?shù),是指該數(shù)只能被1和它自身整除。分別用自然語(yǔ)言、流程圖描述) 解:算法一(自然語(yǔ)言描述): S1:i=2S2:判斷一個(gè)數(shù)N能否整除i,若能整除轉(zhuǎn)S4S3: i=i+1,判斷i是否大于N的開方,若不大于則重復(fù)S2、S3 S4:判斷i是否大于N的開方,若小于等于則輸出“N不是素?cái)?shù)”,否則輸出“N是素?cái)?shù)”算法二(流程圖描述):開始開始輸入數(shù)據(jù)Ni=2NModi=0輸出N不是素?cái)?shù)是i=i+1i<=Sqr(N)是輸出N是素?cái)?shù)結(jié)束
第3章1.窗體可以將外觀設(shè)置為無(wú)標(biāo)題欄,需要修改的窗體屬性是____________。 C A.Appearance B.WindowState C.BorderStyle D.FillStyle2.命令按鈕的Default屬性、Cancel屬性設(shè)置的注意事項(xiàng)。解:Default:確定屬性。一般用于Caption屬性為“確定”的命令按鈕。該屬性值為“True”的命令按鈕周圍有一圈黑色的邊框,表示如果焦點(diǎn)在除命令按鈕之外的其他控件上時(shí),按回車鍵,等同于單擊該命令按鈕,觸發(fā)其單擊事件。同一窗體中若有多個(gè)命令按鈕,則只能設(shè)置其中一個(gè)按鈕的Default屬性為True。需要注意的是,若焦點(diǎn)在其他按鈕上,則按回車鍵時(shí),將觸發(fā)得到焦點(diǎn)的按鈕的Click事件,即焦點(diǎn)優(yōu)先。Cancel:取消屬性。一般用于Caption屬性為“取消”的命令按鈕。按Escape(Esc)鍵觸發(fā)該屬性值為“True”的命令按鈕的單擊事件。同一窗體中若有多個(gè)命令按鈕,則只能設(shè)置其中一個(gè)按鈕的Cancel屬性為True。3.文本框要顯示多行文字需要設(shè)置哪個(gè)屬性? 解:MultiLine屬性4.設(shè)計(jì)一個(gè)菜單,菜單項(xiàng)包括以下項(xiàng)目: “文件“菜單: 打開(O) 保存(S) 退出(E) “幫助”菜單: 幫助主題 關(guān)于 解:略第4章1.VB有哪些基本數(shù)據(jù)類型?這些基本數(shù)據(jù)類型的關(guān)鍵字和類型符分別是什么? 解:數(shù)據(jù)類型關(guān)鍵字類型說(shuō)明符邏輯型Boolean無(wú)字節(jié)型Byte無(wú)貨幣型Currency@日期型Date無(wú)雙精度型Double#整型Integer%長(zhǎng)整型Long&對(duì)象型Object無(wú)單精度型Single!字符串型String$字符串型String變體型Variant無(wú)2.已知X、Y、A、B為整型變量,且X<Y,A<B,則以下關(guān)系式成立的是____。 BA.Sgn(X-Y)-Sgn(A-B)<0B.Sgn(X-Y)-Sgn(A-B)=-2C.Sgn(X-Y)-Sgn(A-B)=0D.Sgn(X-Y)-Sgn(A-B)=-13.能正確描述代數(shù)式的VB表達(dá)式是____。 DA.Abs(e3+Log(x)+Ant(y))/(X+Log(10)+cos(57))B.Abs(e3+Log(x)+Ant(y))/(X+Log(10)+cos(57*3.14/180))C.Abs(Exp(3)+Log(x)+Ant(y))/(X+Log(10)+cos(57*3.14/180))D.Abs(Exp(3)+Log(x)/Log(10)+Ant(y))/(X+Log(10)+cos(57*3.14/180))4.執(zhí)行下面二行語(yǔ)句后,函數(shù)值最小是____。 ADimIAAsInteger,BAsSingle,SAsString*5,ChAsStringIA=32767:B=23.5:S="A":Ch="abcd"A.Len(IA)B.Len(B)C.Len(S)D.Len(Ch)5.以下語(yǔ)句中,執(zhí)行____語(yǔ)句會(huì)出錯(cuò)。 C A.Print9/3*30000 B.Print200^2 C.Print200*200 D.Print"32700"+100第5章1.請(qǐng)使用Msgbox函數(shù)編寫代碼顯示如下圖所示提示消息對(duì)話框: 解:MsgBox"本行代碼包含不可識(shí)別字符",vbAbortRetryIgnore,"提示"2.在SelectCase結(jié)構(gòu)中,判斷條件8≤x≤12的正確表示是什么? 解:SelectCasexCaseIs>=8SelectCasexCaseIs<=12EndSelectEndSelect3.在過(guò)程中有語(yǔ)句Fori=N1ToN2StepN3,在該循環(huán)體內(nèi)有下列四條語(yǔ)句,其中____會(huì)影響循環(huán)執(zhí)行的次數(shù)。 C①N1=N1+i ②N2=N2+N3③i=i+N3 ④N3=2*N3A.①③ B.①②③ C.③ D.①②③④4.下列代碼的運(yùn)行結(jié)果是什么?PrivateSubCommand1_Click()DimiAsInteger,jAsIntegerj=10.5Fori=1.5TojStep2i=i+1j=j+iNextiPrinti;jEndSub 解:11 28第6章1.VB程序開發(fā)過(guò)程中,可能會(huì)遇到3種錯(cuò)誤,分別是哪3種?哪種錯(cuò)誤一般系統(tǒng)不能自動(dòng)檢測(cè)出來(lái)? 解:語(yǔ)法錯(cuò)誤、運(yùn)行錯(cuò)誤、邏輯錯(cuò)誤。邏輯錯(cuò)誤一般不能自動(dòng)檢測(cè)。2.在VB程序中如何設(shè)置斷點(diǎn)?何時(shí)需要設(shè)置斷點(diǎn)? 解:?jiǎn)螕舸a窗口最左邊,便會(huì)出現(xiàn)一個(gè)深紅色圓形標(biāo)記,同時(shí)該行代碼也呈深紅色,即設(shè)置了斷點(diǎn)。 調(diào)試程序時(shí)需要中斷程序運(yùn)行可設(shè)置斷點(diǎn)。3.調(diào)試程序的時(shí)候,單步調(diào)試的快捷鍵是哪個(gè)? 解:F84.找出下列程序中的錯(cuò)誤,改正并運(yùn)行出正確的結(jié)果: 判斷自然數(shù)N是否為素?cái)?shù):PrivateSubCommand1_Click()DimiAsInteger,nAsIntegern=Val(Text1.Text)Fori=1ToSqr(n) ‘改為Fori=2ToSqr(n)IfnModi=0ThenExitSub ‘改為ExitForNextiIfi>Sqr(n)ThenText2.Text="是素?cái)?shù)"ElseText2.Text="不是素?cái)?shù)"EndIfEndSub第7章1.判斷以下關(guān)于數(shù)組的說(shuō)法正確與否?(1)數(shù)組的維界取值范圍必須在Integer數(shù)據(jù)的范圍內(nèi),即-32768~32767 解:錯(cuò)誤。在Long的范圍內(nèi)(2)數(shù)組下標(biāo)用以確定數(shù)組元素在數(shù)組中的位置,下標(biāo)的下界只能從0或1開始 解:錯(cuò)誤。下界可以是任意整數(shù)(在Long范圍內(nèi))(3)使用Preserve關(guān)鍵字的ReDim語(yǔ)句,只能改變動(dòng)態(tài)數(shù)組最后一維的維上界 解:正確。跟數(shù)組的存儲(chǔ)結(jié)構(gòu)有關(guān)(4)控件數(shù)組既可以是一維的也可以是多維的 解:錯(cuò)誤。只能是一維的2.按金字塔打印楊輝三角形。111 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1 解:參考實(shí)驗(yàn)教材實(shí)驗(yàn)9中的楊輝三角形PrivateSubCommand1_Click()Dima()AsInteger,b()AsInteger,iAsInteger,jAsIntegerReDimb(1)b(1)=1Fori=1To6ReDima(i)ReDimPreserveb(i)PrintSpace(7-i);Forj=1Toia(j)=b(j-1)+b(j)Printa(j);NextjForj=1Toib(j)=a(j)NextjPrintNextiEndSub3.是生成一個(gè)如下圖7-12所示的矩陣,并按矩陣元素的排列次序?qū)⒕仃囕敵觥?1121314151112131415201918171621222324253029282726 解:OptionBase1PrivateSubCommand1_Click()Dima(4,5)AsInteger,iAsInteger,jAsInteger,kAsInteger,sAsStringk=10Fori=1To4IfiMod2<>0ThenForj=1To5k=k+1a(i,j)=kNextjElseIfiMod2=0ThenForj=5To1Step-1k=k+1a(i,j)=kNextjEndIfNextiFori=1To4Forj=1To5Printa(i,j);NextjPrintNextiEndSub4.生成由10個(gè)元素組成的、末尾數(shù)字不為0的三位隨機(jī)正整數(shù)數(shù)組及其對(duì)應(yīng)元素的逆序數(shù)數(shù)組。 解:OptionExplicitOptionBase1PrivateSubCommand1_Click()Dima(10)AsInteger,b(10)AsIntegerDimiAsInteger,jAsInteger,kAsIntegerDoWhilei<10k=Int(Rnd*(999-100+1)+100)IfkMod10<>0Theni=i+1a(i)=kText1=Text1&Str(a(i))EndIfLoopFori=1To10b(i)=Mid(a(i),3,1)&Mid(a(i),2,1)&Mid(a(i),1,1)Text2=Text2&Str(b(i))NextiEndSubPrivateSubForm_Load()Text1="":Text2=""EndSub第8章1.設(shè)計(jì)程序,求兩個(gè)自然數(shù)的最小公倍數(shù)。 解:參考實(shí)驗(yàn)教材實(shí)驗(yàn)8中相關(guān)實(shí)驗(yàn)PrivateFunctionLCM(ByValxAsInteger,ByValyAsInteger)DimiAsIntegerDoi=i+1LoopUntili*xMody=0LCM=i*xEndFunction2.設(shè)計(jì)程序?qū)崿F(xiàn)二分插入排序算法。(二分插入排序是指,在已排序的數(shù)組元素中,使用二分法找到插入數(shù)的位置,插入該數(shù)) 解:參考實(shí)驗(yàn)教材實(shí)驗(yàn)12OptionExplicitOptionBase1PrivateSubCmdSort_Click()DimSort(10)AsIntegerDimtempAsIntegerDimiAsInteger,jAsIntegerRandomizeFori=1To10Sort(i)=Int(Rnd*(100-1))+1Text1=Text1&Str(Sort(i))NextiCallBinaryInsert_Sort(Sort)Fori=1To10Text2.Text=Text2.Text&Str(Sort(i))NextiEndSubPrivateSubBinaryInsert_Sort(a()AsInteger)DimiAsInteger,jAsInteger,tempAsIntegerDimLAsInteger,RAsInteger,MAsIntegerDimnAsIntegern=UBound(a)Fori=2Tontemp=a(i)L=1R=i-1M=(L+R)/2DoUntilL>=RIftemp>a(M)ThenL=M+1ElseIftemp<a(M)ThenR=M-1ElseExitDoEndIfM=(L+R)/2LoopIftemp>a(M)ThenM=M+1Forj=iToM+1Step-1a(j)=a(j-1)Nextja(M)=tempNextiEndSub3.有20個(gè)兩位隨機(jī)正整數(shù)圍成一圈,找出每四個(gè)相鄰數(shù)之和中的最大值,并指出是哪四個(gè)相鄰的數(shù)。 解:參考實(shí)驗(yàn)教材實(shí)驗(yàn)19OptionExplicitOptionBase1PrivateSubCommand1_Click()Dima(20)AsInteger,iAsInteger,jAsIntegerDimsumAsInteger,maxAsInteger,maxiAsIntegerFori=1To20'生成20個(gè)兩位隨機(jī)整數(shù)組成的數(shù)組a(i)=Int(Rnd*90+10)Printa(i);IfiMod10=0ThenPrintNextiFori=1To20sum=0Forj=0To3If(i+j)>20Thensum=sum+a(i+j-20)Elsesum=sum+a(i+j)EndIfNextjIfmax<sumThenmax=summaxi=iEndIfNextiPrinta(maxi)&"+"&a(maxi+1)&"+"&a(maxi+2)&"+"&a(maxi+3)&"="&maxEndSub4.有15個(gè)人圍成一圈,順序排號(hào)(從1排到15)。從第一個(gè)人開始報(bào)數(shù),凡報(bào)到3的人退出圈子,并根據(jù)退出圈子的順序重新編號(hào),輸出新老編號(hào)。 解:OptionExplicitPrivateSubCommand1_Click()DimA(15)AsInteger,SAsStringDimiAsInteger,idxAsInteger,CountAsIntegerFori=1To15'初始設(shè)置所有人參與報(bào)數(shù)A(i)=1Nextiidx=0'記錄報(bào)數(shù)人的編號(hào)Fori=1To15'15個(gè)人均退出,則結(jié)束游戲Count=0'記錄報(bào)數(shù)累加值DoWhileCount<3idx=idx+1Ifidx>15Thenidx=1'首位相接Count=A(idx)+CountLoopA(idx)=0S=S&Str(idx)NextiFori=1To15Text1.Text=Text1.Text&Str(i)Text2.Text=SNextiEndSub5.利用級(jí)數(shù)法編程求arcsin函數(shù)值。 已知: 根據(jù)程序功能要求及求解公式設(shè)計(jì)的程序界面,如圖。運(yùn)行程序,要求用戶通過(guò)InputBox函數(shù)輸入自變量x及允許誤差值。 解:OptionExplicitPrivateSubCmdcalc_Click()DimxAsSingle,nAsInteger,epsAsSingleDimsAsSingle,aAsSingle,tempAsStringtemp=InputBox("請(qǐng)輸入一個(gè)絕對(duì)值小于等于1的數(shù)與允許誤差:",_"求函數(shù)值","0.5,1e-5")temp=Trim(temp)n=InStr(temp,",")x=Left(temp,n-1):eps=Right(temp,Len(temp)-n)s=x:n=1Doa=afun(x,n)Ifa<=epsThenExitDos=s+an=n+1LoopLabel2.Caption="arcsin("&CStr(x)&")="Text1.Text=sEndSubPrivateFunctionafun(ByValxAsSingle,ByValnAsInteger)AsSingleDimiAsInteger,pAsSinglep=1Fori=1Tonp=p*(2*i-1)/(2*i)Nextiafun
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 冷漆標(biāo)線合同范本
- 出售新舊彩鋼瓦合同范例
- 2024年蕪湖無(wú)為市投資促進(jìn)發(fā)展有限公司招聘考試真題
- led電源合同范本
- 公司購(gòu)銷合同范本
- 2024年清遠(yuǎn)英德市市區(qū)學(xué)校選調(diào)教師(編制)考試真題
- 個(gè)人買賣定金合同范本
- 五人合伙工程合同范本
- 交通類ppp合同范本
- 代簽銷售合同范本
- 2024年度儲(chǔ)能電站在建項(xiàng)目收購(gòu)合作協(xié)議范本3篇
- 新建冷卻塔布水器項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 廣東省梅州市梅縣區(qū)2023-2024學(xué)年八年級(jí)上學(xué)期期末數(shù)學(xué)試題
- 2025屆江蘇省南通市海門市海門中學(xué)高三最后一模數(shù)學(xué)試題含解析
- 2024年世界職業(yè)院校技能大賽高職組“聲樂(lè)、器樂(lè)表演組”賽項(xiàng)參考試題庫(kù)(含答案)
- 2024數(shù)據(jù)中心綜合布線工程設(shè)計(jì)
- 胸外科講課全套
- 2024年下半年中煤科工集團(tuán)北京華宇工程限公司中層干部公開招聘易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2023年國(guó)家公務(wù)員錄用考試《申論》真題(副省卷)及答案解析
- 2025屆上海市寶山區(qū)行知中學(xué)物理高一第一學(xué)期期末檢測(cè)試題含解析
- 流感課件名稱教學(xué)課件
評(píng)論
0/150
提交評(píng)論