vb基本程序結(jié)構(gòu)_第1頁(yè)
vb基本程序結(jié)構(gòu)_第2頁(yè)
vb基本程序結(jié)構(gòu)_第3頁(yè)
vb基本程序結(jié)構(gòu)_第4頁(yè)
vb基本程序結(jié)構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩57頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第六章基本程序結(jié)構(gòu)本章內(nèi)容及要求:1.了解算法概念及算法的表示,掌握用N—S流程序表示算法2.熟練掌握賦值語(yǔ)句、End語(yǔ)句和注釋語(yǔ)句等語(yǔ)句及輸入/輸出消息框函數(shù)的使用;3.熟練掌握行if語(yǔ)句、塊if結(jié)構(gòu)、SelectCase情況選擇結(jié)構(gòu)有使用,掌握選擇的嵌套結(jié)構(gòu);4.熟練掌握實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的For/Next循環(huán)結(jié)構(gòu)及ExitFor語(yǔ)句、Do/Loop循環(huán)結(jié)構(gòu)的使用,掌握多重循環(huán)。重點(diǎn):選擇結(jié)構(gòu)及循環(huán)結(jié)構(gòu)的實(shí)現(xiàn)及其應(yīng)用難點(diǎn):選擇的嵌套及多重循環(huán)結(jié)構(gòu)1精選2021版課件6.1算法及算法的表示6.1.1算法概述什么是算法:廣義地講:算法是為完成一項(xiàng)任務(wù)所應(yīng)當(dāng)遵循的一步一步的規(guī)則的、精確的、無(wú)歧義的描述,它的總步數(shù)是有限的。狹義地講:算法是解決一個(gè)問(wèn)題采取的方法和步驟的描述。下面通過(guò)兩個(gè)簡(jiǎn)單的例子加以說(shuō)明:例6.1輸入三個(gè)數(shù),然后輸出其中最大的數(shù)。將三個(gè)數(shù)依次輸入到變量A、B、C中,設(shè)變量MAX存放最大數(shù)。其算法如下:

