第3章計算機基礎_第1頁
第3章計算機基礎_第2頁
第3章計算機基礎_第3頁
第3章計算機基礎_第4頁
第3章計算機基礎_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第三章VisualBasic語言基礎本章學習目標掌握VisualBasic應用程序的基本元素,包括字符集、關(guān)鍵字、標識符、數(shù)據(jù)類型、常量、變量、運算符、表達式等,對VisualBasic的編程環(huán)境有一個全面的了解。3.1字符集、關(guān)鍵字、標識符字符集是構(gòu)成程序語言的最小單位。VisualBasic使用Unicode字符集,包含所有的常用字符,如數(shù)字、英文字母、常用漢字等,也包含一些特殊符號,如空格、換行符等。全角或中文符號不能作為語言成分符號。VisualBasic的基本字符集包括:1、數(shù)字0—92、英文字母(26個,不區(qū)分大小寫)3、特殊字符(Space!“$%#&‘()*+-,./:;<=>?@[\]^_{|})等3.1字符集、關(guān)鍵字、標識符關(guān)鍵字又稱保留字,在語法上有固定的意義,是VisualBasic語言的組成部分,往往表示系統(tǒng)提供的標準過程、函數(shù)、運算符、數(shù)據(jù)類型、命令等(如Integer,End,Sub,Rnd),用戶在自定義自己的標識符時,不能與這些關(guān)鍵字同名。VisualBasic中約定關(guān)鍵字的首字母為大寫字母,但輸入時不區(qū)分大小寫,系統(tǒng)能夠識別并自動轉(zhuǎn)換為標準形式。標識符是由若干字符組成的字符串,主要用來標記用戶自己定義的常量、類型、變量、控件、過程或函數(shù)等的名字。在VisualBasic中,標識符的命名須遵循如下規(guī)則:

1、首字符必須是字母;

2、長度不超過255個字符,用于控件、窗體和模塊的名字不能超過40個字符;

3、不能和關(guān)鍵字同名;

4、作為變量名的字符串內(nèi)不得包括用于類型說明的字符,如%、@、!、#、@、$等。3.1字符集、關(guān)鍵字、標識符數(shù)據(jù)類型在各種程序設計語言中的規(guī)定和處理方法是不相同的。VisualBasic不但提供了豐富的標準數(shù)據(jù)類型,還可以由用戶自定義數(shù)據(jù)類型。3.2數(shù)據(jù)類型基本數(shù)據(jù)類型是VisualBasic系統(tǒng)定義的數(shù)據(jù)類型,用戶可以直接使用它們來定義常量和變量。分為數(shù)值型數(shù)據(jù)、字符型數(shù)據(jù)、日期型數(shù)據(jù)、邏輯型數(shù)據(jù)、變體型數(shù)據(jù)、對象型數(shù)據(jù)等。3.2.1基本數(shù)據(jù)類型數(shù)值型(Numeric)數(shù)據(jù):VisualBasic的數(shù)值型數(shù)據(jù)又分為整型、浮點型、字節(jié)型和貨幣型。其中整型數(shù)據(jù)又分為整數(shù)和長整數(shù),浮點數(shù)據(jù)分為單精度浮點數(shù)和雙精度浮點數(shù)。3.2.1基本數(shù)據(jù)類型——數(shù)值型數(shù)據(jù)(1)整型數(shù)據(jù)。整型數(shù)據(jù)是不帶小數(shù)點和指數(shù)符號的數(shù)據(jù),在機器內(nèi)部以二進制補碼表示。整數(shù)(Integer):以2個字節(jié)(16位)的二進制碼表示,其取值范圍為-32768-32767。長整數(shù)(Long):以帶符號的4字節(jié)(32位)表示,其取值范圍為-2147483648-2147483647。要表示長整型數(shù),只要在數(shù)字后加&符號即可,例如,364&。(2)浮點數(shù)據(jù)。浮點數(shù)據(jù)也稱實數(shù),是帶有小數(shù)部分的數(shù)值,它由3部分組成:符號、指數(shù)和尾數(shù)。單精度浮點數(shù)(Single):以4個字節(jié)(32位)存儲,其取值范圍為-3.402823E+38~3.402823E+38。雙精度浮點數(shù)(Double):用8個字節(jié)(64位)存儲,其取值范圍-1.79769313486232D+308~1.79769313486232D+308。(3)字節(jié)型數(shù)據(jù)(Byte)。字節(jié)型數(shù)據(jù)表示無符號的整型,范圍為0~255,主要用于存儲二進制數(shù)。(4)貨幣型數(shù)據(jù)(Currency)。貨幣型數(shù)據(jù)的小數(shù)位固定為4位,專門用來表示貨幣數(shù)量。它的取值范圍是-922337203685477.5808~922337203685477.5807,存儲時要占用8個字節(jié)。其表示形式是在數(shù)字后面加@符號,例如,213.34@。3.2.1基本數(shù)據(jù)類型——數(shù)值型數(shù)據(jù)字符型(String)數(shù)據(jù):字符串是一個字符序列,在VisualBasic中字符串是放在雙引號內(nèi)的若干個字符。VisualBasic中的字符串分為變長字符串和定長字符串,其中變長字符串的長度是不確定的,最長約為21億個字符,而定長字符串的長度是確定的,最長不超過65535個字符。需要特別注意字符型數(shù)據(jù)和數(shù)值型數(shù)據(jù)的不同。如果要在文本框中顯示數(shù)值,就需要把數(shù)值轉(zhuǎn)換成字符串:反之,如果要取出在文本框中輸入的數(shù)字進行數(shù)學運算,也需要先把它轉(zhuǎn)換成數(shù)值型。VisualBasic提供了字符型與數(shù)值型相互轉(zhuǎn)換的命令。3.2.1基本數(shù)據(jù)類型——字符型數(shù)據(jù)日期型(Date)數(shù)據(jù):日期型數(shù)據(jù)表示由年、月、日組成的日期信息或由時、分、秒組成的時間信息,占用8個字節(jié)的內(nèi)存空間。書寫格式為:mm/dd/yyyy或者mm-dd-yyyy(月-日-年),或者是可以辨認的文本日期,要用“#”括起來。例如:#07/13/2010#或#07-13-2010#表示2010年7月13日,#Januaryl5,2010#表示2010年1月15日。3.2.1基本數(shù)據(jù)類型——日期型數(shù)據(jù)邏輯型(Boolean)數(shù)據(jù):也叫做布爾型數(shù)據(jù),占2個字節(jié)內(nèi)存,取值只有“True”和“False”兩種。3.2.1基本數(shù)據(jù)類型——邏輯型數(shù)據(jù)變體型(Variant)數(shù)據(jù):可以表示任何類型的數(shù)據(jù),即變體型數(shù)據(jù)的類型是可變的。當用戶給它賦一個字符型數(shù)據(jù)時,它就是字符型數(shù)據(jù);當用戶給它賦一個數(shù)值型數(shù)據(jù)時,它就是數(shù)值型數(shù)據(jù)。看起來很方便,但它占用的存儲空間較大,所以在實際編寫代碼的時候,很少使用變體型數(shù)據(jù)。3.2.1基本數(shù)據(jù)類型——變體型數(shù)據(jù)對象型(Object)數(shù)據(jù):可用來表示應用程序中的對象(用4個字節(jié)存儲),可以用Set語句來指定一個被聲明為Ob6eet的變量,去引用應用程序中的任何實際對象。3.2.1基本數(shù)據(jù)類型——對象型數(shù)據(jù)3.2.2用戶自定義數(shù)據(jù)類型VisualBasic允許用戶使用Type語句自定義數(shù)據(jù)類型,自定義數(shù)據(jù)類型通常是由標準類型組合而成。例如,定義一個有關(guān)學生家庭信息的自定義類型,包括“學號”、“姓名”、“街區(qū)”、“電話”等數(shù)據(jù),為了處理的方便,可以把這些數(shù)據(jù)組合成一個新的數(shù)據(jù)類型(如Address類型),這種結(jié)構(gòu)的數(shù)據(jù)類型稱為“記錄”類型。Type語句的格式為:

Type數(shù)據(jù)類型名元素名1As類型元素名2As類型

元素名NAs類型

EndType3.2.2用戶自定義數(shù)據(jù)類型用戶自定義Address類型的代碼如下:

TypeAddress

Xhasstring

XmasstringStreetASStringPhoneASStringEndtype定義了類型后,就可以像使用標準數(shù)據(jù)類型一樣來使用了3.2.2用戶自定義數(shù)據(jù)類型3.3常量與變量常量變量常量是在程序運行過程中其值不能被改變的量。在VisualBasic中有三類常量:普通常量、符號常量、系統(tǒng)常量。普通常量可在字面上區(qū)分數(shù)據(jù)類型;符號常量是用一個字符串(稱為符號或者常量名)代替程序中的某一個常數(shù);系統(tǒng)常量是VisualBasic系統(tǒng)定義的常量,存在于VisualBasic系統(tǒng)的對象庫中。3.3.1常量1、普通常量(1)整型常量:通常所說的整型常量指的是十進制整數(shù),但VisualBasic中也可以使用八進制和十六進制形式的整型常數(shù),因此整型常數(shù)有如下三種形式:

1)十進制整數(shù)。表示-32768~32767之間的整數(shù),如100,0,89,-20。

