版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基本語(yǔ)句
選擇結(jié)構(gòu)
多路分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)
主要內(nèi)容[案例3-1]打印輸出
通過(guò)這個(gè)簡(jiǎn)單的程序,可以掌握VisualBasic中常用的幾種基本語(yǔ)句,包括賦值語(yǔ)句、打印語(yǔ)句、注釋語(yǔ)句、結(jié)束語(yǔ)句等。
1.1案例說(shuō)明程序執(zhí)行時(shí),單擊窗體的任何一個(gè)位置,順序執(zhí)行“窗體單擊”事件中相應(yīng)的語(yǔ)句,執(zhí)行后在窗體上會(huì)顯示數(shù)字的不同排列以及不同的符號(hào)組合。這些不同數(shù)字和符號(hào),是通過(guò)賦值語(yǔ)來(lái)取得數(shù)據(jù),按照語(yǔ)句的先后順序執(zhí)行這些賦值語(yǔ)句,通過(guò)打印語(yǔ)句以及打印控制語(yǔ)句來(lái)完成輸出,在指定的位置顯示相應(yīng)的符號(hào)。
1.2程序?qū)崿F(xiàn)
1.界面設(shè)計(jì) 新建一個(gè)工程,系統(tǒng)默認(rèn)產(chǎn)生了一個(gè)新窗體,無(wú)需添加其它控件。窗體的屬性采用系統(tǒng)的默認(rèn)值。2.代碼設(shè)計(jì)PrivateSubForm_Click() a=12345 b=54321 a=b b="12345" Printa Printb Print a="@":b="#":c="$" Printa;b;c Print Printa,b,c Print PrintTab(2);a;Space(4);b;Space(8);cEndSub1.3相關(guān)知識(shí)
1.賦值語(yǔ)句:為變量提供數(shù)據(jù),設(shè)置對(duì)象的屬性。 變量名=表達(dá)式(為變量提供數(shù)據(jù))。
[對(duì)象名.]屬性名=表達(dá)式(為對(duì)象設(shè)置屬性)2.輸出語(yǔ)句:可以把運(yùn)算結(jié)果傳送到窗體、圖片框等對(duì)象顯示,也可傳送到打印機(jī)用于打印。Print的格式為:
[<對(duì)象名>.]Print[<表達(dá)式1>[,|;[<表達(dá)式2>]…]]幾點(diǎn)說(shuō)明:3.Cls方法:清除窗體或圖片框上的文本或圖形。格式如下:
[<對(duì)象名>.]Cls4.注釋語(yǔ)句: 在VB中用“‘”或Rem標(biāo)識(shí)。5.結(jié)束語(yǔ)句:End1.4拓展知識(shí)
1.賦值相容問(wèn)題:2.與Print語(yǔ)句有關(guān)的函數(shù):1.5案例1-2
這個(gè)程序可以觀察“重疊顯示”和“覆蓋顯示”兩種輸出方式。相關(guān)知識(shí):1.如需要保留原來(lái)顯示的內(nèi)容,或者需要部分覆蓋原來(lái)的圖案??稍O(shè)置窗體對(duì)象的FontTransParent屬性來(lái)實(shí)現(xiàn)。格式為:
[<對(duì)象名>.]FontTransParent[=True|False]2.CurrentX和CurrentY屬性的作用是設(shè)置下一次顯示或打印的水平和垂直坐標(biāo)。格式為:
[<對(duì)象名>.]CurrentX[=X] [<對(duì)象名>.]CurrentY[=Y]返回2.1求解一元二次方程案例說(shuō)明一元二次方程ax2+bx+c=0的根取決于它的三個(gè)系數(shù)a、b、c。根據(jù)三個(gè)系數(shù)的具體值,判斷出該一元二次方程的根的情況。當(dāng)a=0時(shí)不構(gòu)成一元二次方程,只有一個(gè)根;當(dāng)a≠0時(shí),根的情況要計(jì)算b2-4ac的值。
b2-4ac>0時(shí),方程有兩個(gè)不相等的實(shí)根,
b2-4ac=0時(shí),該方程有兩個(gè)相等的實(shí)根,
b2-4ac<0時(shí)則沒(méi)有實(shí)根。 該程序要求從鍵盤(pán)輸入a、b、c三個(gè)系數(shù),根據(jù)上述的幾種情況做出不同的判斷和處理,然后把這個(gè)方程的根顯示出來(lái)。2.2程序?qū)崿F(xiàn)
1.界面設(shè)計(jì):?jiǎn)螕舸绑w后,顯示一個(gè)輸入框,從鍵盤(pán)輸入所需要的3個(gè)系數(shù)a、b和c,然后進(jìn)行計(jì)算。2.代碼設(shè)計(jì):2.3相關(guān)知識(shí)
選擇結(jié)構(gòu)就是根據(jù)給定的“條件”是否滿足,從兩種或多種可能的操作方案中選擇一種操作執(zhí)行。包括:1.行If:If<條件>Then<語(yǔ)句1>[Else<語(yǔ)句2>]2.塊If語(yǔ)句: If<條件>Then <語(yǔ)句塊1> [Else <語(yǔ)句塊2> EndIf
塊If語(yǔ)句的幾點(diǎn)說(shuō)明:條件滿足?語(yǔ)句塊1語(yǔ)句塊2EndIf語(yǔ)句TF2.3相關(guān)知識(shí)
3.ElseIf結(jié)構(gòu):可以解決多層嵌套問(wèn)題。格式為:
If<條件1>Then <語(yǔ)句塊1> ElseIf<條件2>Then <語(yǔ)句塊2> …… ElseIf<條件n>Then <語(yǔ)句塊n> [Else <語(yǔ)句n+1> EndIfFT條件2語(yǔ)句塊2F……T條件n語(yǔ)句塊n+1語(yǔ)句塊nEndIf條件1語(yǔ)句塊1FT小結(jié):兩種結(jié)構(gòu)的對(duì)比。本案例中求解一元二次方程的根的算法中,前述的塊If嵌套的代碼可以改為如下ElseIf結(jié)構(gòu),對(duì)比一下可以看出,用ElseIf結(jié)構(gòu)取代塊If嵌套結(jié)構(gòu)可以使得代碼的層次變得簡(jiǎn)單了。返回3.1判定成績(jī)案例說(shuō)明從鍵盤(pán)輸入一個(gè)學(xué)生的成績(jī),按照不同的分?jǐn)?shù)區(qū)域,給出不同的等級(jí)。例如分?jǐn)?shù)≥90時(shí),給出的等級(jí)是“優(yōu)秀”,80≤分?jǐn)?shù)<90時(shí)等級(jí)為“良好”,70≤分?jǐn)?shù)<80時(shí)等級(jí)為“中等”,60≤分?jǐn)?shù)<70給出的等級(jí)為“及格”,而當(dāng)分?jǐn)?shù)<60時(shí),則為“不及格”。也就是說(shuō)根據(jù)給定的條件不同,有5種選擇,采用多路分支結(jié)構(gòu)語(yǔ)句。3.2程序?qū)崿F(xiàn)1.界面設(shè)計(jì):添加2個(gè)命令按鈕和1個(gè)標(biāo)簽。設(shè)置2個(gè)命令按鈕的Caption屬性。標(biāo)簽Lable1的Caption屬性設(shè)置為空。單擊“單擊輸入分?jǐn)?shù)”按鈕,顯示一個(gè)輸入框。等待輸入成績(jī),在輸入框中輸入成績(jī)后,單擊輸入框中的“確定”按鈕,則在窗體的標(biāo)簽上顯示這個(gè)分?jǐn)?shù)所在的檔次,單擊另一個(gè)“退出”按鈕,則退出程序的執(zhí)行。2.代碼設(shè)計(jì):對(duì)兩個(gè)命令按鈕的單擊事件進(jìn)行編程。
3.3相關(guān)知識(shí)1.SelectCase語(yǔ)句:又稱(chēng)為情況語(yǔ)句。一般格式為:
SelectCase<測(cè)試表達(dá)式> Case<表達(dá)式列表1> <語(yǔ)句塊1> Case<表達(dá)式列表2> <語(yǔ)句塊2> …… Case<表達(dá)式n> <語(yǔ)句n> [CaseElse <語(yǔ)句塊n+1> EndSelect測(cè)試表達(dá)式=?語(yǔ)句塊1語(yǔ)句塊2語(yǔ)句塊i語(yǔ)句塊n+1語(yǔ)句塊n3.3相關(guān)知識(shí)“測(cè)試表達(dá)式”可以是字符串表達(dá)式,也可以是數(shù)值表達(dá)式,而且在進(jìn)入SelectCase結(jié)構(gòu)時(shí)必須具有確定的值?!氨磉_(dá)式列表”形式有3種情況:(1)可以是一個(gè)表達(dá)式,也可以是多個(gè)表達(dá)式,但必須用逗號(hào)隔開(kāi)。例如:
Case2,4,6,8
表示測(cè)試表達(dá)式的值等于2,4,6,8之一,就算滿足。(2)表達(dá)式1To表達(dá)式2。一般情況下,表達(dá)式1的值小于表達(dá)式2的值。例如:
Case-20To20
表示“-20≤測(cè)試表達(dá)式≤20”。(3)Is關(guān)系運(yùn)算符表達(dá)式。例如:
CaseIs>=a+b
表示測(cè)試表達(dá)式的值大于等于a+b。3.3相關(guān)知識(shí)SelectCase情況語(yǔ)句可以應(yīng)用于要處理的問(wèn)題需要從多個(gè)可能的方案中選擇,雖然用嵌套的If語(yǔ)句以及ElseIf語(yǔ)句也可以實(shí)現(xiàn)多路選擇的結(jié)構(gòu),但書(shū)寫(xiě)和閱讀起來(lái)會(huì)顯得比較雜亂,而使用SelectCase語(yǔ)句將使得程序的結(jié)構(gòu)更為清晰。比如在上一節(jié)介紹的求解一元二次方程根的程序,當(dāng)a、b、c確定且a≠0時(shí),構(gòu)成一元二次方程,根的值取決于b2-4ac的值。b2-4ac有三種可能,等于0、大于0和小于0。如果用SelectCase語(yǔ)句實(shí)現(xiàn),可以編寫(xiě)代碼如下:3.4拓展知識(shí)在使用SelectCase語(yǔ)句處理多路分支問(wèn)題時(shí),應(yīng)避免不同的Case子句中的條件和相應(yīng)的操作出現(xiàn)矛盾。VB系統(tǒng)是按照Case出現(xiàn)的次序,從上往下依次檢查測(cè)試表達(dá)式的值是否與某個(gè)Case子句指定的條件匹配,當(dāng)發(fā)現(xiàn)一個(gè)Case子句具備匹配的條件后,其他的Case子句都不起作用。而這種邏輯上的錯(cuò)誤系統(tǒng)是不會(huì)去檢查的,因此,在使用SelectCase語(yǔ)句時(shí)就要避免類(lèi)似情況的出現(xiàn)。返回4.1驗(yàn)證歌德巴赫猜想案例說(shuō)明素?cái)?shù)的特征是只能被1和它本身整除。驗(yàn)證p是否是素?cái)?shù),我們只需在2到p-1之間能否找到一個(gè)能整除p的數(shù),如果有,則p不是素?cái)?shù),如果沒(méi)有,則p就是一個(gè)素?cái)?shù),然后設(shè)置一個(gè)p是素?cái)?shù)的標(biāo)志fp=True。也就是說(shuō)用2到p-1的各整數(shù)去除p,判斷余數(shù)是否為零,如果余數(shù)為零,則肯定能被整除。在尋找2到p-1之間的一個(gè)能被p整除的數(shù),就是要把2到p-1的所有的數(shù)都作為被除數(shù)p的除數(shù),進(jìn)行除法運(yùn)算。這是一個(gè)重復(fù)循環(huán)的過(guò)程,需要循環(huán)結(jié)構(gòu)進(jìn)行程序的流程。而且這樣的過(guò)程也是循環(huán)的,因?yàn)?到100之間的偶數(shù)都需要尋找這樣的兩個(gè)素?cái)?shù),因此需要使用循環(huán)的嵌套來(lái)實(shí)現(xiàn)。4.2
程序?qū)崿F(xiàn)
1.界面設(shè)計(jì):在窗體上添加一個(gè)命令按鈕,把命令按鈕的標(biāo)題屬性改為“驗(yàn)證猜想”,其余的屬性采用系統(tǒng)的默認(rèn)值。然后調(diào)整命令按鈕到合適的位置。2.代碼設(shè)計(jì):在這個(gè)程序中同時(shí)使用了選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)以及循環(huán)結(jié)構(gòu)的嵌套。因?yàn)槭且?yàn)證6到100之間的所有偶數(shù),設(shè)偶數(shù)為n,且從6一直變化到100,采用了For循環(huán)。然后分別尋找這樣的兩個(gè)素?cái)?shù)p和q,且n=p+q,使用DoLoop循環(huán),當(dāng)兩個(gè)素?cái)?shù)都找到了,則顯示這個(gè)偶數(shù)用相應(yīng)的素?cái)?shù)相加的形式顯示出來(lái)。用Print語(yǔ)句按照標(biāo)準(zhǔn)格式輸出,每輸出4個(gè)表達(dá)式則換行,設(shè)置一個(gè)循環(huán)變量來(lái)控制打印輸出,采用For循環(huán)控制換行。4.3相關(guān)知識(shí)1.循環(huán)結(jié)構(gòu):一段程序不止執(zhí)行一次,重復(fù)執(zhí)行多次,被重復(fù)執(zhí)行的部分稱(chēng)為循環(huán)體。循環(huán)控制結(jié)構(gòu)的功能就是控制在什么條件下進(jìn)入循環(huán)、什么情況下退出循環(huán)。VB提供三種: (1)While……Wend循環(huán)語(yǔ)句; (2)Do……Loop循環(huán)語(yǔ)句; (3)For……Next循環(huán)語(yǔ)句。下面我們對(duì)這三種循環(huán)分別加以說(shuō)明:4.3相關(guān)知識(shí)2.While……Wend循環(huán)
While循環(huán)的一般格式為:
While<條件> Wend執(zhí)行過(guò)程:應(yīng)用舉例:注意事項(xiàng):F計(jì)算“條件”的值條件是否為真?執(zhí)行循環(huán)體T4.3相關(guān)知識(shí)3.Do……Loop循環(huán):可以使用“While<條件>”和“Until<條件>”來(lái)控制循環(huán),“While<條件>”和“Until<條件>”可以放在Do語(yǔ)句中,也可以放在Loop語(yǔ)句中,使用十分方便。Do循環(huán)有兩種語(yǔ)句格式:格式1:
DoWhile|Until<條件> [<循環(huán)體>] Loop這種格式的Do循環(huán)是“先判斷,后執(zhí)行”。執(zhí)行循環(huán)體條件是否為真?FTFT條件是否為真?執(zhí)行循環(huán)體4.3相關(guān)知識(shí)3.Do……Loop循環(huán):格式2:
Do [<循環(huán)體>] LoopWhile|Until<條件>“先執(zhí)行,后判斷”。Do……LoopWhile循環(huán)是先執(zhí)行一次循環(huán)體,然后判斷條件是否為“真”,如果為“真”,則再執(zhí)行循環(huán)體,如果為“假”,則退出循環(huán);Do……LoopUntil循環(huán)是先執(zhí)行一次循環(huán)體,然后判斷條件是否為“假”,直到條件為“真”為止。這種結(jié)構(gòu)的循環(huán)總是至少會(huì)執(zhí)行一次循環(huán)體。FT執(zhí)行循環(huán)體條件是否為真?執(zhí)行循環(huán)體TF條件是否為真?4.3相關(guān)知識(shí)Do……Loop循環(huán)的應(yīng)用實(shí)例:4.3相關(guān)知識(shí)4.For……Next循環(huán)
While……Wend循環(huán)和Do……Loop循環(huán)是用指定的條件是否滿足來(lái)控制循環(huán)的,循環(huán)體的執(zhí)行次數(shù)是未知的。如果事先已經(jīng)知道應(yīng)循環(huán)的次數(shù),可以采用For……Next循環(huán)。格式為:
For<循環(huán)變量>=<初值>To<終值>Step<步長(zhǎng)> [循環(huán)體] Next<循環(huán)變量>4.3相關(guān)知識(shí)For……Next循環(huán)的幾點(diǎn)說(shuō)明:(1)循環(huán)變量也稱(chēng)為循環(huán)控制變量,必須為數(shù)值型。(2)循環(huán)變量的初值、終值和步長(zhǎng)可以是常量、變量或表達(dá)式。(3)For語(yǔ)句稱(chēng)為“循環(huán)起始語(yǔ)句”,它的作用是確定循環(huán)變量的值如何變化,從而控制循環(huán)的次數(shù);Next語(yǔ)句是“循環(huán)終端語(yǔ)句”,它的作用是標(biāo)志循環(huán)結(jié)構(gòu)的范圍。(4)For語(yǔ)句和Next語(yǔ)句之間的語(yǔ)句塊就是循環(huán)體,且For和Next必須成對(duì)出現(xiàn),缺一不可。(5)For語(yǔ)句中的“循環(huán)變量”與Next語(yǔ)句中的“循環(huán)變量”必須是同一個(gè)變量,每次循環(huán)執(zhí)行到Next語(yǔ)句時(shí),循環(huán)變量按步長(zhǎng)Step增值。(6)步長(zhǎng)Step可以為負(fù)數(shù),但不可為0,否則出現(xiàn)死循環(huán)。如果步長(zhǎng)Step為1時(shí),則“Step1”可以省略。4.3相關(guān)知識(shí)For……Next循環(huán)的執(zhí)行過(guò)程:(1)首先執(zhí)行For語(yǔ)句。For語(yǔ)句的作用包括給循環(huán)變量賦以初值,將初值與終值做比較,以判斷是否執(zhí)行循環(huán)體,并自動(dòng)記下終值和步長(zhǎng)。(2)如果循環(huán)變量的值沒(méi)有超過(guò)終值,則執(zhí)行一次循環(huán)體,如果超過(guò)終值就結(jié)束循環(huán),執(zhí)行Next后面的語(yǔ)句。(3)執(zhí)行Next語(yǔ)句,Next語(yǔ)句相當(dāng)于“循環(huán)變量+步長(zhǎng)→循環(huán)變量”,將循環(huán)變量增加一個(gè)步長(zhǎng)再賦給循環(huán)變量,再判斷循環(huán)變量的值是否超過(guò)終值,如果沒(méi)有超過(guò),則執(zhí)行循環(huán)體,如果超過(guò),則退出循環(huán)。
循環(huán)變量獲得初值循環(huán)變量超過(guò)終值?執(zhí)行循環(huán)體循環(huán)變量增加步長(zhǎng)TF4.3相關(guān)知識(shí)For……Next循環(huán)的注意事項(xiàng):(1)For循環(huán)的循環(huán)體內(nèi)不應(yīng)再有給循環(huán)變量的賦值操作,否則將會(huì)影響原有的循環(huán)控制狀況。(2)在For循環(huán)中,循
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 水庫(kù)水資源配置管理方案
- 室外消火栓設(shè)置方案
- 路面鋪設(shè)溫度控制方案
- 婦幼保健院信息管理平臺(tái)搭建方案
- 木地板知識(shí)教學(xué)課件
- 金融交易異常監(jiān)測(cè)預(yù)警手冊(cè)
- 消防設(shè)施環(huán)境適應(yīng)性方案
- 心臟驟停的急救人員培訓(xùn)與考核
- 石方開(kāi)采機(jī)械配置方案
- 保溫材料性能改進(jìn)研究方案
- 柴油供應(yīng)合同范本
- 寵物醫(yī)療護(hù)理服務(wù)標(biāo)準(zhǔn)流程
- 外科院感課件
- 2025國(guó)家核安保技術(shù)中心招聘筆試歷年常考點(diǎn)試題專(zhuān)練附帶答案詳解試卷3套
- 12158-2024防止靜電事故要求
- 2026年重慶城市管理職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)新版
- 侗族花帶課件
- 酒吧內(nèi)保年終總結(jié)
- 兒童講解員禮儀
- 文物建筑勘查設(shè)計(jì)取費(fèi)標(biāo)準(zhǔn)(2020年版)
- DB14∕T2248-2020 《煤礦安全風(fēng)險(xiǎn)分級(jí)管控和隱患排查治理雙重預(yù)防機(jī)制實(shí)施規(guī)范》
評(píng)論
0/150
提交評(píng)論