2精選2021版課件例6.2輸入10個(gè)數(shù),打印輸出其中最大的數(shù)。算法設(shè)計(jì)如下:(1)輸入1個(gè)數(shù),存入變量A中,將記錄數(shù)據(jù)個(gè)數(shù)的變量N賦值為1,即N=1(2)將A存入表示最大值的變量Max中,即Max=A(3)再輸入一個(gè)值給A,如果A>Max則Max=A,否則Max不變(4)讓記錄數(shù)據(jù)個(gè)數(shù)的變量增加1,即N=N+1(5)判斷N是否小于10,若成立則轉(zhuǎn)到第(3)步執(zhí)行,否則轉(zhuǎn)到第(6)步。(6)打印輸出max1)輸入A、B、C。2)A與B中大的一個(gè)放入MAX中。3)把C與MAX中大的一個(gè)放入MAX中。4)輸出MAX,MAX即為最大數(shù)。3精選2021版課件6.1.2算法的特性有窮性確定性有0個(gè)或多個(gè)輸入有一個(gè)或多個(gè)輸出有效性4精選2021版課件6.1.3算法的表示一、自然語(yǔ)言與偽代碼表示算法自然語(yǔ)言:就是指人們?nèi)粘J褂玫恼Z(yǔ)言,可以是漢語(yǔ)、英語(yǔ)或其它語(yǔ)言。偽代碼:是用介于自然語(yǔ)言和計(jì)算機(jī)語(yǔ)言之間的文字和符號(hào)(包括數(shù)學(xué)符號(hào))來(lái)描述算法。例如:例6.1可用如下的偽代碼表示Begin(算法開(kāi)始)輸入A,B,CIFA>B則A→Max否則B→MaxIFC>Max則C→MaxPrintMaxEnd(算法結(jié)束)5精選2021版課件二、用傳統(tǒng)流程圖表示算法處理框起止框I/O框判斷框流程線連接點(diǎn)1、傳統(tǒng)流程圖中的基本符號(hào)6精選2021版課件2、三種基本結(jié)構(gòu)的傳統(tǒng)表示(1)順序結(jié)構(gòu)條件語(yǔ)句1語(yǔ)句2YN語(yǔ)句1語(yǔ)句2(2)選擇結(jié)構(gòu)7精選2021版課件條件(a)條件語(yǔ)句組(3)循環(huán)結(jié)構(gòu)a)當(dāng)型循環(huán)b)直到循環(huán)YNYN(b)語(yǔ)句組8精選2021版課件三種基本結(jié)構(gòu)的特點(diǎn):(1)只有一個(gè)入口(2)只有一個(gè)出口(3)不存在死語(yǔ)句(4)不存在死循環(huán)例:例6.2輸入10個(gè)數(shù),打印輸出其中的最大的數(shù)的流程圖9精選2021版課件從10個(gè)數(shù)中選出最大的數(shù)的流程圖N<10Max=AN=1A>MaxMax=A輸入A開(kāi)始再輸入給AN=N+1打印Max結(jié)束YNNY10精選2021版課件6.1.4用N—S流程圖表示算法將全部算法寫(xiě)在一個(gè)矩形框內(nèi),在矩形內(nèi)還可包含其它從屬于它的框三種基本結(jié)構(gòu)的N—S圖表示:語(yǔ)句A語(yǔ)句B語(yǔ)句A語(yǔ)句B條件YN1、順序結(jié)構(gòu)2、選擇結(jié)構(gòu)11精選2021版課件語(yǔ)句組(3)循環(huán)結(jié)構(gòu)a)當(dāng)型循環(huán)b)直到循環(huán)當(dāng)條件成立語(yǔ)句組直到當(dāng)條件成立例:畫(huà)出從10個(gè)數(shù)中選出最大的數(shù)的N—S流程圖(a)(b)12精選2021版課件傳統(tǒng)流程圖N<10Max=AN=1A>MaxMax=A輸入A開(kāi)始再輸入給AN=N+1打印Max結(jié)束YNNY輸入A當(dāng)N<=10Max=AN=N+1打印Max輸入AN—S流程圖A>=MaxYN13精選2021版課件PrivateSubForm_Click()Dima%,max%,i%max=aFori=1To10a=Val(InputBox("A=?"))Ifa>maxThenmax=aNextiPrint"Max=";maxEndSub最后需要說(shuō)明的是:上面介紹的算法表示是給人看的,即是為幫助程序開(kāi)發(fā)人員閱讀、編寫(xiě)程序而設(shè)計(jì)的一種輔助工具,程序則必須符一計(jì)算機(jī)語(yǔ)言的語(yǔ)法規(guī)則。下面是例6.2的計(jì)算機(jī)程序,即為用計(jì)算機(jī)語(yǔ)言表示算法:14精選2021版課件6.1.5結(jié)構(gòu)化程序設(shè)計(jì)方法(補(bǔ)充)(一)用計(jì)算機(jī)解決問(wèn)題的過(guò)程提出、分析問(wèn)題確定算法模型設(shè)計(jì)算法編寫(xiě)程序調(diào)試程序分析輸出結(jié)果正確合理結(jié)束不正確15精選2021版課件(二)結(jié)構(gòu)化程序設(shè)計(jì)思想自頂向下、逐步細(xì)化、模塊化自頂向下:先從全局、整體設(shè)計(jì)逐步細(xì)化:將一個(gè)問(wèn)題分解成幾個(gè)較小的問(wèn)題解決模塊化:將一個(gè)大任務(wù)分解成若干個(gè)較小的部分,每個(gè)部分承擔(dān)一定功能,稱為“功能模塊”例:給100個(gè)整數(shù),打印輸出其中的素?cái)?shù)16精選2021版課件S1N—S流程圖輸入100個(gè)數(shù)存入X1,x2,……x100打印x1…..x100中不等于0的數(shù)讓x1,x2,……x100中的非素變?yōu)?S3S2輸入xi當(dāng)i<=100i=i+1i=1S1細(xì)化xi≠0當(dāng)i<=100i=i+1i=1YN打印xiS3細(xì)化17精選2021版課件S1N—S流程圖輸入100個(gè)數(shù)存入X1,x2,……x100打印x1…..x100中不等于0的數(shù)讓x1,……x100中的非素變?yōu)?S3S2S2細(xì)化判斷xi是否是素?cái)?shù),若不是則將xi=0當(dāng)i<=100i=i+1i=1S21r=0r<=將x1除j的余j=j+1j=2YNxi=0直到j(luò)>xi/2S21細(xì)化18精選2021版課件輸入100個(gè)數(shù)存入X1,x2,……x100打印x1…..x100中不等于0的數(shù)讓x1,……x100中的非素變?yōu)?細(xì)化后的流程圖輸入xi當(dāng)i<=100i=i+1i=1當(dāng)i<=100i=1r=0r=xi%jj=j+1j=2YNxi=0直到j(luò)>xi/2i=i+1xi≠0當(dāng)i<=100i=1YN打印xii=i+119精選2021版課件6.2順序結(jié)構(gòu)6.2.1賦值語(yǔ)句