2)八進制整數(shù)。以&或&O(字母0)開頭的整數(shù)是八進制整數(shù),如&O25表示八進制整數(shù)25,即(25)8,等于十進制數(shù)21。

3)十六進制整數(shù)。以&H開頭的整數(shù)是十六進制整數(shù),如&H25表示十六進制整數(shù)25,即(25)16,等于十進制數(shù)37。VB中的顏色數(shù)據(jù)常常用十六進制整數(shù)表示。上面三種表示的是整形(Integer)的整數(shù),若要表示長整形(Long)整數(shù),只需在數(shù)的最后加上符號“&”。例如,126&、&O126&、&H126&分別是十進制、八進制、十六進制長整形整數(shù)。3.3.1常量(2)實型常量:VisualBasic實數(shù)有單精度(Single)實數(shù)和雙精度(Double)實數(shù),它們在內(nèi)存中是以浮點數(shù)形式存放的,故又稱為浮點實數(shù)。實型常量有兩種表示形式:

1)十進制小數(shù)形式:如0.12,12.34,1234!,11.23#。

2)指數(shù)形式:如1.23E+4、1.23D+4均表示1.23×104。實數(shù)寫成指數(shù)形式時,指數(shù)部分的正號可以省略,如1.23E+4、1.23D+4可寫成1.23E4、1.23D4。同一個實數(shù)可以有多種指數(shù)形式,如1234.5可以表示為:1234.5E0,123.45E+1,12.345E+2,1.2345E+3,一般將1.2345E+3稱為“規(guī)范化的指數(shù)形式”。直接寫出來的實數(shù)常數(shù)系統(tǒng)默認為雙精度型,即231與231#是等價的。3.3.1常量(3)字符串常量:是用雙引號(””)括起來的一串字符。可以是所有西文字符和漢字、標點符號等,例如”ABC”、”abc”、”456”、”程序設計”等。其中,雙引號(")起到字符串的標志作用,本身不是字符串值的一部分。""代表空字符串,其值是什么也沒有的字符串;而""是空格字符串,其值是一個空格。若字符串中有雙引號,則用連續(xù)兩個雙直引號來表示字符串中的雙直引號。如字符串"123""45"表示的是字符123"45。(4)邏輯常量:只有兩個值:真(True)和假(False)。當把數(shù)值常量轉(zhuǎn)換為邏輯常量時,0為False,非0值為True;當把邏輯常量轉(zhuǎn)換為整數(shù)數(shù)值時,F(xiàn)alse轉(zhuǎn)換為0,True轉(zhuǎn)換為-1。(5)日期常量:用字符“#”括起來。如,#08/18/2010#、#08/18/201008:10:38#、#08/18/201008:10:38PM#等。3.3.1常量2、符號常量 當某個數(shù)據(jù)在程序中多次出現(xiàn)時,可以給它賦予一個名字,以后就用這個名字來代替此數(shù)據(jù)。這樣不僅書寫方便,而且便于程序修改和閱讀。符號常量要先定義后使用。3.3.1常量定義復合符號常量的方法是:[格式][Private|Public]Const<符號常量名>[As<數(shù)據(jù)類型>]=<常數(shù)表達式>[說明]:

