



版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第四章 程序設(shè)計(jì)基礎(chǔ)教學(xué)目的及要求:使學(xué)生掌握順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)的語(yǔ)法規(guī)則和具體應(yīng)用,程序調(diào)試的步驟和方法。重點(diǎn)與難點(diǎn):1、熟練掌握表達(dá)式、賦值語(yǔ)句及邏輯表達(dá)式等的書寫約定2、掌握InputBox和MsgBox函數(shù)的用法3、掌握單分支和多分支條件語(yǔ)句4、熟練掌握For語(yǔ)句和While語(yǔ)句的使用5、難點(diǎn)是多重循環(huán)的程序設(shè)計(jì)主要外語(yǔ)詞匯:context 、prompt、msgbox、inputbox授課內(nèi)容:1、三種基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)2、流程圖:(1)傳統(tǒng)的流程圖 (2)N-S流程圖第一節(jié) 順序結(jié)構(gòu)程序設(shè)計(jì)特點(diǎn):按書寫時(shí)的順序依次執(zhí)行。一、VB中的語(yǔ)句及書寫約定:1、
2、自動(dòng)語(yǔ)法檢測(cè)2、格式化處理3、續(xù)行符:下劃線,一條語(yǔ)句寫在多行上。 下劃線與其前面的字符之間至少要有一個(gè)空格。4、復(fù)合語(yǔ)句行:冒號(hào),多條語(yǔ)句寫在一行上。二、賦值語(yǔ)句:1、可以給一個(gè)變量或某一個(gè)對(duì)象的屬性賦值。格式1:變量名 = 表達(dá)式格式2:對(duì)象名.屬性名 = 屬性值若省略對(duì)象名,則默認(rèn)是當(dāng)前窗體。方向性:從右向左賦值。2、最終的結(jié)果是最后一次的賦值。3、數(shù)據(jù)類型要匹配,注意相容現(xiàn)象:(1)邏輯型 -> 數(shù)值型:True -> -1,F(xiàn)alse -> 0數(shù)值型 -> 邏輯型:非0 -> True,0 -> False(2)實(shí)型 -> 整型:四舍五入原則
3、,不是去尾原則整型 -> 實(shí)型:擴(kuò)展小數(shù)位數(shù)4、不管表達(dá)式是什么數(shù)據(jù)類型,都可以賦給一個(gè)Variant變量。5、系統(tǒng)提供的默認(rèn)初始值:(1)數(shù)值型:0 (2)貨幣型:0 (3)字符型:空字符串(4)邏輯型:False (5)日期型:0:00:00(6)可變型:Empty (7)對(duì)象型:Nothing6、不能連續(xù)賦值:例:Dim a As Integer,b As Integer,c As Integera=b=c=1 錯(cuò)誤a=1: b=1:c=1 正確7、交換兩個(gè)變量中的數(shù)據(jù):例:a=b:b=a 錯(cuò)誤 t=a:a=b:b=t 正確,t是中間變量注意:VB中的數(shù)字和只包含數(shù)字的字符串可以方
4、便地互換類型,例:(1)隱式轉(zhuǎn)換:Private Sub Command1_Click( ) Dim x As Integer,y As String y = “100.23” :x = y 隱式轉(zhuǎn)換 Print xEnd Sub(2)顯式轉(zhuǎn)換字符型 -> 數(shù)值型:利用Val函數(shù):Private Sub Command1_Click( ) Dim x As Integer Text1.Text = “100.23”x = Val(Text1.Text) 顯式轉(zhuǎn)換 Print xEnd Sub(3)顯式轉(zhuǎn)換數(shù)值型 -> 字符型:利用Str函數(shù):Private Sub Command1
5、_Click( ) Dim x As Integer x = 100.23Text1.Text = Str(x) 顯式轉(zhuǎn)換 Print Text1.TextEnd Sub三、注釋、暫停、結(jié)束語(yǔ)句:1、注釋語(yǔ)句:非執(zhí)行語(yǔ)句(1)格式1:Rem 注釋語(yǔ)句(2)格式2:注釋語(yǔ)句(常用)(3)塊注釋:視圖-> 工具欄 -> 編輯 -> 設(shè)置注釋塊、解除注釋塊2、暫停語(yǔ)句:格式:Stop暫停程序的運(yùn)行,但不關(guān)閉所有已打開(kāi)的文件,相當(dāng)于在程序代碼中設(shè)置斷點(diǎn),主要用于調(diào)試程序。3、結(jié)束語(yǔ)句:格式:End停止程序的運(yùn)行,關(guān)閉所有已打開(kāi)的文件。還可以用來(lái)結(jié)束一些模塊的操作。例:Private
6、Sub Command2_Click( )EndEnd Sub四、輸入函數(shù)InputBox:在一對(duì)話框中顯示提示,等待用戶輸入內(nèi)容,并返回包含文本框內(nèi)容的字符串。1、格式:InputBox (prompt , title , default , xpos, ypos , helpfile, context )(1)prompt:對(duì)話框的消息提示文字。(2)title:對(duì)話框的標(biāo)題,標(biāo)題省略取默認(rèn)值“工程1”。(3)default:文本框的默認(rèn)輸入信息。2、InputBox函數(shù)的返回值是字符型的。3、每運(yùn)行一次InputBox函數(shù)只能給一個(gè)變量賦值??偨Y(jié):輸入數(shù)據(jù)的方法:1、在程序代碼中直接指定
7、: 優(yōu)點(diǎn):代碼簡(jiǎn)單缺點(diǎn):缺少靈活性2、利用TextBox文本框輸入數(shù)據(jù): 優(yōu)點(diǎn):可以輸入任意值缺點(diǎn):要添加多個(gè)文本框,界面復(fù)雜3、利用InputBox函數(shù)輸入數(shù)據(jù): 優(yōu)點(diǎn):界面簡(jiǎn)單,可以輸入任意值缺點(diǎn):代碼復(fù)雜,參數(shù)較多五、消息函數(shù)和語(yǔ)句MsgBox:在一對(duì)話框中顯示消息,等待用戶單擊按鈕,并返回包含文本框內(nèi)容的字符串。1、MsgBox函數(shù):(1)格式:MsgBox (prompt , buttons , title , helpfile, context )prompt:對(duì)話框的消息提示文字。buttons:a) 組合值,每組只能取一個(gè)數(shù)字,數(shù)字間用“+”連接。b) 進(jìn)行相加(只有唯一的分解
8、方式)。c) 使用VB常數(shù)。(表4-1)d) 方式a)和方式c)可以結(jié)合起來(lái)使用。e)把“+”換成“Or”例:3 + 32 + 035vbYesNoCancel + vbQuestion + vbDefaultButton1vbYesNoCancel + 32 + vbDefaultButton1title:對(duì)話框的標(biāo)題,標(biāo)題省略取默認(rèn)值“工程1”。(2)MsgBox函數(shù)的返回值是整型的:1-7(表4-2)例:Private Sub Form_Load( ) Dim a As Integer Show a=MsgBox("請(qǐng)你選擇:",3+32+0,"Button
9、s參數(shù)組合舉例") If a=6 Then Unload Form1 Form2.Show End If If a=7 Then Unload Form1 Form3.Show End If If a=2 Then End End IfEnd Sub2、MsgBox語(yǔ)句:僅僅用于顯示一些簡(jiǎn)單的信息而不需要返回值。格式:MsgBox prompt , buttons , title , helpfile, context參數(shù)含義:同上不用寫小括號(hào),沒(méi)有返回值,可以單獨(dú)作為一個(gè)語(yǔ)句來(lái)使用。六、數(shù)據(jù)輸出:Print方法的缺省輸出:從窗體的第1行第1列開(kāi)始輸出。1、Tab函數(shù):格式:Tab(
10、n),參數(shù)n是絕對(duì)列數(shù)值。(1)Tab函數(shù)與表達(dá)式之間用分號(hào)分隔。(2)如果當(dāng)前行的打印位置大于n,則Tab將打印位置移動(dòng)到下一行的第n列上。(3)如果n小于1,則Tab將打印位置移動(dòng)到該行的第1列。(4)如果n大于輸出行的寬度,則Tab函數(shù)用以下公式計(jì)算下一個(gè)打印位置:n Mod 行寬。2、Spc函數(shù):格式:Spc(n),參數(shù)n是相對(duì)列數(shù)值。(1)Spc函數(shù)與表達(dá)式之間用分號(hào)分隔。(2)如果n小于輸出行的寬度,則下一個(gè)打印位置將緊接在數(shù)個(gè)已打印的空白之后。(3)如果n大于輸出行的寬度,則Spc函數(shù)用以下公式計(jì)算下一個(gè)打印位置:當(dāng)前打印位置+(n Mod 行寬)。3、Space函數(shù):格式:Sp
11、ace(n),輸出n個(gè)空格注:Spc函數(shù)與Space函數(shù)作用相同,但Space函數(shù)可以使用字符串運(yùn)算符&和+??偨Y(jié):輸出行的控制:Print后面不跟表達(dá)式,只輸出一行空行。 輸出列的控制:用Tab、Spc或Space函數(shù)調(diào)整。七、輸出到打印機(jī):1、直接輸出:格式:Printer.Print 表達(dá)式只能打印文本信息,不能打印圖形圖像信息。(1)Page屬性:用來(lái)設(shè)置頁(yè)碼,默認(rèn)缺省值為1。(2)NewPage方法:強(qiáng)制打印機(jī)跳到下一頁(yè)打印。(3)EndDoc方法:用來(lái)結(jié)束文件的打印。2、窗體輸出:格式:窗體.PrintForm既將信息輸出到窗體,又將信息輸出到打印機(jī)。預(yù)覽作用(1)窗體.A
12、utoRedraw=True(2)可以打印窗體上的文本、任何可見(jiàn)的控件及圖形信息。附:方法與函數(shù)的區(qū)別:(1)方法可以單獨(dú)作為語(yǔ)句使用,函數(shù)不可以。(2)方法沒(méi)有返回值,函數(shù)有返回值。(3)方法的格式:對(duì)象.方法 參數(shù)列表 函數(shù)的調(diào)用格式:函數(shù)名(參數(shù)列表)(4)方法是隸屬于某一個(gè)對(duì)象的,函數(shù)存在于VB自帶的函數(shù)庫(kù)。第二節(jié) 選擇結(jié)構(gòu)程序設(shè)計(jì)特點(diǎn):根據(jù)指定的條件進(jìn)行判斷,根據(jù)判斷的結(jié)果在兩條分支或多條分支路徑中選取其中的一條執(zhí)行。一、行If語(yǔ)句:?jiǎn)涡行问剑p分支結(jié)構(gòu)格式1:If 條件 Then 語(yǔ)句組1格式2:If 條件 Then 語(yǔ)句組1 Else 語(yǔ)句組2語(yǔ)句組中的多個(gè)語(yǔ)句之間用冒號(hào)分隔。二
13、、塊If語(yǔ)句:多行形式,雙分支結(jié)構(gòu)格式3:If 條件 Then 格式4:If 條件 Then語(yǔ)句組1 語(yǔ)句組1 End If Else 語(yǔ)句組2 End If1、Else必須單獨(dú)一行。2、IfEnd If必須成對(duì)出現(xiàn)。行If語(yǔ)句中不需要End If。3、最好采用縮進(jìn)形式。4、如果語(yǔ)句組1、語(yǔ)句組2中含有多條語(yǔ)句時(shí),最好使用塊If語(yǔ)句。三、If語(yǔ)句的嵌套:多分支結(jié)構(gòu)四、ElseIf語(yǔ)句:多分支結(jié)構(gòu)格式:If 條件1 Then 語(yǔ)句組1ElseIf 條件2 Then 語(yǔ)句組2ElseIf 條件n Then 語(yǔ)句組nElse 語(yǔ)句組n+1End If1、VB首先測(cè)試條件1,如果它為False,VB就
14、測(cè)試條件2,依次類推,直到找到一個(gè)為True的條件。此時(shí),VB就會(huì)執(zhí)行相應(yīng)的語(yǔ)句組,然后執(zhí)行End If后面的語(yǔ)句。2、不能交叉嵌套,只能完全嵌套。3、可以使用任意數(shù)量的ElseIf語(yǔ)句。4、只有一個(gè)End If與If相對(duì)應(yīng)。例題4-5:方法一:If cj >= 0 And cj < 60 Then Print "不及格"Else If cj >= 60 And cj < 75 Then Print "及格" Else If cj >= 75 And cj < 90 Then Print "良好"
15、Else If cj >= 90 And cj <= 100 Then Print "優(yōu)秀" End If End If End IfEnd If方法二:If cj >= 90 And cj <= 100 Then Print "優(yōu)秀"Else If cj >= 75 Then Print "良好" Else If cj >= 60 Then Print "及格" Else Print "不及格" End If End IfEnd If方法三:If cj &g
16、t;= 90 And cj <= 100 Then Print "優(yōu)秀"ElseIf cj >= 75 Then Print "良好"ElseIf cj >= 60 Then Print "及格"Else Print "不及格"End If方法四:Select Case cjCase 90 To 100 Print “優(yōu)秀”Case 75 To 89 Print “良好”Case 60 To 74 Print “及格” Case Else Print “不及格”End Select五、多條件選擇語(yǔ)
17、句Select Case:多分支結(jié)構(gòu)格式:Select Case 測(cè)試表達(dá)式 Case 表達(dá)式1 語(yǔ)句組1 Case 表達(dá)式2 語(yǔ)句組2 Case 表達(dá)式n 語(yǔ)句組n Case Else語(yǔ)句組n+1 End Select改進(jìn):Select Case 測(cè)試表達(dá)式 復(fù)合語(yǔ)句 Case 表達(dá)式1:語(yǔ)句組1 Case 表達(dá)式2:語(yǔ)句組2 Case 表達(dá)式n:語(yǔ)句組n Case Else :語(yǔ)句組n+1 End Select1、測(cè)試表達(dá)式只能是數(shù)值型或字符型。2、測(cè)試表達(dá)式只計(jì)算一次,然后VB將表達(dá)式的值與結(jié)構(gòu)中的每個(gè)Case的值進(jìn)行比較,如果相等,就執(zhí)行與該Case相關(guān)聯(lián)的語(yǔ)句組。3、如果不止一個(gè)Ca
18、se與測(cè)試表達(dá)式相匹配,則只對(duì)第一個(gè)匹配的Case執(zhí)行與之相關(guān)聯(lián)的語(yǔ)句組。4、表達(dá)式n的可能形式:(1)表達(dá)式1,表達(dá)式2,表達(dá)式3 無(wú)大小順序。(2)表達(dá)式1 To 表達(dá)式2 包括表達(dá)式1和表達(dá)式2在內(nèi)。(3)Is<關(guān)系運(yùn)算符><表達(dá)式>只能是簡(jiǎn)單的條件,不能用邏輯運(yùn)算符將兩個(gè)或多個(gè)條件組合在一起。以上三種形式可以混合使用。六、條件判斷函數(shù)IIf:雙分支結(jié)構(gòu)格式:IIf(條件,表達(dá)式1,表達(dá)式2)1、當(dāng)條件為真時(shí),函數(shù)返回值是表達(dá)式1的值;當(dāng)條件為假時(shí),函數(shù)返回值是表達(dá)式2的值。例:Print IIf(cj>=60,“通過(guò)”,“不通過(guò)”)2、IIf函數(shù)可以嵌套使
19、用。 例:Print IIf(a<0,-1,IIf(a=0,0,1)總結(jié):1、行If語(yǔ)句:雙分支結(jié)構(gòu)2、塊If語(yǔ)句:雙分支結(jié)構(gòu)3、If語(yǔ)句的嵌套:多分支結(jié)構(gòu)4、ElseIf語(yǔ)句:多分支結(jié)構(gòu)5、多條件選擇語(yǔ)句Select Case:多分支結(jié)構(gòu)6、條件判斷函數(shù)IIf:雙分支結(jié)構(gòu)第三節(jié) 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)1、特點(diǎn):根據(jù)給定條件是否滿足決定是否繼續(xù)執(zhí)行循環(huán)體中的操作。注:避免出現(xiàn)“死循環(huán)”。 當(dāng)程序運(yùn)行了“死循環(huán)”的結(jié)構(gòu),必須按Ctrl+Break中斷。2、三種循環(huán)結(jié)構(gòu):(1)ForNext (2)WhileWend (3)DoLoop3、循環(huán)方式:(1)計(jì)數(shù)法 (2)標(biāo)志法一、For循環(huán)結(jié)構(gòu):格
20、式:For 循環(huán)變量=初值 To 終值 Step 步長(zhǎng) 循環(huán)體 Next 循環(huán)變量1、缺省步長(zhǎng)時(shí),默認(rèn)是1。步長(zhǎng)可以為正值或?yàn)樨?fù)值。2、先判斷條件,后執(zhí)行循環(huán)體。 注:若循環(huán)體執(zhí)行n次,則條件將被判斷n+1次。3、Exit For語(yǔ)句的作用:提前退出循環(huán)體,結(jié)束循環(huán)結(jié)構(gòu)。4、空循環(huán)的作用:延時(shí)。5、For循環(huán)一般用在已知循環(huán)次數(shù)的情況。6、多重循環(huán):不能交叉嵌套,只能完全嵌套。各層次的循環(huán)變量名不能相同。7、多重循環(huán)可以共用一個(gè)Next語(yǔ)句,但此時(shí)循環(huán)變量名不能省略,并且先內(nèi)循環(huán)變量,后外循環(huán)變量。例:For i=1 To 10 For j=1 To 15 For k=1 To 20 循環(huán)體
21、Next k Next j Next i二、當(dāng)型循環(huán)WhileWend結(jié)構(gòu):格式:While 條件 循環(huán)體 Wend1、先判斷條件,后執(zhí)行循環(huán)體。注:若循環(huán)體執(zhí)行n次,則條件將被判斷n+1次。2、循環(huán)體內(nèi)一定要有改變條件的語(yǔ)句,否則就會(huì)導(dǎo)致“死循環(huán)”。3、多重循環(huán):不能交叉嵌套,只能完全嵌套。例題4-11:求兩個(gè)數(shù)的最大公約數(shù)。(1)該程序算法:(2)Private Sub Text1_KeyPress( KeyAscii As Integer) If KeyAscii=13 Then Text2.SetFocusEnd Sub注:CommandButton的Default屬性默認(rèn)是False
22、,該屬性設(shè)置為True時(shí),說(shuō)明該按鈕是缺省按鈕,按回車鍵就相當(dāng)于單擊了該按鈕。兩者不能相互沖突。三、DoLoop循環(huán)結(jié)構(gòu):先判斷后執(zhí)行先執(zhí)行后判斷當(dāng)型循環(huán)Do While 條件循環(huán)體Loop與WhileWend結(jié)構(gòu)相同Do循環(huán)體Loop While 條件直到型循環(huán)Do Untill 條件循環(huán)體LoopDo循環(huán)體Loop Untill 條件1、既可以是當(dāng)型循環(huán),也可以是直到型循環(huán)。2、While與Untill后面的“條件”總是相反的。3、既可以先判斷后執(zhí)行:若循環(huán)體執(zhí)行n次,則條件將被判斷n+1次。也可以先執(zhí)行后判斷: 若循環(huán)體執(zhí)行n次,則條件將被判斷n次。4、Exit Do語(yǔ)句的作用:提前退出
23、循環(huán)體,結(jié)束循環(huán)結(jié)構(gòu)??偨Y(jié):提前退出循環(huán)體的方法:(1)ForNext :用Exit For語(yǔ)句(2)WhileWend(3)DoLoop :用Exit Do語(yǔ)句Page 79:i=1 Do While i<=99 s=s+i If s>2000 Then Exit DoEnd If i=i+2 Loop例題4-10:方法一:用For循環(huán)結(jié)構(gòu)For i=1 To 9 For j=1 To i Print Tab(j*8);j & "×" & i & "=" & j*i; Next j PrintNext i方法二:用WhileWend循環(huán)結(jié)構(gòu)i=1While i<=9 j=1 While j<=i Print Tab(j*8);j & "×" & i & "=" & j*i; j=j+1 Wend Print i=i+1Wend方法三:用DoLoop循環(huán)結(jié)構(gòu)i=1Do While i<=9 j=1 Do While j<=i Print Tab(j*8);j & "×" & i & &qu
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 金融科技在消費(fèi)領(lǐng)域資源配置中的角色
- 消費(fèi)升級(jí)背景下的融資模式創(chuàng)新
- 文化體制改革中的地方政府角色探析
- 深化工業(yè)園區(qū)改革創(chuàng)新的面臨的問(wèn)題、機(jī)遇與挑戰(zhàn)
- 2025年裝配式建筑施工員職業(yè)技能認(rèn)證模擬試卷(裝配式建筑施工技術(shù))-裝配式建筑裝配式構(gòu)件質(zhì)量與安全
- 抽水蓄能對(duì)電力安全保障的貢獻(xiàn)分析
- 2025汽車銷售合同范文
- 基于大數(shù)據(jù)的醫(yī)學(xué)教育個(gè)性化發(fā)展
- 中秋節(jié)品牌營(yíng)銷策略
- 動(dòng)物世界解析
- 國(guó)學(xué)導(dǎo)論·巴蜀文化課件
- 旅游出入境與交通管理法規(guī)制度課件
- 《事業(yè)單位人事管理?xiàng)l例》及其配套制度講義課件
- 國(guó)家開(kāi)放大學(xué)《監(jiān)督學(xué)》形考任務(wù)( 1-4)試題和答案解析
- 《遺愛(ài)寺》-完整版課件
- 三相三線電能表
- 試卷交接簽字單
- 加油站相鄰企業(yè)安全應(yīng)急救援互助協(xié)議
- 傳媒公司合作合同
- 測(cè)量-極坐標(biāo)法講義
- 思想道德與法治課件:第六章 第一節(jié) 社會(huì)主義法律的特征和運(yùn)行
評(píng)論
0/150
提交評(píng)論