形式:變量名=表達(dá)式對(duì)象.屬性=表達(dá)式

功能:將表達(dá)式的值賦值給變量名或指定對(duì)象的屬性。一般用于給變量賦值或?qū)丶O(shè)定屬性值.例:sRate!=0.1Text1.Text="歡迎使用VisualBasic6.0”說(shuō)明:1.執(zhí)行過(guò)程:先求表達(dá)式的值,然后將值賦值給左邊的變量。2.右邊表達(dá)式可以是變量、常量、函數(shù)調(diào)用等特殊的表達(dá)式。3.不要將“=”理解為數(shù)學(xué)上的等號(hào):A=A+1是表示將A單元的值加1后以放回到A單元。20精選2021版課件執(zhí)行過(guò)程如右圖4.賦值符號(hào)“=”左邊一定只能是變量名或?qū)ο蟮膶傩砸?,不能是常量、符?hào)常量、表達(dá)式。下面的賦值語(yǔ)句都是錯(cuò)的:5=X'左邊是常量。Abs(X)=20'左邊是函數(shù)調(diào)用,即是表達(dá)式。5.賦值符號(hào)“=”兩邊的數(shù)據(jù)類(lèi)型一般要求應(yīng)一致。具體規(guī)則(P77)21精選2021版課件6.2.2注釋語(yǔ)句其語(yǔ)法格式為:Rem<注釋內(nèi)容>或'<注釋內(nèi)容>說(shuō)明:1.<注釋內(nèi)容>指要包括的任何注釋文本。在Rem關(guān)鍵字和注釋內(nèi)容之間要加一個(gè)空格。可以用一個(gè)英文單引號(hào)“'”來(lái)代替Rem關(guān)鍵字。2.如果在其他語(yǔ)句行后面使用Rem關(guān)鍵字,必需用冒號(hào)(:)與語(yǔ)句隔開(kāi)。若用英文單引號(hào)“'”,則在其他語(yǔ)句行后面不必加冒號(hào)(:)。例如:ConstPI=3.1415925'符號(hào)常量PIS=PI*r*r :Rem計(jì)算圓的面積22精選2021版課件6.3選擇結(jié)構(gòu)

1.If…Then語(yǔ)句(單分支結(jié)構(gòu))

If<表達(dá)式>Then語(yǔ)句塊EndIf

If<表達(dá)式>Then<語(yǔ)句>

例:已知兩個(gè)數(shù)x和y,比較它們的大小,使得x大于y.

Ifx<yThent=x:x=y:y=tEndIf

或Ifx<yThent=x:x=y:y=t23精選2021版課件2.If…Then…Else語(yǔ)句(雙分支結(jié)構(gòu))

If<表達(dá)式>Then<語(yǔ)句塊1>Else<語(yǔ)句塊2>EndIf

If<表達(dá)式>Then<語(yǔ)句1>Else<語(yǔ)句2>

例如:輸出x,y兩個(gè)中值較大的一個(gè)值。IFX>YThenPrintXElsePrintYEndIf也可以寫(xiě)成如下的單行形式:IFX>YThenPrintXElsePrintY雙分支選擇結(jié)構(gòu)執(zhí)行過(guò)程24精選2021版課件3.If…Then…ElseIf語(yǔ)句(多分支結(jié)構(gòu))

形式:

If<表達(dá)式1>Then <語(yǔ)句塊1> ElseIf<表達(dá)式2>Then <語(yǔ)句塊2> … [Else 語(yǔ)句塊n+1] EndIf