1)可選項Private|Public決定了符號常量的作用域,Private表示只在本窗體(模塊)內(nèi)有效,后者在整個工程中有效(需要在“通用”、“聲明”部分定義)。若在過程內(nèi)定義,則只在本過程中有效。

2)符號常量名的命名規(guī)則與變量名的命名規(guī)則相同,為了便于與一般變量名區(qū)別,常常使用大寫字母。

3)常數(shù)表達式可以是普通常量、系統(tǒng)常量或在此前已聲明了的符號常量,或由這些常量和運算符組成的表達式,但不能有函數(shù)調(diào)用和變量。

4)As<數(shù)據(jù)類型>來說明符號常量的數(shù)據(jù)類型,缺省取決于“=”右邊常數(shù)表達式的類型。3.3.1常量3、系統(tǒng)常量VisualBasic系統(tǒng)提供了應用程序和控件的系統(tǒng)定義常量,它們存放于系統(tǒng)的對象庫中。這些常量可與應用程序的對象、方法和屬性一起使用,在代碼中可以直接使用它們。在“對象瀏覽器”中查看系統(tǒng)常量。選擇“視圖”菜單中的“對象瀏覽器”窗口,在下拉列表框中選擇VBA對象庫,然后在“類”列表框中選擇“全局”,右側(cè)的成員列表中可以顯示預定義的系統(tǒng)常量,窗口底端的文本區(qū)域中將顯示該常量的功能。3.3.1常量3.3.1常量在為屬性或變量輸入數(shù)據(jù)時,應該檢查一下是否有系統(tǒng)已經(jīng)定義好的常量可供使用,使用系統(tǒng)常量可使代碼具備自我解釋功能,易于閱讀和維護。同時,系統(tǒng)常量的值在不同版本中可能會不同,系統(tǒng)常量的使用也可使程序保持兼容性。變量是在程序運行期間其值發(fā)生變化的量,變量名是一個符號地址,代表內(nèi)存中指定的存儲單元。在對程序編譯連接時,由系統(tǒng)給每一個變量分配一個內(nèi)存地址,變量名就是內(nèi)存中對應單元的名字,而變量的值就是該內(nèi)存單元中存放的值。每個變量都有一個相應的數(shù)據(jù)類型,包括數(shù)值型、字符型、邏輯型、日期型、對象型和可變類型等。不同的數(shù)據(jù)類型決定了變量的存儲方式和在內(nèi)存中占據(jù)的存儲單元數(shù)量。程序通過變量名來引用變量的值。變量名的命名遵循標識符的命名規(guī)則。3.3.2變量VisualBasic允許對變量不定義就使用,但為了節(jié)省內(nèi)存開銷與增強程序糾錯性,建議大家養(yǎng)成良好的編程習慣,在使用變量時,要“先聲明,后使用”,即首先定義變量為某一種數(shù)據(jù)類型,以便系統(tǒng)為其合理分配存儲單元。變量名由首字符為英文字母、不超過255個字符的字母、數(shù)字以及下劃線符組成。3.3.2變量變量的聲明

