版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
.例1:求圓的周長(zhǎng)和面積inputrc=2*π*rs=π*r*rprintc,s練習(xí):求三個(gè)數(shù)中的最大數(shù)?!灿脗未a描述4.程序與程序語(yǔ)言〔1程序的定義:程序?qū)嶋H上是一組及其操作的指令或語(yǔ)句的序列,是算法的一種描述〔2程序的基本特征:程序一共有七個(gè)基本特征1、程序中,每一個(gè)算法的步驟對(duì)應(yīng)著程序設(shè)計(jì)語(yǔ)言的一個(gè)或多個(gè)語(yǔ)句,每個(gè)語(yǔ)句對(duì)應(yīng)一個(gè)或者多個(gè)操作。每個(gè)操作都要求有執(zhí)行對(duì)象,并且根據(jù)對(duì)象狀態(tài)變化形成動(dòng)作的效果,同事可變的對(duì)象用變量來(lái)表示,變量的值的變化則可通過(guò)操作賦值來(lái)完成。2、除非特殊索命程序都是從第一條語(yǔ)句開(kāi)始順序開(kāi)始向下執(zhí)行。3、程序總是施行與操作與某些對(duì)象,這些對(duì)象通常稱為數(shù)據(jù)。4、這些數(shù)據(jù)一般應(yīng)該有屬性和取值范圍,即類型說(shuō)明。5、有時(shí)語(yǔ)句要求執(zhí)行者作出判斷,即在某種條件成立情況下執(zhí)行一條或一組語(yǔ)句,否則執(zhí)行另一條或一組語(yǔ)句。6、一條或一組語(yǔ)句可能需要執(zhí)行一次以上,當(dāng)一條或一組語(yǔ)句要重復(fù)時(shí),必須指明重復(fù)的次數(shù)或重復(fù)的條件。7、程序本身是一個(gè)靜態(tài)的實(shí)體,而執(zhí)行語(yǔ)句的進(jìn)程是動(dòng)態(tài)的?!?程序的基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)?!?程序設(shè)計(jì)語(yǔ)言的的產(chǎn)生和發(fā)展1、機(jī)器語(yǔ)言:二進(jìn)制代碼指令2、匯編語(yǔ)言:類似英語(yǔ)縮略詞且?guī)в兄浶苑?hào)的語(yǔ)言,每條匯編指令和一條機(jī)器指令相對(duì)應(yīng),只是指令碼和操作數(shù)都采用符號(hào)形式。而這種語(yǔ)言是不能被機(jī)器直接接受,必須用一種語(yǔ)言翻譯器將程序中的每條語(yǔ)句翻譯成機(jī)器語(yǔ)言才能執(zhí)行。3、高級(jí)語(yǔ)言:高級(jí)語(yǔ)言本身不是一種語(yǔ)言,只是一類語(yǔ)言的分類。用高級(jí)語(yǔ)言編寫(xiě)的程序必須經(jīng)過(guò)翻譯器將其翻譯成機(jī)器語(yǔ)言,才能在計(jì)算機(jī)上執(zhí)行。常見(jiàn)的高級(jí)語(yǔ)言:C語(yǔ)言、C++、pascal、java、C#、VB、Basic〔5程序的編輯和翻譯1、程序的編輯:以匯編語(yǔ)言或者高級(jí)語(yǔ)言所編寫(xiě)的程序被稱為"源代碼",這些代碼需要我們逐一的輸入到計(jì)算機(jī)中。并把他們以文件的形式保存起來(lái),這個(gè)過(guò)程稱為程序的編輯2、程序的翻譯:前面的學(xué)習(xí)中使我們知道,計(jì)算機(jī)只能識(shí)別和執(zhí)行二進(jìn)制的機(jī)器語(yǔ)言代碼,而我們用級(jí)語(yǔ)言或匯編語(yǔ)言編寫(xiě)的程序要想被計(jì)算機(jī)執(zhí)行,必須翻譯成機(jī)器語(yǔ)言程序,最終才能被計(jì)算機(jī)執(zhí)行。高級(jí)語(yǔ)言的翻譯程序一般則有兩種類型:編譯程序和解釋程序。練習(xí)題:1下面對(duì)算法描述正確的一項(xiàng)是:〔A、算法只能用自然語(yǔ)言來(lái)描述B、算法只能用圖形方式來(lái)表示C、同一問(wèn)題可以有不同的算法D、同一問(wèn)題的算法不同,結(jié)果必然不同2.下面關(guān)于算法描述正確的是〔<A>算法不可以用自然語(yǔ)言表示<B>算法只能用框圖來(lái)表示<C>一個(gè)算法必須保證它的執(zhí)行步驟是有限的<D>算法的框圖表示法有0個(gè)或多個(gè)輸入,但只能有一個(gè)輸出3、圖形符號(hào)""在算法流程圖描述中表示<>.A處理或運(yùn)算的功能B輸入輸出操作C用來(lái)判斷條件是否滿足需求D算法的開(kāi)始或結(jié)束4、以下哪個(gè)是算法的描述方法?<>A流程圖描述法B枚舉法C順序法D列表法5、下面的語(yǔ)句是一個(gè)計(jì)算機(jī)程序的操作說(shuō)明:〔1初始值為x=1,y=1,z=0,n=0;〔2n=n+1〔將當(dāng)前n+1的值賦予新的n;〔3x=x+2〔將當(dāng)前x+2的值賦予新的x;〔4y=2y〔將當(dāng)前2y的值賦予新的y;〔5z=z+xy〔將當(dāng)前z+xy的值賦予新的z;〔6如果z>7,則執(zhí)行語(yǔ)句〔7,否則返回語(yǔ)句〔2繼續(xù)進(jìn)行;〔7打印n,z;〔8程序終止.由語(yǔ)句〔7打印出的數(shù)值為_(kāi)_____,_______.6、以下屬于計(jì)算機(jī)程序語(yǔ)言的有〔A、匯編語(yǔ)言B、高級(jí)語(yǔ)言C、機(jī)器語(yǔ)言D、低級(jí)語(yǔ)言7、執(zhí)行程序時(shí),程序中的每一條語(yǔ)句至少要運(yùn)行一次〔8、最早的程序設(shè)計(jì)語(yǔ)言是匯編語(yǔ)言〔9、程序設(shè)計(jì)語(yǔ)言是指人們編制程序所使用的計(jì)算機(jī)語(yǔ)言,VB是低級(jí)語(yǔ)言〔10、高級(jí)語(yǔ)言翻譯程序有兩種類型:解釋程序和編譯程序〔第二章程序設(shè)計(jì)基礎(chǔ)第一節(jié)常量、變量的定義VB程序的一般包括如下部分:〔1數(shù)據(jù)類型說(shuō)明部分〔2數(shù)據(jù)的輸入部分〔3數(shù)據(jù)的處理部分〔4數(shù)據(jù)的輸出部分例:求圓的周長(zhǎng)和面積PrivateSubCommand1_Click<>DimrAsSingle//定義r為單精度型DimcAsSingle//'定義c為單精度型DimsAsSingle//定義s為單精度型r=inputbox<"輸入半徑r">//輸入半徑rc=2*3.14159*r//計(jì)算周長(zhǎng)s=3.14159*r*r//計(jì)算面積printc//輸出周長(zhǎng)prints//輸出面積EndSub一、常量:在程序進(jìn)行過(guò)程中不變的量,在VB中一般分?jǐn)?shù)值常量與字符常量?jī)煞N。數(shù)值常量:就是數(shù)學(xué)中說(shuō)的常數(shù),分整型常量和實(shí)型常量?jī)煞N整型常量:即整數(shù),指不帶小數(shù)點(diǎn)的數(shù)值如1、0、-10、+35等都是合法的整數(shù)實(shí)型常量:即實(shí)數(shù),指帶小數(shù)點(diǎn)的數(shù)值。實(shí)型常量又分為定點(diǎn)數(shù)和浮點(diǎn)數(shù)兩種。例:定點(diǎn)數(shù):3.14159和-6.8,1.99浮點(diǎn)數(shù):2E6、1E5例:1.2345×103可表示為1.2345E3,字母E表示底數(shù)10浮點(diǎn)數(shù)就是數(shù)學(xué)上的科學(xué)計(jì)數(shù)法。字符串常量:被一對(duì)雙引號(hào)括起來(lái)的若干個(gè)合法的字符稱為字符串常量。例如:"China"、"VisualBasic"、"18”、"3.1415符號(hào)常量:如果多次用到同一個(gè)常量,則可用一個(gè)有意義的名字表示這個(gè)常量。二、變量:在程序執(zhí)行過(guò)程中,其值可以改變的量稱為變量變量命名注意要點(diǎn):1、必須以字母開(kāi)頭,不能以數(shù)字或其他字符開(kāi)頭。2、只能由字母、漢字、數(shù)字學(xué)或下劃線組成,不能含有小數(shù)點(diǎn)、空格等字符。3、最長(zhǎng)不超過(guò)255個(gè)字符4、不能以VB保留字作變量名,如語(yǔ)句定義符、函數(shù)名等。5、VB不區(qū)分變量名中字母大小寫(xiě)。如HELLO和Hello是同一個(gè)變量。表2-1常用數(shù)據(jù)類型整型Integer從-32768到32767長(zhǎng)整型Long從-2147483648到2147483647單精度實(shí)型Single負(fù)數(shù)-3.402823E+38到-1.401298E-45正數(shù)1.40129E-45到3.402823E38但它只有7位有效數(shù)字雙精度實(shí)型Double絕對(duì)值小于10308的數(shù),它有15位有效數(shù)字日期型Date<Time>如:#2008-01-31##01/31/2008#字符型String如:"中國(guó)","zhongguo"布爾型BooleanTrue或False三、常量和變量的定義符號(hào)常量的聲明:Const常量名[As常量類型]=常量值如:ConstpiAsSingle=3.14159常量名為pi變量的聲明:Dim<變量名>As<變量類型>如:DimaAsInteger定義一個(gè)整型變量,變量名為a變量的賦值:變量=表達(dá)式例:PrivateSubForm_Click<>DimaAsInteger,bAsInteger,cAsIntegerDimstrAsStringa=54b=114c=a+bstr="HelloWorld"Print"a=";a,"b=";b,"c=";cPrintstrEndSub四、運(yùn)算符算術(shù)運(yùn)算:+-*^/\mod加減乘乘方除整除取余^指數(shù)例:2^2=4/〔浮點(diǎn)除例:5/2=2.5\整除例:5\2=2Mod求余數(shù)例:5Mod2=12、關(guān)系運(yùn)算=><>=<=<>等于大于小于大于等于小于等于不等于注意:關(guān)系表達(dá)式的運(yùn)算結(jié)果為布爾值True或False例:3>2結(jié)果為T(mén)rue<真或是>3、邏輯運(yùn)算Not〔取反And〔與Or〔或運(yùn)算結(jié)果為布爾型〔BooleanTrue或False邏輯運(yùn)算符的優(yōu)先級(jí)為:No>And>Or4、日期運(yùn)算符與日期表達(dá)式日期表達(dá)式是用日期運(yùn)算符"+"或"-"將算式表達(dá)式、日期型常量、日期型變量、日期函數(shù)等連接起來(lái)的式子,如表達(dá)式"#2003/09/01#+30”的運(yùn)算結(jié)果是"2003-10-1";表達(dá)式"#2003/10/20#-#2003/10/105、字符運(yùn)算字符串連接符為"+"和"&""123”+"45”="12345”"123”&"45”="12345”123+"45”=168"123”+45=168運(yùn)算符的執(zhí)行順序:在VB中,當(dāng)一個(gè)表達(dá)式中同時(shí)出現(xiàn)多種運(yùn)算符時(shí),運(yùn)算次序由運(yùn)算符的優(yōu)先級(jí)決定,優(yōu)先級(jí)高的運(yùn)算符先運(yùn)算,優(yōu)先級(jí)相同的從左向右進(jìn)行運(yùn)算。不同性質(zhì)的運(yùn)算符優(yōu)先級(jí)如下。算術(shù)運(yùn)算符>字符串運(yùn)算符>關(guān)系運(yùn)算符>邏輯運(yùn)算符6、常用函數(shù)函數(shù)名說(shuō)明示例結(jié)果Sin〔XX弧度的正弦Sin〔00Cos<X>X弧度的余弦Cos<0>1Tan〔XX弧度的正切Tan〔00Atn〔XX用弧度表示的反正切值A(chǔ)tn〔00Abs〔XX的絕對(duì)值A(chǔ)bs〔-3.53.5Exp〔Xe的指定次冪,即exExp〔320.086Log〔X一個(gè)數(shù)值X的自然對(duì)數(shù)Log〔102.3Sqr〔XX的平方根Sqr〔93Sgn〔X符號(hào)函數(shù):X>0,得到1,X<0,得到-1,X=0得到0Sgn〔-3.5-1Int〔X不大于給定數(shù)X的最大整數(shù)Int〔-1.6-2Fix〔XX的整數(shù)部分Fix〔-1.6-1Cint〔X類型為:Integer-322768~32767小數(shù)部分四舍五入CLng〔X類型為:Long-2147483648~2147483647小數(shù)部分四舍五入Mid〔C,N1,N2從C中N1位開(kāi)始取出長(zhǎng)度為N2的子串Mid<"ABCDEFG",3,2>"CD"Right<C,N>返回字符串右邊N個(gè)字符Right<"ABCDEFG",3>"EFG"Left<C,N>返回字符串左邊N個(gè)字符Left<"ABCDEFG",3>"ABC"Len<C,N>測(cè)量字符串的長(zhǎng)度Len<"VB學(xué)習(xí)的開(kāi)始">7Space<N>產(chǎn)生N個(gè)空格組成的字符串"ABC"&"Space<N>"&"113"ABC123Date<>返回當(dāng)前系統(tǒng)日期〔yy-mm-ddDate<>或Date04-12-18Time<>返回系統(tǒng)時(shí)間Time<>或Time10:36:08練習(xí)題:1、下列變量名寫(xiě)法錯(cuò)誤的是<>A、abc_123B、123abcC、abc123D、abc2、下列語(yǔ)句中定義了一個(gè)實(shí)型變量的是<>A、DimendasIntegerB、DimsumAsSingleC、DimNameAsStringD、其它三項(xiàng)都不對(duì)3、在VB中,以下關(guān)于符號(hào)常量的聲明,聲明正確的是:<>A、DimTAGasStringB、ConstTAGasString"Visual"+"Basic"C、ConstTAGasString="VisualBasic"D、ConstTAGasString4、下面<>不是字符串常量A、"True"B、#False#C、""D、"你好"5、分析s=11\3+11Mod3,s的值是<>.A、5B、6C、4D、36、下面表達(dá)式的值是false的有<>.A、"969"<"n97"B、Int<4.99><>len<"basic">C、str<2000><"1997"D、3>27、設(shè)a=2,b=3,在VB中,表達(dá)式a>bOrb>3值是:<>A、FalseB、TrueC、-1D、18、VisualBasic中,下列<>函數(shù)是求絕對(duì)值的。A、ABS〔XB、SQR<XC、INT〔XD、GN〔X>9、表達(dá)式Abs<-3.6>*sqr<100>的值是<>。A、-36B、360C、36D、-36010、下列<>數(shù)據(jù)類型不是數(shù)值型。A、DateB、SingleC、DoubleD、Integer11、下列函數(shù)中,返回值是字符串的是<>.A、MidB、InstrC、ValD、Len12、代數(shù)表達(dá)式表達(dá)式后錯(cuò)誤的是<>A、g*t*t/2B、1/2*g*t^2C、g*t^2/2D、gt^2/213、數(shù)學(xué)式子在VB中的正確寫(xiě)法是:〔A、<2*a+b>/4*aB、<2*a+b>/<4ab>C、<2a+b><4ab>D、<2*a+b>/<4*a*b>14、判斷x是否在區(qū)間[a,b]上,在VB中以哪個(gè)邏輯表達(dá)式是正確的?<>A、a<xandx<=bB、a<x<=bC、a<xandx≤bD、a>xandx<=b15、向n變量存入1個(gè)2位整數(shù),要使此2位數(shù)十位和個(gè)位上的值分別存入x,y變量。正確的算法是<>。選項(xiàng):x、①x=Left<n,1>②y=n-x*10③Printx:PrintyB、①x=Left<n,1>②y=Right<n,1>③Printx:PrintyC、①x=n/10②y=n-x*10③Printx:PrintyD、①x=Int<n/10>②y=n-x*10③Printx:Printy16、向x變量中輸入任意一個(gè)小寫(xiě)字母,再將x變量中的小寫(xiě)字母轉(zhuǎn)成大寫(xiě)字母。正確的算法是<>.選項(xiàng):A、①輸人字母到x②a=Asc<x>-32③x=chr<x>④PrintxB、①輸人字母到x②a=Asc<x>+32③x=chr<x>④PrintxC、①輸人字母到x②a=Val<x>一32③x=Chr<x>④PrintxD、①輸人字母到x②a=Val<x>+32③x=Chr<x>④Printx第二節(jié)程序的順序結(jié)構(gòu)一、賦值語(yǔ)句1.格式:變量名=表達(dá)式功能:將右邊的表達(dá)式的值賦給左邊的變量〔1"變量"可以是簡(jiǎn)單變量,也可以是字符變量;〔2"="是賦值符號(hào),它的含義將表達(dá)式的值賦給左邊的變量。〔3表達(dá)式代表一個(gè)數(shù)值或一個(gè)字符串。例1:A=123;A=B;B=2*3;A=A+10;C$="CHINA"2.賦值語(yǔ)句的功能:計(jì)算功能和賦值功能3.注意事項(xiàng)〔1賦值語(yǔ)句不是代數(shù)等式,賦值號(hào)與等號(hào)形同而意不同;〔2賦值語(yǔ)句類型必須匹配;〔3把字符串賦給串變量時(shí),該字符串必須用雙引號(hào)括起來(lái);〔4變量單元每次只能存一個(gè)數(shù)據(jù),但可以多次賦值。如:C$="COMPUTER"注意:"$"是區(qū)分字符串變量的的標(biāo)志,即要在變量名后加"$"構(gòu)成字符串變量,同時(shí),字符串用雙引號(hào)括起來(lái),然后才賦給字符串變量。二、輸入數(shù)據(jù)的函數(shù)InputBox〔是提供從鍵盤(pán)輸入數(shù)據(jù)的函數(shù)。利用它可產(chǎn)生一個(gè)對(duì)話框,提示用戶輸入數(shù)據(jù)并單擊命令按鈕。該函數(shù)返回值是字符串類型〔string。InputBox〔的語(yǔ)法格式為:InputBox〔提示信息,標(biāo)題,默認(rèn)值,位置提示信息:指對(duì)輸入數(shù)據(jù)的提示,顯示在對(duì)話框中,不能省略標(biāo)題:指運(yùn)行此函數(shù)后彈出的對(duì)話框的標(biāo)題。默認(rèn)值:指默認(rèn)的輸入數(shù)據(jù)值位置:指運(yùn)行此函數(shù)后彈出的對(duì)話框的左上角在屏幕上的位置注意:提示信息和標(biāo)題是用引號(hào)引起來(lái)的字符串三、輸出數(shù)據(jù)的方法1、基本格式:Print輸出內(nèi)容注意:1、輸出內(nèi)容可以是數(shù)、變量、表達(dá)式,也可以是用引號(hào)括起來(lái)的字符串;2、如果輸出內(nèi)容是數(shù),變量,表達(dá)式,則輸出的是數(shù),變量,表達(dá)式,如果是用引號(hào)引起來(lái)的字符串,則原樣輸出;3、多個(gè)輸出內(nèi)容,可以用逗號(hào)或分號(hào)分隔;如果用分號(hào),則后面一個(gè)輸出緊跟前一個(gè)輸出;如果是逗號(hào),則分區(qū)格式輸出;4、如果輸出內(nèi)容后面沒(méi)有符號(hào),則表示下一個(gè)Print換行輸出,如果print中沒(méi)有輸出內(nèi)容,則表示輸出一個(gè)空行。程序設(shè)計(jì)的順序結(jié)構(gòu):代碼按照由上到下的順序一行一行地執(zhí)行。程序執(zhí)行過(guò)程中沒(méi)有分支、沒(méi)有重復(fù),這種結(jié)構(gòu)稱為順序結(jié)構(gòu)。例1:交換兩個(gè)變量中的數(shù)據(jù)。PrivateSubcmdSwap_Click<>DimxAsSingle,yAsSingleDimmAsSinglex=inputbox<"請(qǐng)輸入X的值">y=inputbox<"請(qǐng)輸入Y的值">m=xx=yy=m//交換數(shù)據(jù)printx,yEndSub例2:從鍵盤(pán)上輸入一個(gè)三位數(shù),然后將它反向輸出,如:輸入456,輸出654。分析問(wèn)題設(shè)X為輸入的三位整數(shù),Y為X的方向輸出。因?yàn)閄的百位、十位、個(gè)位分別為:X1=X\100X2=<X-X1*100>\10X3=X-X1*100-X2*10所以Y=X3*100+X2*10+X1<2>設(shè)計(jì)算法①輸入X的值②計(jì)算:X1=X\100③計(jì)算:X2=<X-X1*100>\10④計(jì)算:X3=X-X1*100-X2*10⑤計(jì)算:Y=X3*100+X2*10+X1⑥輸出Y的值〔3編寫(xiě)程序Privatesubcommand_click<>Dimxasinteger,x1asinteger,x2asinteger,x3asinteger,yasintegerX=inputbox<"x=","輸入">X1=X\100X2=<X-X1*100>\10X3=X-X1*100-X2*10Y=X3*100+X2*10+X1Print"y=";yEndsub〔4調(diào)試程序練習(xí)題:1、以下是一段VB程序:a=1b=a+1c=a+b它的基本結(jié)構(gòu)屬于〔A、順序結(jié)構(gòu)B、選擇結(jié)構(gòu)C、循環(huán)結(jié)構(gòu)D、樹(shù)型結(jié)構(gòu)2、下列VB程序運(yùn)行后,變量x的值為<>.x=2Printx+lPrintx+23、執(zhí)行以下程序,在彈出的第1個(gè)輸入框輸入"10",第2個(gè)輸入框輸入"15",則輸出的結(jié)果為〔。
DimaAsInteger,bAsInteger
a=InputBox<"輸入","a=">
b=InputBox<"輸入","b=">
Printa;"+";b;"=",a+b
A.b+a=25B.10+15=25C.a+b=25D.15+10=254、已知A,B,C,D是整型變量,且都已有互不相同的值,執(zhí)行語(yǔ)句"B=8:A=C:D=A:D=B"后,其值相等的變量是〔。
A.A,DB.A,CC.C,BD.B,A5、要交換變量A和B之值,應(yīng)使用的語(yǔ)句組是〔。
A.A=B:B=C:C=AB.C=A:A=B:B=C
C.A=B:B=AD.C=A:B=A:B=C6、有如下VisualBasic程序段:
m="VB"
n="is"
t="easy"
t=m+n+t
該程序段運(yùn)行后,變量t的值為。7、試編寫(xiě)一個(gè)程序,實(shí)現(xiàn)輸入一個(gè)四位數(shù)的數(shù),然后將它倒序輸出。第三節(jié)程序設(shè)計(jì)的分支結(jié)構(gòu)一、行If語(yǔ)句行If是指在一行中寫(xiě)完的If語(yǔ)句。其一般格式為:格式一:If條件Then語(yǔ)句功能:執(zhí)行這種形式的If語(yǔ)句時(shí),首先對(duì)條件進(jìn)行判斷。若條件成立,則執(zhí)行Then后面的語(yǔ)句;若條件不成立,則執(zhí)行If語(yǔ)句后繼程序行的語(yǔ)句格式二:If條件Then語(yǔ)句1Else語(yǔ)句2功能:執(zhí)行這種形式的語(yǔ)句時(shí),先進(jìn)行判斷。若條件成立,則執(zhí)行語(yǔ)句1;否則執(zhí)行語(yǔ)句2。例1:輸入三個(gè)不相同的數(shù),求出其中最小數(shù)。PrivateSubForm_Click<>DimaAsSingle,bAsSingle,cAsSingleDimMinAsSinglea=InputBox<"輸入a","輸入框">b=InputBox<"輸入b","輸入框">c=InputBox<"輸入c","輸入框">Ifa<bThenMin=aElseMin=bIfc<MinThenMin=cPrint"最小數(shù)=";MinEndSub二、塊If語(yǔ)句行If-then語(yǔ)句只能根據(jù)條件的真假是否執(zhí)行一條語(yǔ)句,當(dāng)Then部分和Else部分包含的內(nèi)容較多時(shí),則可選用"塊If語(yǔ)句"結(jié)構(gòu)。格式一:If條件Then語(yǔ)句塊EndIf例2:當(dāng)從輸入一個(gè)數(shù)時(shí),當(dāng)該數(shù)大于或等于60時(shí)顯示"及格",該數(shù)小于60時(shí)顯示"不及格"。PrivateSubCommand1_Click<>DimaAsSinglea=InputBox<"輸入a">Ifa>=60ThenPrint"及格"EndIfIfa<60ThenPrint"不及格"EndIfEndSub格式二:If條件Then語(yǔ)句塊1Else語(yǔ)句塊2EndIf例3:編寫(xiě)一程序,求一個(gè)一元二次方程ax2+bx+c=0的兩個(gè)根。PrivateSubForm_Click<>DimaAsSingle,bAsSingle,cAsSingleDimdAsSingle,x1AsSingle,x2AsSinglea=InputBox<"輸入a","輸入框">b=InputBox<"輸入b","輸入框">c=InputBox<"輸入c","輸入框">d=b2-4*a*cIFd>=0thenx1=<-b+sqr<d>>/2elsex1=<-b-sqr<d>>/2endifprint"x1=";x1,"x2=";x2EndSub練習(xí)題:1、以下是一段VisualBasic程序:IfI=1ThenX=X+1ElseX=X*2EndIf它的基本結(jié)構(gòu)屬于<>.A、選擇結(jié)構(gòu)B、循環(huán)結(jié)構(gòu)C、順序結(jié)構(gòu)D、樹(shù)型結(jié)構(gòu)2、下列程序段運(yùn)行后,變量Value的值是〔x=20Ifx>=10ThenValue=5*xElseValue=4*xEndIfA、100B、80C、90D、703、如要完成:從鍵盤(pán)輸入一個(gè)正整數(shù),判斷是否是奇數(shù),如是就在屏幕上顯示。比較好的算法是<>選項(xiàng):A、①輸人的數(shù)存人n變量②f=<n/2=Int<n/2>>③如果f中的值為T(mén)rue就顯示n中值B、①輸人的數(shù)存人n變量②f=<n/2=Int<n/2>>③如果f中的值為False就顯示n中值C、①輸人的數(shù)存人n變量②如果n/2=Int<n/2>成立,就顯示n中值D、①輸人的數(shù)存人n變量②如果n/2=Int<n/2>不成立,就顯示n中值4、下面是判斷變量x是不是能被5整除的偶數(shù)的程序,橫線上的邏輯表達(dá)式應(yīng)為<>PrivateSubcommandl_Click<>DimxAsIntegerx=Val<Text1.Text>If____=0ThenPrint"這個(gè)數(shù)是能被5整除的偶數(shù)"ElsePrint"這個(gè)數(shù)不是能被5整除的偶數(shù)"EndIf選項(xiàng):A、<xMod5>=0And<xMod2>=0B、xMod10=0C、xMod5=0D、xMod2=05、如要完成:從鍵盤(pán)輸入一個(gè)正整數(shù),判斷是否是偶數(shù),如是就在屏幕上顯示。比較好的算法是<>。選項(xiàng):A、①輸入的數(shù)存人n變量②f=<n/2=Int<n/2>>③如果f中的值為T(mén)rue就顯示n中值B、①輸入的數(shù)存人n變量②f=<n/2=Int<n/2>>③如果f中的值為False就顯示n中值C、①輸入的數(shù)存人n變量②如果n/2=Int<n/2>成立,就顯示n中值D、①輸入的數(shù)存人n變量②如果n/2=Int<n/2>不成立,就顯示n中值6、下列程序段運(yùn)行后,m的值為<>A=2:b=1:c=5IfA<bThenm=AElsem=bIfc<mThenm=c選項(xiàng):A、1B、2C、5D、提示錯(cuò)誤,無(wú)答案第四節(jié)程序設(shè)計(jì)的循環(huán)結(jié)構(gòu)一、For-Next循環(huán)For循環(huán)變量一般形式是:For循環(huán)變量=初值To終值Step循環(huán)變量增量循環(huán)體Nxt循環(huán)變量例1:求s=1+2+3+4+100PrivateSubForm_Click<>DimiAsIntegerDimsumAsIntegersum=0Fori=1To100step1sum=sum+i'循環(huán)體NextiPrint"sum=";sumEndSub循環(huán)變量的初值、終值、循環(huán)變量增量都是數(shù)值型。其中要重復(fù)執(zhí)行的操作稱為循環(huán)體,增量可正可負(fù),如果沒(méi)有設(shè)置Step,則增量的缺省值為1循環(huán)變量取初值;循環(huán)變量與終值比較,沒(méi)有超過(guò)終值轉(zhuǎn)3,否則循結(jié)束,接著執(zhí)行循環(huán)語(yǔ)句的后繼語(yǔ)句;執(zhí)行一次循環(huán)體循環(huán)變量增加一個(gè)增量重復(fù)步驟2~4。以上可以看出,For-Next循環(huán)變量是一種當(dāng)型循環(huán)。說(shuō)明For語(yǔ)句與Next語(yǔ)句必須成對(duì)出現(xiàn),而且它們當(dāng)中的"循環(huán)變量"必須是同一個(gè)變量,如上例中均為I。當(dāng)循環(huán)變量為正時(shí),循環(huán)變量超過(guò)終值,是指循環(huán)變量的值大于終值時(shí);若為負(fù),則是指循環(huán)變量的值小于終值。AAP入口出口例2:編寫(xiě)程序,使能打印下面所示的圖案。程序:PrivateSubForm_Click<>DimiAsIntegerDimjAsIntegerFori=1To6Forj=1ToiPrint"";NextjPrintNextiEndSub一個(gè)FOR循環(huán)里包含了另一個(gè)FOR,我們稱它為嵌套循環(huán)。練習(xí)題:1、閱讀如下程序,跟蹤程序的執(zhí)行過(guò)程,觀察變量A的值的變化,寫(xiě)出循環(huán)結(jié)束時(shí)變量A的值、循環(huán)次數(shù)和程序的運(yùn)行結(jié)果。privaatesubcommand1_click<>forA=1TO10printANextAEndSubprivaatesubcommand1_click<>ForA=1To100S=S+ANextAPint"S=";SEndSubprivaatesubcommand1_click<>ForA=100To1step-1S=S+ANextAPrint"s=";sEndSubprivaatesubcommand1_click<>ForA=1To10A=A+1PrintANextAEndSub2、閱讀下面程序,輸出結(jié)果是<>PrivateSubForm_Click<>DimiAsInteger:DimsAsIntegers=0Fori=1To5s=s+iNextiPrints,iEndSub選項(xiàng):A、15 6B、s=15i=6C、65D、s=6i=53、試編寫(xiě)一個(gè)程序,求出100以內(nèi)能被3整除的所有正整數(shù)。4、試編寫(xiě)一個(gè)程序,求出1*2*3……*100積。二、Do-Loop循環(huán)For-Next循環(huán)的次數(shù)是確定的,但是有的問(wèn)題只知道循環(huán)結(jié)束的條件,重復(fù)執(zhí)行的次數(shù)事先并不知道,這是需要Do-Loop循環(huán)格式一:DoWhile條件循環(huán)體Loop例3:求最大公約數(shù)PrivateSubCommand1_Click<>DimaAsIntegerDimbAsIntegerDimrAsIntegera=InputBox<"輸入a">b=InputBox<"輸入b">r=aModbDoWhiler<>0a=bb=rr=aModbLoopPrintbEndSub當(dāng)VB執(zhí)行DoWhile-Loop循環(huán)時(shí),先判斷指定的條件是否為真,若條件為真,執(zhí)行循環(huán)體,條件為假時(shí)退出循環(huán)。格式二:Do循環(huán)體LoopUntil條件這種循環(huán)的執(zhí)行過(guò)程如圖所示。進(jìn)入循環(huán)體后,先執(zhí)行一次循環(huán)體A,然后再檢查條件P是否成立。如果不成立,就重復(fù)執(zhí)行循環(huán)體A,直到條件P成立退出循環(huán)體。AAPN例4:如果我國(guó)人口每年以平均1.5%的速度增長(zhǎng),問(wèn)多少年后我國(guó)人口達(dá)到或超過(guò)15億?設(shè)現(xiàn)在人口為12.3億。PrivateSubForm_Click<>DimpAsSingleDimrAsSingleDimnAsIntegerp=1230000000r=0.015n=0Dop=p*<1+r>n=n+1LoopUntilp>=1500000000Printn;"年后","人口=";pEndSub練習(xí)題:1、在VB中,以下程序段:x=0DoWhilex<50x=<x+2>*<x+3>Loop執(zhí)行后,x的值為:<>.A、168B、50C、
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 北京市建筑裝飾合同范例
- 倆人合資購(gòu)房合同范例
- 2024年出口代理與分銷合同
- 三方合伙開(kāi)店協(xié)議書(shū)
- 2024供應(yīng)商合作協(xié)議
- 理論與應(yīng)用力學(xué)基礎(chǔ)知識(shí)單選題100道及答案解析
- 建筑企業(yè)食堂就餐管理辦法
- 河道疏浚塔吊租賃協(xié)議范本
- 環(huán)保設(shè)備招投標(biāo)管理規(guī)定
- 媒體采訪車司機(jī)操作規(guī)范
- 2024廣東佛山市三水海江怡樂(lè)建設(shè)投資有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 印刷服務(wù)印刷清單一覽表
- 2024年人事行政行業(yè)培訓(xùn)資料
- 2024年云南省第一次高中畢業(yè)生復(fù)習(xí)統(tǒng)一檢測(cè)(一模)文科綜合試卷(含官方答案)
- 《認(rèn)識(shí)隸書(shū)(一)》名師課件
- 食堂醇基燃料應(yīng)急預(yù)案
- 結(jié)構(gòu)設(shè)計(jì)通用規(guī)范(住建部2023年頒布)
- 2023學(xué)年完整公開(kāi)課版時(shí)行程問(wèn)題
- 性格測(cè)試98題-最符合和最不符合答案
- 交通運(yùn)輸系統(tǒng)安全生產(chǎn)治本攻堅(jiān)三年行動(dòng)方案
- 《平衡計(jì)分卡》課件
評(píng)論
0/150
提交評(píng)論