例:輸入一學(xué)生成績(jī),評(píng)定其等級(jí)。方法是:90~100分為“優(yōu)秀”,80~89分為“良好”,70~79分為“中等”,60~69分為“及格”,60分以為“不合格”執(zhí)行過(guò)程25精選2021版課件使用IF語(yǔ)句實(shí)現(xiàn)的程序段如下:Ifx>=90then Print"優(yōu)秀"ElseIfx>=80Then Print"良好"ElseIfx>=70Then Print"中等"ElseIfx>=60Then Print"及格"Else Print"不及格"EndIf26精選2021版課件6.3.2SelectCase語(yǔ)句(條件分支)形式:

SelectCase變量或表達(dá)式 Case表達(dá)式列表1 語(yǔ)句塊1 Case表達(dá)式列表2 語(yǔ)句塊2 … [CaseElse 語(yǔ)句塊n+1] EndSelect<表達(dá)式列表>:與<變量或表達(dá)式>同類(lèi)型的下面四種形式之一:表達(dá)式

A+5

一組枚舉表達(dá)式(用逗號(hào)分隔)

2,4,6,8

表達(dá)式1To表達(dá)式2

60to100 Is關(guān)系運(yùn)算符表達(dá)式

Is<60數(shù)值型或字符串表達(dá)式27精選2021版課件將例6.3使用selectcase…..語(yǔ)句來(lái)實(shí)現(xiàn)的程序段如下:SelectCasexCase90to100Print"優(yōu)秀"Case80to89Print"良好"Case70to79Print"中等"Case60to69Print"及格"CaseElsePrint"不及格"EndSelect28精選2021版課件補(bǔ)充例題:設(shè)計(jì)一個(gè)由計(jì)算機(jī)來(lái)當(dāng)小學(xué)低年級(jí)學(xué)生算術(shù)老師的VB應(yīng)用程序,要求給出一系列的兩個(gè)1~10數(shù)的四則運(yùn)算的算術(shù)題,學(xué)生輸入該題的答案,計(jì)算機(jī)根據(jù)學(xué)生的答案判斷正確與否,并給出成績(jī),單擊結(jié)束命令按鈕,退出應(yīng)用程序。分析:產(chǎn)生1~10操作數(shù),可通過(guò)Int(10*Rnd+1)實(shí)現(xiàn)29精選2021版課件6.3.3選擇結(jié)構(gòu)的嵌套在IF語(yǔ)句的Then分支和Else分支中可以完整地嵌套另一IF語(yǔ)句或SelectCase語(yǔ)句,同樣SelectCase語(yǔ)句每一個(gè)Case分支中都可嵌套另一IF語(yǔ)句或另一SelectCase語(yǔ)句。下面是兩種正確的嵌套形式:(1)IF<條件1>Then…..

if<條件2>Then……Else…..EndIf….Else….

IF<條件3>Then…..Else…..EndIf…..EndIF(2)IF<條件1>Then…..SelectCase…Case……

IF<條件1>Then……Else…..EndIf……Case….…..EndSelect….EndIF30精選2021版課件注意:只要在一個(gè)分支內(nèi)嵌套,不出現(xiàn)交叉,滿足結(jié)構(gòu)規(guī)則,其嵌套的形式將有很多種,嵌套層次也可以任意多。對(duì)于多層IF嵌套結(jié)構(gòu)中,要特別注意IF與Else的配對(duì)關(guān)系,一個(gè)Else必須與IF配結(jié),配對(duì)的原則是:在寫(xiě)含有多層嵌套的程序時(shí),建議使用縮進(jìn)對(duì)齊方式,這樣容易閱讀和維護(hù)。31精選2021版課件6.4循環(huán)結(jié)構(gòu)1.For循環(huán)語(yǔ)句(一般用于循環(huán)次數(shù)已知)形式

