![《Visual Basic程序設(shè)計(jì)》課件1第2章_第1頁](http://file4.renrendoc.com/view12/M00/2D/1C/wKhkGWdhH1KAGhQUAACNe2OTuxU785.jpg)
![《Visual Basic程序設(shè)計(jì)》課件1第2章_第2頁](http://file4.renrendoc.com/view12/M00/2D/1C/wKhkGWdhH1KAGhQUAACNe2OTuxU7852.jpg)
![《Visual Basic程序設(shè)計(jì)》課件1第2章_第3頁](http://file4.renrendoc.com/view12/M00/2D/1C/wKhkGWdhH1KAGhQUAACNe2OTuxU7853.jpg)
![《Visual Basic程序設(shè)計(jì)》課件1第2章_第4頁](http://file4.renrendoc.com/view12/M00/2D/1C/wKhkGWdhH1KAGhQUAACNe2OTuxU7854.jpg)
![《Visual Basic程序設(shè)計(jì)》課件1第2章_第5頁](http://file4.renrendoc.com/view12/M00/2D/1C/wKhkGWdhH1KAGhQUAACNe2OTuxU7855.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第2章代碼基礎(chǔ)2.1數(shù)據(jù)類型
2.2常量
2.3變量
2.4內(nèi)部函數(shù)
2.5表達(dá)式
2.6語句
教學(xué)小結(jié)
習(xí)題
2.1數(shù)據(jù)類型
數(shù)據(jù)是程序處理的對象,一個(gè)數(shù)據(jù)必定屬于某一種數(shù)據(jù)類型。不同類型的數(shù)據(jù)有不同的操作,也決定了數(shù)據(jù)的取值范圍以及在計(jì)算機(jī)中的存儲形式。VB的數(shù)據(jù)類型如圖2-1所示,各數(shù)據(jù)類型的關(guān)鍵字、類型符、前綴、占字節(jié)數(shù)如表2-1所示。圖2-1VB的數(shù)據(jù)類型表2-1VB6.0的標(biāo)準(zhǔn)數(shù)據(jù)類型
1.?dāng)?shù)值(Numeric)數(shù)據(jù)類型
1)整型(Integer)
整型數(shù)用于表示不帶小數(shù)的數(shù),取值范圍為-32?768~32?767。一個(gè)整型數(shù)在內(nèi)存中用2個(gè)字節(jié)來存儲,整型數(shù)運(yùn)算速度快、精確。
2)長整型(Long)
長整型數(shù)用于表示比整型數(shù)范圍更大的整數(shù),取值范圍為-2?147?483?648~2?147?483?647,一個(gè)長整型數(shù)在內(nèi)存中用4個(gè)字節(jié)來存儲,長整型數(shù)運(yùn)算速度快、精確。
3)單精度型(Single)
單精度型數(shù)用于表示帶小數(shù)部分的實(shí)數(shù),有效位數(shù)為7位。一個(gè)單精度型數(shù)在內(nèi)存中用4個(gè)字節(jié)來存儲,單精度型數(shù)存儲運(yùn)算有誤差,運(yùn)算速度比整型數(shù)慢。
4)雙精度型(Double)
雙精度型數(shù)用于表示比單精度數(shù)范圍更大的小數(shù),有效位數(shù)為15位。一個(gè)雙精度型數(shù)在內(nèi)存中用8個(gè)字節(jié)來存儲,但雙精度型數(shù)存儲運(yùn)算有誤差,運(yùn)算速度較整型數(shù)慢。
5)貨幣型(Currency)
貨幣型數(shù)用于表示精度特別重要的數(shù)據(jù),如貨幣計(jì)算與定點(diǎn)計(jì)算。一個(gè)貨幣型數(shù)最多保留小數(shù)點(diǎn)右邊4位和小數(shù)點(diǎn)左邊15位。
6)字節(jié)型(Byte)
字節(jié)型數(shù)主要用于存儲無符號整數(shù),范圍為0~255。不能表示負(fù)數(shù)。
2.字符(String)數(shù)據(jù)類型
字符型數(shù)據(jù)用來存儲ASCII字符或中文漢字等符號。它在內(nèi)存中占有多少個(gè)字節(jié)數(shù),與數(shù)據(jù)類型的定義格式有關(guān)。若為定長字符型數(shù)據(jù),則占有確定大小的字節(jié)數(shù);若為變長字符型數(shù)據(jù),則占有的字節(jié)數(shù)與實(shí)際存儲的字符個(gè)數(shù)有關(guān)。
3.布爾(Boolean)數(shù)據(jù)類型
布爾型數(shù)據(jù)用于表示邏輯判斷的結(jié)果,只有True和False兩個(gè)值,一個(gè)布爾型數(shù)據(jù)用2個(gè)字節(jié)存儲,屬于特殊的整型數(shù)。
布爾型數(shù)據(jù)可以當(dāng)整型數(shù)據(jù)使用,規(guī)則是:True轉(zhuǎn)換為-1,F(xiàn)alse轉(zhuǎn)換為0。其他類型數(shù)據(jù)也可當(dāng)成布爾型數(shù)據(jù)使用,規(guī)則是:非0為True,0為False。
4.日期(Date)數(shù)據(jù)類型
日期型數(shù)據(jù)類型用來存儲日期和時(shí)間,日期范圍為公元100年1月1日~9999年12月31日,時(shí)間范圍為00:00:00~23:59:59。日期型數(shù)據(jù)按8字節(jié)存儲,是一種特殊的雙精度型數(shù)據(jù)。
5.變體(Variant)數(shù)據(jù)類型
變體型數(shù)據(jù)用于存儲一些不確定類型的數(shù)據(jù),它可以存儲除了固定長度字符串類型以及用戶自定義類型以外的上述任何一種數(shù)據(jù)類型。在VB中,所有未定義而直接使用的變量默認(rèn)的數(shù)據(jù)類型為變體型。
6.對象(Object)數(shù)據(jù)類型
對象數(shù)據(jù)類型用于表示應(yīng)用程序中的對象,如文本框、窗體等。用4個(gè)字節(jié)存儲。
2.2常量
1.直接常量
直接常量指的是程序代碼中,以直接明顯的形式給出的數(shù)據(jù)。根據(jù)常量的數(shù)據(jù)類型分為數(shù)值型常量、字符型常量、日期型常量和布爾型常量。
1)數(shù)值型常量
數(shù)值(Numeric)型常量包括了Integer、Long、Single、Double、Currency和Byte六種類型,學(xué)習(xí)時(shí)除了搞清楚各種數(shù)據(jù)類型的關(guān)鍵字、類型符、前綴、占字節(jié)數(shù)、范圍(詳見表2-1)外,還需清楚數(shù)據(jù)的表示形式。一般情況下,數(shù)值型數(shù)據(jù)都使用十進(jìn)制數(shù)表示,但也可使用十六進(jìn)制數(shù)(以?&H引導(dǎo))和八進(jìn)制數(shù)(以?&?或?&O引導(dǎo))表示。如?&O123、&H1234等。
整型數(shù)的表示形式:±?n[%],n是由0~9構(gòu)成的整數(shù),%?是整型的類型符,可省略。例如,123、-123、+123、123%?均表示整型數(shù)。
長整型數(shù)的表示形式:±?n&,n是由0~9構(gòu)成的整數(shù),&?是長整型的類型符。例如,123&、-123&均表示長整型數(shù)。單精度數(shù)的表示形式:±?n.n、±?n!、±?nE?±?m、±?n.nE?±?m,即分別以小數(shù)形式、整數(shù)加單精度類型符、指數(shù)形式表示,其中n和m為0~9構(gòu)成的整數(shù)。例如,123.45、123.45!、0.12345E+3等都表示同值的單精度數(shù)。
雙精度數(shù)的表示形式:±?n.n#、±?n#、±?nD?±?m、±?n.nD?±?m#,即分別以小數(shù)形式、整數(shù)加雙精度類型符、指數(shù)形式表示,其中n和m為0~9構(gòu)成的整數(shù)。例如,123.45#、0.12345D+3都表示同值的雙精度數(shù)。
貨幣型的表示形式:在數(shù)字后面加?@?符號。例如,123.45@、1234@。
2)字符型常量
字符型常量是用雙引號引住的一系列可打印的ASCII字符或中文漢字,也稱為字符串。雙引號稱為字符串的定界符。如?"123"、"sum="?都是字符型常量。當(dāng)雙引號中沒有任何字符時(shí)稱為空字符串;當(dāng)雙引號中字符為空格時(shí),這種字符型稱為空格字符串。這兩種字符串是有區(qū)別的,空字符串的長度為0,空格字符串的長度為其空格數(shù)。
3)日期型常量
日期型數(shù)據(jù)的表示形式有兩種:一種是任何形式上可被認(rèn)為是日期和時(shí)間的字符,只要用“#”括起來。如:
#11/18/1999# '表示1999年11月18日
#1999-11-18# '表示1999年11月18日
#11/18/199910:28:56pm# '表示1999年11月18日下午10:28:56
另一種是以數(shù)字序列表示,在這種情況下,整數(shù)部分表示天數(shù),小數(shù)部分表示時(shí)間。0表示1899年12月30日,正數(shù)表示這個(gè)日期之后的日期,如2.5表示1900年1月1日12:00:00;負(fù)數(shù)表示這個(gè)日期之前的日期,如-2.5表示1899年12月28日12:00:00,這種方式用得很少。
4)布爾型常量
布爾型常量只有True(真)和False(假)兩個(gè)值。
2.符號常量
在程序中要多次使用同一個(gè)常數(shù),例如π?(3.141?592?6),如果每次用到π時(shí)都重復(fù)錄入3.1415926是不方便的。VB允許用一個(gè)符號來代表一個(gè)常量,這個(gè)符號稱為符號常量,其定義格式為:
Const符號常量名[As<類型>]=<表達(dá)式>
其中:符號常量的命名規(guī)則與變量的命名規(guī)則相同;<類型>用來聲明常量類型,為表2-1中的任一數(shù)據(jù)類型;<表達(dá)式>由數(shù)值常量、字符串等常量及運(yùn)算符組成,可以包含前面定義過的常量,但不能使用函數(shù)調(diào)用,即表達(dá)式中不能出現(xiàn)函數(shù)。可以看出,第一種使用了符號常量,后兩種一個(gè)使用了RGB函數(shù),另一個(gè)使用了直接常量。相比較可以看出:使用符號常量要比使用函數(shù)或直接常量更便于記憶。
其實(shí),VB提供的符號常量還有很多,有些會(huì)在以后的學(xué)習(xí)中逐漸掌握。可借助“對象瀏覽器”查看VB提供的符號常量。方法是:選擇“視圖”→“對象瀏覽器”,打開“對象瀏覽器”窗口,如圖2-2所示。圖2-2VB“對象瀏覽器”窗口
2.3變量
2.3.1變量命名
VB6.0中給變量命名時(shí)應(yīng)遵守如下原則:
(1)變量名以字母、漢字開始,后面可跟字母、漢字、數(shù)字或下劃線,長度不超過255個(gè)字符。
(2)變量名不能使用VB的關(guān)鍵字命名。如For、Else等。
(3)變量名不區(qū)分大小寫,例如,XYZ、xyz、Xyz、xYz均表示同一個(gè)變量。
給變量命名時(shí)應(yīng)注意以下事項(xiàng):
(1)變量名盡可能簡單明了、見名知義。如用sum(或s)代表求和,用Difference(或d)代表求差等。變量名太長會(huì)不便于閱讀和書寫。
(2)變量名中不能出現(xiàn)句點(diǎn)“.”、空格或嵌入“!”、“#”、“@”、“$”、“%”、“&”等字符。因?yàn)檫@些符號在VB中有特殊的用途,比如“!”就是單精度數(shù)據(jù)類型說明符。
(3)盡量采用VB建議的變量名前綴或后綴的約定來命名,以便區(qū)分變量的類型。如intMax,strName。2.3.2聲明變量
在程序中,使用變量前一般應(yīng)先聲明變量及其數(shù)據(jù)類型,以便系統(tǒng)為變量分配存儲空間。VB中用以下方式聲明變量及其類型。
1.顯式聲明
所謂顯式聲明,就是用聲明語句來定義變量及類型。通常有兩種格式:
格式一:
Dim<變量名>[As<類型>]
格式二:
Dim<變量名>尾符
2.隱式聲明
所謂隱式聲明,是指在程序中直接使用未聲明的變量,變量類型默認(rèn)為Variant型。
采用隱式聲明似乎很方便,但會(huì)遇到因?yàn)樽兞棵斎脲e(cuò)誤,導(dǎo)致程序運(yùn)行結(jié)果不正確的錯(cuò)誤,這種錯(cuò)誤初學(xué)者還難以查找;另外,過多使用Variant型變量會(huì)降低程序運(yùn)行速度。因此,使用變量時(shí)最好養(yǎng)成先聲明后使用的良好習(xí)慣。
值得一提的是,VB中可以強(qiáng)制規(guī)定每個(gè)變量都要經(jīng)過顯式聲明才可使用,即強(qiáng)制顯式聲明,當(dāng)遇到一個(gè)未經(jīng)聲明的變量時(shí),會(huì)自動(dòng)發(fā)出錯(cuò)誤警告。為實(shí)現(xiàn)強(qiáng)制顯式聲明,可在窗體的通用聲明段或標(biāo)準(zhǔn)模塊的聲明段中,加入強(qiáng)制聲明語句:
OptionExplicit
強(qiáng)制聲明語句也可以執(zhí)行“工具”菜單中的“選項(xiàng)”功能項(xiàng),單擊“編輯器”選項(xiàng)卡,選擇“要求變量聲明”復(fù)選框,如圖2-3所示。圖2-3強(qiáng)制顯式聲明變量窗口 2.4內(nèi)部函數(shù)
在程序設(shè)計(jì)中常常要進(jìn)行一些專門的運(yùn)算,如數(shù)值計(jì)算中求sinx、cosx、|?x?|?等,VB提供了一系列函數(shù)來完成這些運(yùn)算,用戶不必編寫完成這些功能的程序代碼,而只需給出函數(shù)名以及參數(shù)(自變量),就可以返回一個(gè)結(jié)果值(函數(shù)值),這樣極大地方便了用戶,提高了編程的效率。
內(nèi)部函數(shù)的調(diào)用格式:
函數(shù)名([參數(shù)表])
2.4.1數(shù)學(xué)運(yùn)算函數(shù)
數(shù)學(xué)運(yùn)算函數(shù)用于各種數(shù)學(xué)運(yùn)算,常用數(shù)學(xué)運(yùn)算函數(shù)如表2-2所示。表2-2VB常用數(shù)學(xué)運(yùn)算函數(shù)為了便于學(xué)習(xí),對數(shù)學(xué)運(yùn)算函數(shù)作如下說明:
(1)函數(shù)名是VB的關(guān)鍵字,調(diào)用函數(shù)時(shí)一定要書寫正確,其“參數(shù)”應(yīng)在函數(shù)有意義的區(qū)間內(nèi)取值。如平方根函數(shù)Sqr(x)中的x不能為負(fù),否則會(huì)出現(xiàn)如圖2-4所示錯(cuò)誤提示。圖2-4非法調(diào)用函數(shù)時(shí)的出錯(cuò)提示
(2)三角函數(shù)中,參數(shù)x應(yīng)為弧度,遇到角度時(shí)必須轉(zhuǎn)換為弧度。sin(45°)應(yīng)寫成“Sin(3.14/180*45)”,這里π取3.14。
(3)?Int(x)為取整函數(shù),取不大于x的最大的整數(shù)。如“Int(-6.7)”結(jié)果為-7,“Int(6.7)”結(jié)果為6。Fix(x)為截尾函數(shù),如“Fix(-6.7)”結(jié)果為-6,“Fix(6.7)”結(jié)果為6。
(4)?Rnd()產(chǎn)生0~1之間的隨機(jī)小數(shù),調(diào)用時(shí)可以為Rnd()、Rnd等形式。該函數(shù)與取整函數(shù)或截尾函數(shù)配合,可產(chǎn)生任意范圍內(nèi)的隨機(jī)整數(shù)。2.4.2字符串操作函數(shù)
VB具有強(qiáng)大的字符串處理能力,常用的字符串操作函數(shù)如表2-3所示。表2-3VB字符串操作函數(shù)2.4.3轉(zhuǎn)換函數(shù)
常用的VB轉(zhuǎn)換函數(shù)如表2-4所示。表2-4VB轉(zhuǎn)換函數(shù)2.4.4格式輸出函數(shù)
格式輸出函數(shù)Format可以使數(shù)值或日期按指定的格式輸出,一般格式為:
Format(數(shù)值或日期表達(dá)式,格式字符串)
該函數(shù)的功能是:按“格式字符串”指定的格式輸出“數(shù)值或日期表達(dá)式”。如果省略“格式字符串”,則Format函數(shù)的功能與Str函數(shù)基本相同,但把正數(shù)轉(zhuǎn)換成字符串時(shí),Str函數(shù)在字符串前留有一個(gè)空格,而Format函數(shù)則不留空格。在Format函數(shù)中,“格式字符串”包括的格式說明字符如表2-5所示。表2-5格式說明字符及其作用
(1)“#”表示一個(gè)數(shù)字位?!?”的個(gè)數(shù)決定了顯示區(qū)段的長度,如果要顯示的數(shù)值位數(shù)小于格式字符串指定的區(qū)段長度,則該數(shù)值靠區(qū)段的左端顯示,多余的位不補(bǔ)0;如果要顯示的數(shù)值的位數(shù)大于指定的區(qū)段長度,則數(shù)值照原樣顯示。
(2)“0”與“#”功能相同,只是多余的位以“0”補(bǔ)齊。
(3)“.”顯示小數(shù)點(diǎn)位置,小數(shù)部分多余的數(shù)字按四舍五入處理。
(4)“,”用于從小數(shù)點(diǎn)左邊第一位開始,每3位用一個(gè)逗號分開。逗號可以放在小數(shù)點(diǎn)左邊除頭部和緊靠小數(shù)點(diǎn)位以外的任何位置。
(5)“%”通常放在格式字符串尾部,用來輸出百分號,同時(shí)對數(shù)值乘100。
(6)“E+/E-”用于將數(shù)值按指數(shù)形式輸出,兩者的作用基本相同。
(7)“其他符號”在格式字符串中被原樣輸出。2.4.5日期和時(shí)間函數(shù)
表2-6列出了常用的日期和時(shí)間函數(shù)及其功能。表2-6日期和時(shí)間函數(shù)2.4.6對話框函數(shù)
VB的對話框函數(shù)用于獲得用戶的輸入信息或給用戶提示信息,常用的對話框函數(shù)有InputBox和MsgBox。
1.InputBox函數(shù)
InputBox函數(shù)可以彈出一個(gè)對話框來接收用戶從鍵盤輸入的值,其調(diào)用格式為:
變量=InputBox(提示信息[,標(biāo)題][,默認(rèn)值][,x坐標(biāo)][,y坐標(biāo)])
執(zhí)行該語句,程序運(yùn)行時(shí)會(huì)出現(xiàn)如圖2-5所示的對話框窗口。輸入內(nèi)容后單擊“確定”按鈕或按回車鍵,輸入的內(nèi)容就賦給變量x。圖2-5InputBox應(yīng)用示例
2.MsgBox函數(shù)
使用過Windows及其應(yīng)用軟件的人都應(yīng)該熟悉如圖2-6所示的消息框,這在VB中可用MsgBox函數(shù)來實(shí)現(xiàn)。圖2-6Word中的保存文件消息框
MsgBox函數(shù)的調(diào)用格式如下:
變量=MsgBox(提示[,按鈕][,標(biāo)題])
其中:
(1)變量:用于指定接收函數(shù)的返回值。MsgBox函數(shù)的返回值是一個(gè)整數(shù),因此變量通常為整型變量。
(2)提示與標(biāo)題:意義同InputBox函數(shù)。
(3)按鈕:整型表達(dá)式,決定消息框中按鈕的數(shù)目、類型及出現(xiàn)在消息框上的圖標(biāo)類型。其設(shè)置如表2-7所示。表2-7消息框中“按鈕”的設(shè)置值及意義變量x用于記錄用戶按了消息框中哪一個(gè)按鈕,不同的按鈕返回的值不同。各個(gè)按鈕的返回值如表2-8所示。表2-8MsgBox函數(shù)按鈕及其返回值對照表 2.5表達(dá)式
2.5.1算術(shù)表達(dá)式
算術(shù)表達(dá)式也稱為數(shù)值型表達(dá)式,由算術(shù)運(yùn)算符、數(shù)值型常量、變量、函數(shù)和圓括號組成,其運(yùn)算結(jié)果為一個(gè)數(shù)值。
1.算術(shù)運(yùn)算符
VB的算術(shù)運(yùn)算符如表2-9所示。表2-9VB的算術(shù)運(yùn)算符
2.算術(shù)表達(dá)式的書寫規(guī)則
算術(shù)表達(dá)式與數(shù)學(xué)中的代數(shù)式寫法是有區(qū)別的,在書寫時(shí)應(yīng)特別注意以下幾點(diǎn):
(1)所有字符必須寫在同一行上,遇到分式寫成除法的形式,上標(biāo)寫成乘方或指數(shù)形式,下標(biāo)寫成下標(biāo)變量的形式。
(2)一律用小括號“(?)”,并且必須配對。
(3)乘號不能省略。
(4)盡量使用標(biāo)準(zhǔn)函數(shù)。
VB算術(shù)表達(dá)式書寫實(shí)例如表2-10所示。表2-10VB算術(shù)表達(dá)式書寫實(shí)例
3.不同數(shù)據(jù)類型的轉(zhuǎn)換
如果參與運(yùn)算的兩個(gè)數(shù)值型數(shù)據(jù)為不同類型,VB系統(tǒng)會(huì)自動(dòng)將它們轉(zhuǎn)化為同一類型,然后進(jìn)行運(yùn)算。轉(zhuǎn)換的規(guī)律是將范圍小的類型轉(zhuǎn)換成范圍大的類型,即
Integer→Long→Single→Double
但當(dāng)Long型與Single型數(shù)據(jù)運(yùn)算時(shí),結(jié)果為Double型。
4.算術(shù)運(yùn)算符的優(yōu)先級
在一個(gè)表達(dá)式中可能包括多個(gè)運(yùn)算符,這就要確定各運(yùn)算符的優(yōu)先順序問題。算術(shù)運(yùn)算符的優(yōu)先順序可表示如下:2.5.2字符串表達(dá)式
1.字符串運(yùn)算符
字符串運(yùn)算符有“+”和“&”兩個(gè),它們均可實(shí)現(xiàn)將兩個(gè)字符串首尾相連。使用“&”時(shí)應(yīng)注意,其兩側(cè)都應(yīng)加空格。
2.字符串表達(dá)式
字符串表達(dá)式由字符串運(yùn)算符連接起來的字符串常量、變量、函數(shù)所構(gòu)成,其運(yùn)算結(jié)果可能為數(shù)值型,也可能為字符型。
3.運(yùn)算過程中的類型轉(zhuǎn)化
1)“+”連接符
對于“+”連接符,當(dāng)兩邊的操作數(shù)均為字符型時(shí),做字符串連接運(yùn)算;當(dāng)兩邊的操作數(shù)均為數(shù)值型時(shí),做算術(shù)運(yùn)算;當(dāng)一個(gè)為數(shù)字字符串,另一個(gè)為數(shù)值型,則自動(dòng)將數(shù)字字符串轉(zhuǎn)化為數(shù)值,然后做算術(shù)運(yùn)算;當(dāng)一個(gè)為非數(shù)字字符串,另一個(gè)為數(shù)值型,則會(huì)彈出對話框,提示出錯(cuò)信息為“類型不匹配”。
2)“&”連接符
對于“&”連接符,無論連接符兩旁是字符型數(shù)據(jù)還是數(shù)值型,進(jìn)行連接操作之前,系統(tǒng)先將操作數(shù)轉(zhuǎn)換成字符型,然后再連接。2.5.3關(guān)系表達(dá)式
關(guān)系表達(dá)式用于對兩個(gè)同類型表達(dá)式的值進(jìn)行比較,比較的結(jié)果為布爾值True(真)或False(假)。如a>b、4>7、"ab"<"abc"?都是合法的關(guān)系表達(dá)式。由于關(guān)系表達(dá)式常用來描述一個(gè)給定條件,故也稱為條件表達(dá)式。
1.關(guān)系運(yùn)算符
VB提供的常用的關(guān)系運(yùn)算符有6種,如表2-11所示。表2-11VB中常用的關(guān)系運(yùn)算符
2.表達(dá)式組成
關(guān)系表達(dá)式的格式為:
<表達(dá)式1><關(guān)系運(yùn)算符><表達(dá)式2>
3.比較規(guī)則
比較規(guī)則如下:
(1)數(shù)值型數(shù)據(jù)按其數(shù)值大小進(jìn)行比較。
(2)日期型數(shù)據(jù)將日期看成“yyyymmdd”格式的8位整數(shù),按數(shù)值大小比較。
(3)漢字字符按其機(jī)內(nèi)碼的大小比較。
(4)對于單個(gè)字符是按其ASCII碼值大小比較的。
(5)對于字符串的比較,是將這兩個(gè)字符串從左到右逐個(gè)字符相比,如果兩個(gè)字符串長度相等,對應(yīng)位置的字符也完全相同,則這兩個(gè)字符串相等;否則,以第一次出現(xiàn)的不同字符的比較結(jié)果為準(zhǔn)。2.5.4布爾表達(dá)式
關(guān)系表達(dá)式只能表示一個(gè)條件,即簡單條件,如“x>0”代表了數(shù)學(xué)表達(dá)式“x>0”,但時(shí)常會(huì)遇到一些比較復(fù)雜的條件,如“0<x<5”,它實(shí)際上是“x>0”和“x<5”兩個(gè)簡單條件的組合,可以把它看做一個(gè)“復(fù)合”條件。布爾表達(dá)式就是用來表示“非……”、“不但……而且……”、“或……或……”等復(fù)雜條件的。
1.布爾運(yùn)算符
布爾運(yùn)算符用來對布爾型數(shù)據(jù)進(jìn)行各種布爾操作的運(yùn)算,VB中常用的布爾運(yùn)算符如表2-12所示。表2-12VB常用的布爾運(yùn)算符
2.布爾表達(dá)式
布爾表達(dá)式的一般格式為:
<布爾量><布爾運(yùn)算符><布爾量>
VB中的布爾量可為布爾常量、布爾變量、布爾函數(shù)和關(guān)系表達(dá)式四種。布爾表達(dá)式的運(yùn)算結(jié)果仍為布爾型數(shù)據(jù),即True或False。
設(shè)A和B是兩個(gè)布爾型數(shù)據(jù),對它們進(jìn)行布爾運(yùn)算后返回的結(jié)果如表2-13所示。表2-13布爾運(yùn)算真值表
3.布爾表達(dá)式的運(yùn)算順序
一個(gè)布爾表達(dá)式中可能包含有算術(shù)運(yùn)算、關(guān)系運(yùn)算和布爾運(yùn)算,例如:
a<0Anda+c>b+dOrNotTrue
它們的運(yùn)算次序如何呢?VB規(guī)定按照以下次序進(jìn)行運(yùn)算:
(1)先計(jì)算算術(shù)表達(dá)式的值,運(yùn)算順序參考本章2.5.1節(jié)。
(2)再求關(guān)系表達(dá)式的值,運(yùn)算順序按照從左向右運(yùn)算的原則。
(3)最后進(jìn)行布爾運(yùn)算,運(yùn)算順序?yàn)镹ot→And→Or。
2.6語句
2.6.1?VB語句的書寫規(guī)則
在學(xué)習(xí)程序設(shè)計(jì)之前,必須了解VB語句的書寫規(guī)則,這樣寫出的程序既能被VB系統(tǒng)正確地識別,又能增加程序的可讀性。
VB語句的書寫規(guī)則如下:
(1)一行可寫多條語句,語句間用“?:?”號隔開。
(2)一條語句可分為若干行書寫,但需在行末加續(xù)行符“?_”(一個(gè)空格和一個(gè)下劃線組成)。
(3)一個(gè)語句最多允許書寫255個(gè)字符。
(4)變量名不區(qū)分大小寫。2.6.2賦值語句
使用賦值語句可以把指定的值賦給某個(gè)變量,或修改對象的某個(gè)屬性值。賦值語句有如下兩種格式:
格式一:
變量名=表達(dá)式
格式二:
對象名.屬性名=表達(dá)式
其中,“=”是賦值號。格式一用于給變量賦值,格式二用于修改對象的屬性值。
1.語句格式的問題
(1)賦值號左邊只能是變量名,不能是函數(shù)或表達(dá)式。
(2)“=”為賦值號,而不是數(shù)學(xué)上的等號。
(3)不能在同一個(gè)賦值語句中為多個(gè)變量賦值。
(4)變量之間的賦值與交換變量值不是一回事情。
2.數(shù)據(jù)類型的問題
賦值號左邊變量類型與右邊表達(dá)式類型不一致的情況,通常有如下幾種情形:
(1)兩邊均為數(shù)值型,而類型不同時(shí),以變量類型為準(zhǔn)。
(2)當(dāng)變量為數(shù)值型,而表達(dá)式為數(shù)字字符串,則自動(dòng)轉(zhuǎn)換成數(shù)值型再賦值。當(dāng)表達(dá)式中有非數(shù)字字符或是空字符串時(shí),會(huì)出現(xiàn)“類型不匹配”的提示信息。
(3)當(dāng)變量為數(shù)值型,而表達(dá)式為布爾數(shù)據(jù)型時(shí),VB系統(tǒng)自動(dòng)將True轉(zhuǎn)換成-1,F(xiàn)alse轉(zhuǎn)換成0;反之,將數(shù)值型數(shù)據(jù)賦給布爾型變量時(shí),VB系統(tǒng)自動(dòng)將非0轉(zhuǎn)換為True,0轉(zhuǎn)換成False。
(4)任何非字符型賦值給字符型變量,均自動(dòng)轉(zhuǎn)換為字符型。2.6.3結(jié)束語句
格式:
End
作用:通常用來結(jié)束一個(gè)程序的執(zhí)行。
End語句提供了一種強(qiáng)行結(jié)束程序的方法。
2.6.4注釋語句
使用注釋是提高程序可讀性的好方法。通常用注釋語句來說明某段代碼的作用或聲明某個(gè)變量的含義。對語句進(jìn)行注釋的方法是以Rem或英文方式下的單引號(?'?)開頭,后跟被注釋語句。
教學(xué)小結(jié)
本章講述了數(shù)據(jù)類型、變量及其定義、函數(shù)及其使用、表達(dá)式及其寫法、語句及格式等問題,這些可能會(huì)讓初學(xué)者感到抽象而不可理解,這是非常正常的現(xiàn)象,相信隨著學(xué)習(xí)的不斷深入,上述內(nèi)容會(huì)逐漸地清晰和明朗,希望讀者努力掌握,因?yàn)檫@些是VB程序設(shè)計(jì)的基礎(chǔ)。
(1)?VB有豐富的數(shù)據(jù)類型、內(nèi)部函數(shù)和多種形式的表達(dá)式,要做到全部熟記并掌握是有一定的困難。建議:數(shù)據(jù)類型先重點(diǎn)掌握數(shù)字型、字符型等常用數(shù)據(jù)類型;內(nèi)部函數(shù)以數(shù)學(xué)運(yùn)算函數(shù)和字符函數(shù)為主;表達(dá)式應(yīng)先掌握算術(shù)表達(dá)式,關(guān)系表達(dá)式和布爾表達(dá)式還可在控制結(jié)構(gòu)中深入學(xué)習(xí)。
(2)賦值語句是最常用的語句之一,改變變量的值、對象屬性的值均可通過賦值語句實(shí)現(xiàn);END語句是程序運(yùn)行結(jié)束的出口語句;注釋語句有利于提高程序的可閱讀性,初學(xué)者一開始就應(yīng)養(yǎng)成良好的程序書寫習(xí)慣。
(3)建議可在立即執(zhí)行窗口中使用Print輸出函數(shù)的值、表達(dá)式的運(yùn)算結(jié)果,以便熟記函數(shù)的調(diào)用格式和表達(dá)式的運(yùn)算等。
習(xí)題
一、選擇題
1.下面的
是合法的變量名。
(A)?X_yz (B)?123abc
(C)?Integer (D)?X-Y
2.下面的
是合法的字符串常量。
(A)?ABC$ (B)?"ABC"
(C)‘ABC’ (D)?ABC
3.下面的
是合法的單精度型變量。
(A)
num! (B)
sum%
(C)?xinte$ (D)?mm#
4.表達(dá)式16/4-2^5*8/4Mod5\2的值為
。
(A)?14 (B)?4
(C)?20 (D)以上均錯(cuò)
5.與數(shù)學(xué)表達(dá)式對應(yīng),VB不正確的表達(dá)式是
。
(A)?a*b/(3*c*d) (B)?a/3*b/c/d
(C)?a*b/3/c/d (D)?a*b/3*c*d
6.用X、Y、Z分別表示三角形的三條邊,條件“三角形任意兩邊之和大于第三邊”的布爾表達(dá)式可以用
表示。
(A)
X+Y>ZAndX+Z>YAndY+Z>X
(B)
X+Y<ZOrX+Z<YOrY+Z<X
(C)
Not(X+Y<ZOrX+Z<YOrY+Z<X)
(D)
X+Y>=ZOrX+Z>=YOrY+Z>=X
7.Int(198.555*100+0.5)/100的值是
。
(A)?198 (B)?199.6
(C)?198.56 (D)?200
8.已知A$="12345678",則表達(dá)式Val(Left$(A$,4)+Mid(A$,4,2))的值為
。
(A)?123456 (B)?123445
(C)?8 (D)?6
9.表達(dá)式LenB("123程序設(shè)計(jì)ABC")的值是
。
(A)?10 (B)?14
(C)?20 (D)?17
10.表達(dá)式123&Mid("123456",3,2)的值是
。
(A)
"1234" (B)?123
(C)?"12334" (D)?157
11.設(shè)a=2,b=3,c=4,d=5,表達(dá)式3>2*bora=candb<>corc>d的值是
。
(A)?-1 (B)?1
(C)?True (D)?False
12.如果將布爾常量值True賦給一個(gè)整型變量,則整型變量的值為
。
(A)?0 (B)?-1
(C)?True (D)?False
13.定義變量但未賦值時(shí),數(shù)值型變量的值為
,字符串變量的值為
。
(A)?0 (B)空串""
(C)?Null (D)沒任何值
14.假設(shè)變量BoolVar是一個(gè)布爾型變量,則下面正確的賦值語句是
。
(A)?BoolVar='True' (B)?BoolVar=“True”
(C)?BoolVar=#True# (D)?BoolVar=3<4
15.表達(dá)式Val("123.4e-2")的值為
。
(A)?123.4e-2 (B)?123.4
(C)?1.234 (D)非法表達(dá)式
16.用十六進(jìn)制表示VisualBasic的整型常數(shù)時(shí),前面要加上的符號是
。
(A)?&H (B)?&O
(C)?H (D)?O
17.?dāng)?shù)學(xué)關(guān)系3≤?x?<10表示成正確的VB表達(dá)式為__
____。
(A)?3<=x<10 (B)?3<=xANDx<10
(C)?x>=3ORx<10 (D)?3<=xAND<10
18.\、/、Mod、*?這四個(gè)算術(shù)運(yùn)算符中,優(yōu)先級別最低的是
。
(A)?\ (B)?/
(C)?Mod (D)?*
19.下列邏輯表達(dá)式的值為真的是
。
(A)?"A">"a" (B)?"9">"a"
(C)?"That">"Thank" (D)?12>12.1
20.一元二次方程ax2?+?bx?+?c?=?0有實(shí)根的條件是a?≠?0,且b2-4ac?≥?0,表示該條件的布爾表達(dá)式是
。
(A)?a<>0Andb*b-4*a*c≥0
(B)?a<>0Orb*b-4*a*c≥0
(C)?a<>0Andb*b-4*a*c>=0
(D)?a<>0Orb*b-4*a*c>=0
21.PrintFormat("HELLO","<")?的輸出結(jié)果是
。
(A)?HELLO (B)?hello
(C)?He (D)?he
22.若Y1="welcome!",表達(dá)式Left(Y1,Len(Y1)-1)的值是
。
(A)?"welcome!" (B)?"w"
(C)?"welcome" (D)?""
23.函數(shù)Mid("123456789",3,4)的值是
。
(A)?"3456" (B)?"456"
(C)?3456 (D)?456
24.表達(dá)式Int(5*Rnd+1)*Int(5*Rnd-1)?值的范圍是
。
(A)?[0,15] (B)?[-1,15]
(C)?[-4,15] (D)?[-5,15]
25.已知a="12345678",則表達(dá)式Left(a,4)+Mid(a,4,2)的值是
。
(A)?123456 (B)?"123445"
(C)?123445 (D)?1279
26.表達(dá)式Instr("全國計(jì)算機(jī)等級考試","等級")的值是
。
(A)?4 (B)?5
(C)?6 (D)?7
27.表達(dá)式Val("1234abc"+"567")的值是
。
(A)?1234abc567 (B)?1234567
(C)?1234 (D)?abc
28.以下語句的輸出結(jié)果是
。
PrintFormat(12345.6,"000,000.00")
(A)?012,345.60 (B)?12,345.60
(C)?12,345.6 (D)?012,345.6
29.可以同時(shí)刪除字符串前面和尾部空白的函數(shù)是
。
(A)?Trim (B)?Rtrim
(C)?Mid (D)?Ltrim
30.在VisualBasic中,如果一個(gè)變量未作類型聲明而直接使用,則該變量的數(shù)據(jù)類型是
。
(A)字符型 (B)數(shù)值型
(C)變體型 (D)可以是任何類型
31.下面關(guān)于InputBox函數(shù)的敘述,不正確的是
。
(A)在默認(rèn)情況下,InputBox的返回值是一個(gè)字符串
(B)?InputBox函數(shù)不可以沒有參數(shù)
(C)執(zhí)行一次InputBox函數(shù)可以輸入多個(gè)數(shù)值
(D)執(zhí)行一次InputBox函數(shù)時(shí),不
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 自考《00259 公證與律師制度》近年考試真題庫(含答案)
- 極大規(guī)模集成電路用拋光硅片生產(chǎn)線項(xiàng)目可行性研究報(bào)告寫作模板-申批備案
- 2025年江門職業(yè)技術(shù)學(xué)院高職單招語文2018-2024歷年參考題庫頻考點(diǎn)含答案解析
- 2025年江西建設(shè)職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試近5年??及鎱⒖碱}庫含答案解析
- 《中華瑰寶推拿保健》課件
- 10kV配電站房工程建設(shè)方案的設(shè)備選型與布局
- 幼兒園中班講故事活動(dòng)策劃方案五篇
- 幼兒園植物活動(dòng)策劃方案模板五篇
- 委托軟件開發(fā)合同模板
- 照管員聘用合同
- 長江委水文局2025年校園招聘17人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- IF鋼物理冶金原理與關(guān)鍵工藝技術(shù)1
- JGJ46-2024 建筑與市政工程施工現(xiàn)場臨時(shí)用電安全技術(shù)標(biāo)準(zhǔn)
- 銷售提成對賭協(xié)議書范本 3篇
- 《社區(qū)康復(fù)》課件-第九章 言語障礙患者的社區(qū)康復(fù)實(shí)踐
- 凸優(yōu)化在經(jīng)濟(jì)學(xué)與金融學(xué)中的應(yīng)用
- 家譜、宗譜頒譜慶典講話
- 大學(xué)生職業(yè)生涯發(fā)展規(guī)劃知到章節(jié)答案智慧樹2023年齊魯師范學(xué)院
- GB/T 9123.1-2000平面突面鋼制管法蘭蓋
- 元代文學(xué)-緒論課件
- 方案報(bào)審表(樣表)
評論
0/150
提交評論