任何變量都屬于某一種數(shù)據(jù)類型,系統(tǒng)根據(jù)就是類型來為變量分配存儲單元,在VisualBasic中變量的聲明分為隱式聲明和顯式聲明兩種。

(1)顯式聲明變量

[格式]聲明符<變量名1>[As<類型>][,<變量名2>[As<類型>]]……[說明]1)<聲明符>是用于聲明變量的關(guān)鍵字,可以是Dim、Private、Static、Public中的一個,選擇不同的關(guān)鍵字或者在不同的位置聲明變量,其變量的作用域是不同的,一個語句可以聲明多個變量。

2)<類型>是聲明變量的數(shù)據(jù)類型,可以是基本類型,也可以是自定義類型或者枚舉類型,缺省該項將變量定義為可變類型。

3)變量名后面可以加類型說明符。

4)字符串變量的聲明有定長和不定長的區(qū)別。3.3.2變量(2)隱式聲明在VisualBasic中,允許變量不聲明就使用,這些變量被默認為可變類型,這種方式為隱性聲明。(3)設置強制顯式聲明變量語句聲明變量可以有效地降低錯誤率。為了避免寫錯變量名引起的麻煩,可以規(guī)定在使用變量名前,必須先用聲明語句進行聲明。要強制顯式聲明變量,可以在每個類模塊、窗體模塊或標準模塊的聲明段中加入語句OptionExplicit;或從“工具”菜單中執(zhí)行“選項”命令,在打開的“選項”對話框中選擇“編輯器”選項卡,再復選“要求變量聲明”選項,這樣VB會在后續(xù)的窗體模塊、標準模塊及類模塊中自動插入OptionExplicit語句,這一句總是顯示在代碼編輯窗口的通用聲明部分。3.3.2變量變量的默認值當VisualBasic執(zhí)行變量的聲明語句后,變量就取得系統(tǒng)賦予的一個默認值,不同類型的變量,其默認值如表3-2所示。變量類型默認值數(shù)值型0或0.0邏輯型False日期型#0:00:00#變長字符串空字符串""定長字符串空格字符串,其長度為定長字符串的長度對象型Nothing變體類型Empty3.3.2變量VisualBasic中變量的作用域分為:工程級、模塊級、過程級。1、工程級變量:又稱做全局變量,在整個工程中都有效,這種變量必須用Public在模塊“通用”、“聲明”中聲明。2、模塊級變量:又稱局部變量,它的作用范圍在本模塊內(nèi)使用。模塊級變量用Dim或Private在模塊的“通用”、“聲明”中聲明,該模塊中的各(事件)過程中的同名變量(若沒重新聲明)其值是相同的。3、過程級變量:又稱局部變量、屏蔽變量或者隱藏變量,其作用范圍最小,只在本過程中有效,不同過程中定義的變量,其它過程是不能引用的,即便是同明變量在不同的過程中聲明,其值也各不相同,所以過程級變量對非本過程起到了“屏蔽”的作用,使得同一模塊中的各過程中的變量,同名可以不同值。過程級變量在事件過程內(nèi)用Dim或Static聲明,不能使用Public和Private聲明。3.3.3變量的作用域3.4運算符和表達式計算機處理信息一定包含大量的數(shù)據(jù)運算,數(shù)據(jù)類型不同,使用的運算符和表達式也各不相同,VisualBasic提供了多種運算符,主要包括算術(shù)運算符、關(guān)系運算符、邏輯運算符、字符串連接符和日期運算符等。3.4.1算術(shù)運算符與算術(shù)表達式運算符名稱實例+加法1+9值為10-減法或負號5-8值為-3*乘法5*4值為20/除法5/2值為2.5\整除7\2值為3,12.58\3.45值為4(兩邊先四舍五入取整后再運算)Mod求余數(shù)9mod2值為1,12.58Mod3.45值為1(兩邊先四舍五入取整后再運算)^乘方2^3值為8,-2^4值為-16算術(shù)運算符的優(yōu)先級從高到低依次是:(括號運算())→(指數(shù)運算^)→(取負-)→(乘*、除/)→(整除\)→(求余Mod)→(加+、減-),其中,乘、除和加、減分別為同級運算符,同級運算從左向右進行。3.4.1算術(shù)運算符與算術(shù)表達式3.4.2關(guān)系運算符與關(guān)系表達式關(guān)系運算符用來比較兩個操作數(shù)或者表達式大小的運算符,又稱比較運算符,VisualBasic提供了六種運算符:=(等于)、<(小于)、<=(小于等于)、>(大于)、>=(大于等于)、<>(不等于)六種,它們的優(yōu)先級相同,即從左至右運算。關(guān)系表達式是由關(guān)系運算符和操作數(shù)組成的式子,運算的結(jié)果為邏輯值(布爾值)True或False。關(guān)系運算的規(guī)則如下:

1)當兩個操作數(shù)均為數(shù)值型,按數(shù)值大小比較。

2)當兩個操作數(shù)均為字符類型數(shù)據(jù)時,從左到右逐個字符比較,第一個不相同字符的ASCII碼值大的,字符串為大。

3)當兩個操作數(shù)均為日期類型數(shù)據(jù),比較先后,現(xiàn)在的日期比過去的大。

4)邏輯型數(shù)據(jù)的取值只有False和True,并且False>True,這是因為VisualBasic把任何非0值都認為邏輯值為真,但一般以-1表示True,以0表示False。3.4.2關(guān)系運算

溫馨提示

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

評論

0/150

提交評論