For循環(huán)變量=初值to終值[Step步長(zhǎng)] 語(yǔ)句塊 [ExitFor] 語(yǔ)句塊Next循環(huán)變量循環(huán)體>0初值<終值=1時(shí),可省略<0初值>終值=0死循環(huán)步長(zhǎng)32精選2021版課件循環(huán)次數(shù)例:ForI=2To13Step3PrintI,NextIPrint“I=“,I循環(huán)執(zhí)行次數(shù)輸出I的值分別為:25811出了循環(huán)輸出為:I=1433精選2021版課件例6.5編程計(jì)算:S=1+2+3+…+100DimS%,I%S=0'累加前變量S為0ForI=1to100S=S+INextIPrint"S=",S當(dāng)N<=100N=N+1打印SS=0,N=1S=S+N例4-5的算法流程圖34精選2021版課件形式1:(當(dāng)型循環(huán))

Do{While|Until}<條件>語(yǔ)句塊[ExitDo]語(yǔ)句塊Loop6.4.2Do…Loop循環(huán)語(yǔ)句35精選2021版課件形式2:(直到循環(huán))

Do 語(yǔ)句塊 [ExitDo] 語(yǔ)句塊 Loop{While|Until}<條件>36精選2021版課件條件語(yǔ)句塊語(yǔ)句塊TFExitDo條件語(yǔ)句塊語(yǔ)句塊TFExitDoDoUntil…Loop執(zhí)行過(guò)程Do…LoopUntil執(zhí)行過(guò)程37精選2021版課件說(shuō)明:(1)當(dāng)使用While<條件>構(gòu)成循環(huán)時(shí),當(dāng)條件為“真”則反復(fù)執(zhí)行循環(huán)體,當(dāng)條件為“假”,則退出循環(huán)。(2)當(dāng)使用Until<條件>構(gòu)成循環(huán)時(shí),當(dāng)條件為“假”,則反復(fù)執(zhí)行循環(huán)體,直到條件成立,即為“真”時(shí),則退出循環(huán)。(3)在循環(huán)體內(nèi)一般應(yīng)有一個(gè)專門(mén)用來(lái)改變條件表達(dá)式中變量的語(yǔ)句,以使隨著循環(huán)的執(zhí)行,條件趨于不成立(或成立),最后達(dá)到退出循環(huán)。(4)語(yǔ)句ExitDo的作用是退出它所在的循環(huán)結(jié)構(gòu),它只能用在DO/Loop結(jié)構(gòu)中,并且常常是同選擇結(jié)構(gòu)一起出現(xiàn)在循環(huán)結(jié)構(gòu)中,用來(lái)實(shí)現(xiàn)當(dāng)滿足某一條件時(shí)提前退出循環(huán)。38精選2021版課件6.4.3While…Wend語(yǔ)句使用格式如下:While<條件><循環(huán)塊>Wend

說(shuō)明:該語(yǔ)句的功能與DoWhile<條件>….Loop實(shí)現(xiàn)的循環(huán)完全相同。例:用do…Loop語(yǔ)句改寫(xiě)前面的例題6.539精選2021版課件例6.7求兩個(gè)整數(shù)的最大公約數(shù)、最小公倍數(shù)Dimn%,m%,nm%,r%m=Val(InputBox("m="))n=Val(InputBox("n="))nm=n*mIfm<nThent=m:m=n:n=tr=mmodnDoWhile(r<>0)m=nn=rr=mmodnLoopPrint"最大公約數(shù)=",nPrint"最小公倍數(shù)=",nm/n算法使用轉(zhuǎn)碾除法,流程圖如右,實(shí)現(xiàn)的程序代碼如下:40精選2021版課件6.4.4循環(huán)的嵌套——多重循環(huán)結(jié)構(gòu)

如果在一個(gè)循環(huán)內(nèi)完整地包含另一個(gè)循環(huán)結(jié)構(gòu),則稱為多重循環(huán),或循環(huán)嵌套,嵌套的層數(shù)可以根據(jù)需要而定,嵌套一層稱為二重循環(huán),嵌套二層稱為三重循環(huán)。上面介紹的幾種循環(huán)控制結(jié)構(gòu)可以相互嵌套,下面是幾種常見(jiàn)的二重嵌套形式:41精選2021版課件(1)ForI=….…..ForJ=….….NextJ…..NextI(2)ForI=….…..DoWhile/Until….….Loop…..NextI(3)DoWhile….…..ForJ=….….NextJ…..Loop(4)DoWhile/Until….…..DoWhile/Until….….Loop…..Loop42精選2021版課件例如:打印九九乘法表.

