程序VB選擇結構程序設計課件_第1頁
程序VB選擇結構程序設計課件_第2頁
程序VB選擇結構程序設計課件_第3頁
程序VB選擇結構程序設計課件_第4頁
程序VB選擇結構程序設計課件_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

程序VB選擇結構程序設計程序VB選擇結構程序設計程序VB選擇結構程序設計學習重點語句、語句的格式及使用。語句的嵌套使用。掌握常用的選擇結構算法。學習重點語句、語句的格式及使用。語句的嵌套使用。掌握常用的選擇結構算法。本節(jié)內容

語句語句基本算法及應用其他應用舉例本節(jié)小結引言分支結構

True

False

P

A

B

2.3語句2.3.1……結構2.3.2………結構2.3.3………結構2.3.4語句的嵌套2.3.5及語句有關的函數注1:條件表達式的值為或,一般是邏輯或關系表達式,也可以是算術表達式(轉換為邏輯值)2.3.1……結構兩種格式:格式1:塊形式

<條件表達式>

語句體

格式2:單行形式

<條件表達式>語句體條件表達式語句體TrueFalse注2:當條件為時執(zhí)行語句體,否則執(zhí)行語句的下一條語句注3:語句體中可以是多條語句,當采用格式2時,所有的語句必須寫在一行,用冒號隔開語句體中的語句2.3.1……結構例:已知有兩數x、y,編程使x中存放較大的數分析:如果x>,則不需要做處理

如果x<y,則做交換處理實現:

x<y

t=x

x=y

y=t

用格式2描述:

x<yt===t特別注意:塊結構時和成對出現2.3.1……結構例1倒計時設計,主要利用文本框、按鈕、計時器控件實現倒計時功能。

例2-3-1程序代碼如下:1()1=10001=

()1=

1()1=1-11=01=

2.3.2………結構兩種格式:格式1:

<條件表達式>

語句體1

語句體2

格式2:

<條件表達式>語句體1語句體2注:當條件為時執(zhí)行語句體1,否則執(zhí)行語句體2T條件表達式語句體1F語句體2例2-3-2已知x,求程序代碼如下:

()x,yx=() '第1個文本框的名稱是

x<0"x不能小于0"

y=(x)=(y) '第2個文本框的名稱是

等價于:

x<0"x不能小于0"y=(x):=(y)2.3.3………結構

<表達式1>

語句體1

<表達式2>

語句體2

……

[

語句體1]

表達式1=True執(zhí)行語句體1False表達式2=True執(zhí)行語句體2False表達式3=……Else和If間無空格格式:2.3.3………結構FT表達式1語句體1表達式2語句體2TF……表達式n語句體n……F語句體n+1……T判斷的順序為表達式1、表達式2……只有當表達式1為時才判斷表達式2,當表達式1和表達式2都為時,才判斷表達式3,程序執(zhí)行語句體1的條件為前n個表達式均為。2.3.3………結構例2-3-3旅客乘車旅行,可免費攜帶30公斤行李,超過30公斤的部分每公斤需支付托運費10元,超過50公斤部分則每公斤需支付20元托運費。請編程根據每位旅客行李的重量計算其應付的行李托運費。例2-3-3此分段函數用程序代碼表示如下:1()x,yx=(1)x<30 'x<30y=0x<=50 '30<<=50y=(x-30)*10 'x>50y=(x-50)*20+20*10

2=y

x>=30Andx<=50能否寫成?可以,但已經包含了x>=30的信息2.3.4語句的嵌套語句中又包含語句在子句或子句的語句體中包含完整的一條語句如:x>y

x&“>”&y

x<y

x&“<”&y

x&“=”&y

一條If語句一條If語句2.3.4語句的嵌套注1:語句的完整性,即內層語句必須完整地出現在外層語句的子句或子句中。外層If內層If內層If內外層不能有交叉!2.3.4語句的嵌套注2:-的匹配原則始終及上面距離其最近的未被匹配過的匹配注3:-的匹配塊必須以一個語句結束…

……

……

………

……

……

……

2.3.4語句的嵌套

為使程序結構更為清晰,

要養(yǎng)成良好的書寫習慣?!?/p>

……

……

………

……

……

……