Fori=1To9

Forj=1To9se=i&"×"&j&"="&i*jPicture1.PrintTab((j-1)*9+1);se;NextjPicture1.PrintNexti43精選2021版課件對(duì)于循環(huán)的嵌套,要注意以下事項(xiàng):(1)內(nèi)循環(huán)變量與外循環(huán)變量不能同名;(2)外循環(huán)必須完全包含內(nèi)循環(huán),不能交叉;(3)不能從循環(huán)體外轉(zhuǎn)向循環(huán)體內(nèi),也不能從外循環(huán)轉(zhuǎn)向內(nèi)循環(huán).

正確

錯(cuò)誤

Forii=1To10Forjj=1To20… Nextii NextjjForii=1To10Forii=1To20… Nextii NextiiForii=1To10Forjj=1To20… NextjjNextiiForii=1To10…NextiiForii=1To10…Nextii44精選2021版課件6.4.5幾種循環(huán)語(yǔ)句比較45精選2021版課件6.4.6循環(huán)結(jié)構(gòu)與選擇結(jié)構(gòu)的嵌套在循環(huán)結(jié)構(gòu)中可以完整嵌套選擇結(jié)構(gòu)即整個(gè)選擇結(jié)構(gòu)都屬于循環(huán)體。在選擇結(jié)構(gòu)中嵌套循環(huán)結(jié)構(gòu)時(shí),則要求整個(gè)循環(huán)結(jié)構(gòu)必須完整地嵌套在一個(gè)分支內(nèi),一個(gè)循環(huán)結(jié)構(gòu)不允許出現(xiàn)在兩個(gè)或兩個(gè)以上的分支內(nèi)。46精選2021版課件(1)ForI=…………

IF…Then……EndIF……NextI(6)IF…Then……ForI=…………EndIF……NextI(5)SelectCase……ForI=…………Case…………Case…………NextI………EndSelect(3)ForI=…………IF…Then……NextI……EndIF(2)IF…Then……

ForI=…………NextI……EndIF0(4)ForI=…………

SelectCase…Case…………Case…………EndSelect……NextI×××47精選2021版課件6.5其它控制語(yǔ)句

6.5.1Goto語(yǔ)句形式:GoTo{標(biāo)號(hào)|行號(hào)}作用是無(wú)條件地轉(zhuǎn)移到標(biāo)號(hào)或行號(hào)指定的那行語(yǔ)句.標(biāo)號(hào)是一個(gè)字符序列,行號(hào)是一個(gè)數(shù)字序列。

例求100以內(nèi)的素?cái)?shù)判別某數(shù)m是否為素?cái)?shù)最簡(jiǎn)單的方法是:對(duì)于m從i=2,3,…,m-1判別m能否被i整除,只要有一個(gè)能整除,m不是素?cái)?shù),否則m是素?cái)?shù)。Form=2To100Fori=2Tom-1If(mModi)=0ThenGoToNotNextMNextiPrintmNotNextM:Nextm48精選2021版課件6.5.2Exit語(yǔ)句Exit語(yǔ)句用于退出Do...Loop、For...Next、Function或Sub代碼塊。對(duì)應(yīng)的使用格式為:ExitDo、ExitFor、ExitFunction、ExitSub。分別表示退出DO循環(huán)、For循環(huán)、函數(shù)過(guò)程、子過(guò)程。例如:下面的例子是使用Exit語(yǔ)句退出For...Next循環(huán)、Do...Loop循環(huán)及子過(guò)程。49精選2021版課件PrivateSubForm_Click()DimI%,Num%Do'建立無(wú)窮循環(huán)。ForI=1To100'循環(huán)100次。Num=Int(Rnd*100)'生成一個(gè)0~99的隨機(jī)數(shù)。SelectCaseNumCase10:ExitFor'退出For...Next循環(huán)。Case50:ExitDo'退出Do...Loop循環(huán)。Case64:ExitSub'退出子過(guò)程。EndSelectNextILoopEndSub50精選2021版課件6.5.3End語(yǔ)句形式:End