為體現層次,可以使用健排放不同層次的語句①④②③2.3.4語句的嵌套例2-3-4根據用戶輸入年齡和性別,輸出不同的歡迎信息。其中小于14歲的男性為,大于14歲的男性為,其中小于14歲的女性為,大于14歲的女性為。例2-3-4程序代碼如下:

1()=()<14 '小于14歲的男性

"!" '大于或等于14歲的男性

"!"

()<14 '小于14歲的女性

"!" '大于或等于14歲的女性

"!"

①②③2.3.5及語句有關的函數1.函數*2.函數1.函數格式:(條件表達式,條件為時的表達式,條件為時的表達式)功能:

根據條件表達式的值,確定函數返回后面兩個表達式的其中一個的值。Ifa>bThen

max=a

Else

max=b

EndIfmax=IIf(a>b,a,b)1.函數函數實際上是……結構的一個簡寫函數中后兩個表達式可以是各種類型的表達式,也可以是一個函數的調用①x&(x>0,“大于0”,“小于或小于0”)②s=(x>0,1,(x=0,0,-1))

’判斷x的符號1.函數將語句改寫成使用函數:x<30y=0x<=50y=(x-30)*10

y=(x-50)*20+20*10

等價于:y=(x<30,0,(x<=50,(x-30)*10,(x-50)*20+20*10))2.函數格式

(表達式1,值1[,表達式2,值2…[,表達式n,值n]])功能

計算一組條件表達式列表的值,然后返回及條件表達式列表中最先為的表達式所對應的型數值或表達式。如:

_

(>=90,"A">=80,"B"<80,"C")用于多分支情況條件表達式和值必須成對出現!2.函數將語句改寫成使用函數:x<30y=0x<=50y=(x-30)*10

y=(x-50)*20+20*10

等價于:y=(x<30,0,x<=50,(30)*10,x>50,(50)*20+20*10)條件條件條件值值值2.3.2語句(多分支語句)格式:

<測試表達式>

表達式列表1

<語句塊1>

表達式列表2

<語句塊2>

……

[

<語句塊1>]

2.3.2語句T表達式1語句體1表達式2語句體2T……表達式n語句體n……語句體1……T執(zhí)行過程:①計算測試表達式的值;②依次比較各個表達式,符合條件則進入相應的語句體執(zhí)行;③執(zhí)行語句的下一條語句。計算測試表達式的值2.3.2語句注1:測試表達式可以是數值或字符串表達式;注2:各表達式列表合法的格式:①一個常量或常量表達式②多個常量或常量表達式,用逗號隔開,逗號相當于“或”,如:1,3,5,7③表達式1表達式2,表示從表達式1到表達式2中所有的值,其中表達式1的值必須小于表達式2的值。如:15④關系運算表達式,可以使用的關系運算符為:>、>=、<、<=、<>、=,不可以使用邏輯運算符表示多個范圍。⑤前面四種情況的組合,如>10,2,4,6<0注3:若有多個表達式符合條件,則只執(zhí)行第一個符合的下的語句體。2.3.2語句例:已知變量中存放了一個字符,判斷該字符是字母字符、數字字符、空格還是其它字符。(用語句改寫)分析:

將各種字符的判斷條件改寫成符合要求的條件字母字符:>=“a”<=“z”>=“A”<=“Z”

“a”“z”,“A”“Z”數字字符:>=“0”<=“9”

“0”“9”空格字符:“”

“”

“”實現:

“a”“z”,“A”“Z”

“字母字符”

“0”“9”

“數字字符”

“”

“空格”

“其他字符”

2.3.2語句例7-5簡單運算器分析:

運算符的判斷:共四種取值,事先已在中

"+"

=()+()"-" =()-()"×" =()*()"÷" =()/()

除數為0?IfVal(txtY)<>0Thentxtresult=Val(txtX)/Val(txtY)ElseMsgBox"被0除"txtY="":txtY.SetFocusEndIf2.3.2語句所有語句可以替換為………語句。只有在語句和每一個語句計算相同條件表達式時,才能用結構替換………結構。Ifx<30Theny=0ElseIfx<=50Theny=(x-30)*10Elsey=(x-50)*20+20*10EndIfSelectCasexCaseIs<30y=0Case30To50y=(x-30)*10CaseIs>50y=(x-50)*20+20*10EndSelect2.3.3基本算法及應用2.3.3.1求兩個數的最大(?。┲?.3.3.2用戶輸入時按鍵的判斷2.3.3.3信息的有效性驗證2.3.3.4單選鈕和復選框的應用2.3.3.1求兩個數的最大(?。┲捣治觯簝蓚€數的關系無非有3種情形,即:

A>B,,A<B。實現:(最大值)A>=B=A=BA>B=A=B

2.3.3.2用戶輸入時按鍵的判斷兩種方法:一是在輸入時判斷,使用文本框的事件;常用:事件(參數)二是在全部輸入完成后再對每個字符進行判斷,使用循環(huán)結構依次獲取字符串中的字符。例在文本框中輸入一個字符串,要求只能出現字母。

1()(<("a")>("z"))_(<("A")>("Z"))=0

2.3.3.3信息的有效性驗證例登錄界面設計“確定”按鈕的事件過程如下:

() =""="""請輸入完整信息!"

<>"20082008" "密碼錯誤,不能登錄!"=""

&",歡迎您!"

有效信息:①帳號和密碼都不能空②密碼符合要求這樣的密碼設置方法,安全性差2.3.3.4單選鈕和復選框的應用單選鈕——多選一在同一組單選鈕中只有一個按鈕的屬性值為1,通常使用………的語句格式進行判斷。復選框——多選多同一組復選框中可以同時有多個被選中,也可以只選中一個,也可以一個都不選中,通常我們對各個復選框進行獨立判斷。2.3.3.4單選鈕和復選框的應用例根據用戶選擇,求若干門課程的總分或平均分參考代碼如下:

(),n=1=+():n=n+1=1=+():n=n+1=1=+():n=n+1

=n&"門課總分:"&&

n<>0=n&"門課平均分:"&&/n

問:變量n的作用是什么?2.3.3.4其他應用舉例例10例11例12例13例10例10調整3個文本框中的數值,使其中的數值按小到大的順序排放

a>b=a:a=b:b='如果a大于b,交換a和b的值

a>c=a:a=c:c='如果a大于c,交換a和c的值

b>c=b:b=c:c='如果b大于c,交換b和c的值例11例7-11求一元二次方程20的根根據數學中一元二次方程的求根公式,令:當Δ>0時,方程有兩個不相等的實根;當Δ=0時,方程有兩個相等的實根;當Δ<0時,方程有兩個不相等的虛根。例11a<>0=b*b-4*a*c>0x1=(+())/(2*a) '第1個根

x2=(-())/(2*a) '第2個根

="X1="&x1&(13)&(10)&"X2="&x2=0x1=/(2*a)="12="&x1

x1=/(2*a) '根的實部

x2=()/(2*a) '根的虛部

="X1="&x1&"+"&x2&"i"&(13)&(10)&"X2="&x1&"-"&x2&"i"

例12例7-12編程實現輸入一個整數,判斷其能否被3、5、7整除,并輸出以下信息之一:(1)能被3、5、7整除。(2)能被其中兩個數(要指出哪兩個)整除。(3)能被其中一個數(要指出哪一個)整除。(4)不能被3、5、7任一個整除。代碼1x3=0x5=0x7=0"能被3,5,7整除"x3=0x5=0x7<>0"能被3,5整除"x3=0x7=0x5<>0"能被3,7整除"x5=0x7=0x3<>0"能被5,7整除"x3=0"能被3整除"x5=0"能被5整除"x7=0"能被7整除"代碼2x3=0x5=0x7=0"能被3,5,7整除"x3=0x5=0x7<>0"能被3,5整除"x3=0x7=0x5<>0"能被3,7整除"x5=0x7=0x3<>0"能被5,7整除"x3=0"能被3整除"x5=0"能被5整除"x7=0"能被7整除"

"不能被3、5、7任一數整除"

代碼3x3=0n=n+1s=s&"3"

x5=0n=n+1s=s&"5"

x7=0n=n+1s=s&"7"

n<>0"能被"&s&"這"&n&"個數整除"

"不能被任一數整除"

代碼40x3=0n=n+1

x5=0n=n+2

x7=0n=n+4

n0:"不能被任一數整除"

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論