功能:結(jié)束一個(gè)程序的運(yùn)行。在VisualBasic中還有多種形式的End語(yǔ)句,用于結(jié)束一個(gè)程序塊或過(guò)程。其形式有:EndIfEndSelectEndTypeEndWithEndSubEndFunction等它們與對(duì)應(yīng)的語(yǔ)句配對(duì)使用。

51精選2021版課件6.5.4暫停語(yǔ)句Stop語(yǔ)句用來(lái)暫停程序的執(zhí)行,相當(dāng)于在事件代碼中設(shè)置斷點(diǎn)。語(yǔ)法格式為:Stop說(shuō)明:1.Stop語(yǔ)句的主要作用是把解釋程序置為中斷(Break)模式,以便對(duì)程序進(jìn)行檢查和調(diào)試??梢栽诔绦虻娜魏蔚胤椒胖肧top語(yǔ)句,當(dāng)執(zhí)行Stop語(yǔ)句時(shí),系統(tǒng)將自動(dòng)打開(kāi)立即窗口。2.與End語(yǔ)句不同。52精選2021版課件6.5.5With...EndWith語(yǔ)句形式:With對(duì)象名語(yǔ)句塊EndWith說(shuō)明:With語(yǔ)句可以對(duì)某個(gè)對(duì)象執(zhí)行一系列的語(yǔ)句,而不用重復(fù)指出對(duì)象的名稱。例如,要改變一個(gè)對(duì)象的多個(gè)屬性,可以在With控制結(jié)構(gòu)中加上屬性的賦值語(yǔ)句,這時(shí)候只是引用對(duì)象一次而不是在每個(gè)屬性賦值時(shí)都要引用它。下面的例子顯示了如何使用With語(yǔ)句來(lái)給同一個(gè)對(duì)象的幾個(gè)屬性賦值。53精選2021版課件例如,需要對(duì)同一對(duì)象設(shè)置幾個(gè)屬性。途徑之一是使用多條語(yǔ)句。PrivateSubForm_Load()Command1.Caption="退出(E&xit)"Command1.Top=500Command1.Left=4500Command1.Enabled=TrueEndSub使用With...EndWith語(yǔ)句,上面程序的代碼如下。PrivateSubForm_Load()WithCommand1.Caption="OK".Top=500.Left=4500.Enabled=TrueEndWithEndSub54精選2021版課件6.6應(yīng)用程序舉例6.6.1素?cái)?shù)與哥德巴赫猜想判斷一個(gè)給定的整數(shù)是否為素?cái)?shù)。

算法思路:素?cái)?shù)指除了能被1和自身外,不能被其他整數(shù)整除的自然數(shù)。判斷整數(shù)N是不是素?cái)?shù)的基本方法是:將N分別除以2,3,…,N-1,若都不能整除,則N為素?cái)?shù)。因?yàn)镹=Sqr(N)*Sqr(N),所以,當(dāng)N能被大于等于Sqr(N)的整數(shù)整除時(shí),一定存在一個(gè)小于等于Sqr(N)的整數(shù),使N能被它整除,因此只要判斷N能否被2,3,…,Sqr(N)整除即可。算法流程圖如下:55精選2021版課件DimN%,I%,K%N=Val(InputBox("N=?"))K=Int(Sqr(N))ForI=2ToKIfNModI=0ThenExitForNextIIfI>KThenPrintN;"是素?cái)?shù)"ElsePrintN;"不是素?cái)?shù)"EndIf

56精選2021版課件驗(yàn)證哥德巴赫猜想:一個(gè)大于等于6的偶數(shù)可以表示為兩個(gè)素?cái)?shù)之和。例如:6=3+38=3+510=3+7

算法設(shè)計(jì):設(shè)N為大于等于6的任一偶數(shù),將其分解為N1和N2兩個(gè)數(shù),使用N1+N2=N,分別判斷N1和N2是否為素?cái)?shù),若都是,則為一組解。若N1不是素?cái)?shù),就不必再檢查N2是否素?cái)?shù)。先從N1=3開(kāi)始,直到N1=N/2為止。算法流程圖如圖4-29所示。將程序代碼寫(xiě)到窗體的單擊事件中。實(shí)現(xiàn)上面算法的程序代碼如下:57

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論