數(shù)據(jù)類型、常量、變量及表達(dá)式.doc_第1頁
數(shù)據(jù)類型、常量、變量及表達(dá)式.doc_第2頁
數(shù)據(jù)類型、常量、變量及表達(dá)式.doc_第3頁
數(shù)據(jù)類型、常量、變量及表達(dá)式.doc_第4頁
數(shù)據(jù)類型、常量、變量及表達(dá)式.doc_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第三周 數(shù)據(jù)類型、常量、變量及表達(dá)式 本節(jié)內(nèi)容及要求:1 熟悉VB程序中代碼和語句書寫規(guī)則;2 掌握VB的數(shù)據(jù)類型;3 掌握VB的 運(yùn)算符和表達(dá)式的使用;4 掌握常用內(nèi)部函數(shù)的使用;本章重點(diǎn): 變量和常量的定義及使用、運(yùn)算符和表達(dá)式的使用及常用內(nèi)部函數(shù)的使用。本章難點(diǎn): 數(shù)據(jù)類型、內(nèi)部函數(shù)。3.1 VB語言字符集及編碼規(guī)則 一、VB的字符集 l字母:大寫英文字母AZ;小寫英文字母az。l 數(shù)字:0一9;l 專用字符:共27個,二、編碼規(guī)則與約定 (一)、編碼規(guī)則1VB代碼中不區(qū)分字母的大小寫。2在同一行上可以書寫多條語句,但語句間要用冒號“:”分隔。3若一個語句行不能寫下全部語句,或在特別需要時,可以換行。換行時需在本行后加入續(xù)行符,1個空格加下劃線“_”。4一行最多允許255個字符。5注釋以Rem開頭,也可以使用單引號“”,注釋內(nèi)容可直接出現(xiàn)在語句的后面。(二)、 約定1為了提高程序的可讀性,對于VB中的關(guān)鍵字其首字母大寫,其余字母小寫 2. 注釋有利于程序的維護(hù)和調(diào)試 Rem開始 或 單撇 。 例如: This is a VB REM This is a VB3.2 數(shù)據(jù)類型一.標(biāo)準(zhǔn)數(shù)據(jù)類型表3.2 二、自定義類型在模塊級別中使用,用于定義包含一個或多個元素的用戶自定義的數(shù)據(jù)類型。 使用形式: Type 自定義類型名 元素名 (下標(biāo)) As 類型名 元素名 (下標(biāo)) As 類型名 . . . End Type說明 例如: 對于一個學(xué)生的“學(xué)號”、“姓名”、“性別”、“年齡”、“入學(xué)成績”等數(shù)據(jù),為了處理數(shù)據(jù)的方便,常常需要把這些數(shù)據(jù)定義成一個新的數(shù)據(jù)類型(如Student類型)。 Type Student Xh As Sting Xm As String Xb As String Nl As Integer Score As Single End Type3.3 常量和變量3.3.1 常 量 在程序運(yùn)行過程中,其值不能被改變的量稱為常量。在VB中有三類常量: 普通常量 符號常量 系統(tǒng)常量。 一、普通常量 1 整型常量 (1)整型(Integer):表示-32768至32767之間的整數(shù) 例如:10 110 20 (2)長整型(Long): 表示-2,147,483,648至2,147,483,647之間的整數(shù) 例如:長整型常數(shù)的書寫: 23& 通常我們說的整型常量指的是十進(jìn)制整數(shù),但VB中可以使用八進(jìn)制和十六進(jìn)制形式的整型常數(shù),因此整型常數(shù)有如下三種形式: 1)十進(jìn)制整數(shù)。如125,0,-89。202)八進(jìn)制整數(shù)。以&或&O(字母O)開頭的整數(shù)是八進(jìn)制整數(shù),如&O25表示八進(jìn)制整數(shù)25,即(25)8 ,等于十進(jìn)制數(shù)21。 3)十六進(jìn)制。以&H開頭的整數(shù)是十六進(jìn)制整數(shù),如&H25表示十六進(jìn)制整數(shù)25,即(25)16 ,等于十進(jìn)制數(shù)37。VB中的顏色數(shù)據(jù)常常用十六進(jìn)制整數(shù)表示。 2、實(shí)數(shù)1) 單精度實(shí)型(Single):有效數(shù)為7位 表示-3.37E+38至3.37E+38之間的實(shí)數(shù) 2)雙精度實(shí)型(Double):有效數(shù)為15位常量的表示:1)十進(jìn)制小數(shù)形式。它是由正負(fù)號(+,-)、數(shù)字(09)和小數(shù)點(diǎn)(.)或類型符號(!、#)組成,即n.n,n!或n#,其中n是09的數(shù)字。例如0.123、.123、123.0、123!、123#等都是十進(jìn)制小數(shù)形式。2)指數(shù)形式。nEm 或 n.nEm, nDm 或 n.nDm 例:1.25E+3 和 1.25D+3相當(dāng)于1250.0 或者1.25103。3、字符串常量在VB中字符串常量是用雙引號“”括起的一串字符,例如ABC,abcdefg,123,0,VB程序設(shè)計等。說明:(1)字符串中的字符可以是所有西文字符和漢字、標(biāo)點(diǎn)符號等;(2)表示空字符串,而 表示有一個空格的字符串;(3)若字符串中有雙引號,例如ABDXYZ,則用連續(xù)兩個雙引號表示,即: ABDXYZ“4、邏輯(Boolean)數(shù)據(jù)類型 只有兩個值True,或False。將邏輯數(shù)據(jù)轉(zhuǎn)換成整型時:True為-1,F(xiàn)alse為0;其它數(shù)據(jù)轉(zhuǎn)換成邏輯數(shù)據(jù)時:非0為True, 0為False。5、日期常量 日期(Date)型數(shù)據(jù)按8字節(jié)的浮點(diǎn)數(shù)來存儲,表示日期范圍從公元100年1月1日9999年12月31日,而時間范圍從0:00:0023:59:59。 一種在字面上可被認(rèn)作日期和時間的字符,只要用號碼符“#”括起來,都可以作為日期型數(shù)值常量。 例:#09/02/99#、#January 4,1989#,#2002-5-4 14:30:00 PM#都是合法的日期型常量。 說明:當(dāng)以數(shù)值表示日期數(shù)據(jù)時,整數(shù)部分代表日期,而小數(shù)部分代表時間;例如1表示1899年12月31日。大于1的整數(shù)表示該日期以后的日期,0和小于0的整數(shù)表示該日期以前的日期。 二、符號常量 在程序中,某個常量多次被使用,則可以使用一個符號來代替該常量,這樣不僅在書寫上方便,而且有效地改進(jìn)了程序的可讀性和可維護(hù)性。 VB中使用關(guān)鍵字Const 聲明符號常量。其格式如下:Const 常量名 As 類型|類型符號=常數(shù)表達(dá)式例如: Const PI#=3.1415926535 等價于: Const PI As Double=3.1415926535 三、系統(tǒng)常量 VB系統(tǒng)提供了應(yīng)用程序和控件的系統(tǒng)定義常數(shù)。它們存放于系統(tǒng)的對象庫中,在“對象瀏覽器”中的 Visual Basic(VB) 和 Visual Basic for applications(VBA)對象庫中列舉了 Visual Basic 的常數(shù) 例如,要將文本框Text1的前景顏色設(shè)置為紅色,可以使用下面的語句: Text1.ForeColor=vbRed 這里的vbRed就是系統(tǒng)常量。這比直接使用16進(jìn)制數(shù)來設(shè)置要直觀得多。 又如,窗口狀態(tài)屬性WindowsState可取0,1,2三個值,對應(yīng)三種不同狀態(tài)(參見第二章表2-2所示)。 在程序中使用語句 Myform.WindowsState=vbMaxmized,將窗口極大化,顯然要比使用語句Myform.WindowsState=2 易于閱讀和理解。 3.3.2 變 量 一.變量和常量的命名規(guī)則 1. 以字母或漢字開頭,后可跟字母、數(shù)字或下劃線組成,長度小于等于40個字符; 2. 不能使用VB中的關(guān)鍵字; 3. VB中不區(qū)分變量名的大小寫. 4. 為了增加程序的可讀性,可在變量名前加一個縮寫的前綴來表明該變量的數(shù)據(jù)類型。 例如:strAbc, (字符串變量) iCount, (整型變量) dblx, (雙精度變量) sYz (單精度變量)二.變量聲明 1.用Dim語句顯式聲明變量 形式:Dim 變量名 AS 類型 Dim 變量名類型符 例 Dim iCount As integer , sum As single 等價于 Dim iCount%, sum!2.隱式聲明 Visual Basic允許用戶在編寫應(yīng)用程序時,不聲明變量而直接使用,系統(tǒng)臨時為新變量分配存儲空間并使用,這就是隱式聲明。所有隱式聲明的變量都是Variant數(shù)據(jù)類型。Visual Basic根據(jù)程序中賦予變量的值來自動調(diào)整變量的類型。 例如:下面是一個很簡單的程序,其使用的變量a, b, Sum都沒有事先定義。Private Sub Form_Click()Sum = 0a = 10: b = 20Sum = a + bPrint Sum=; SumEnd Sub3強(qiáng)制顯式聲明Option Explicit語句良好的編程習(xí)慣都應(yīng)該是“先聲明變量,后使用變量”,這樣做可以提高程序的效率,同時也使程序易于調(diào)試。Visual Basic 中可以強(qiáng)制顯式聲明,可以在窗體模塊、標(biāo)準(zhǔn)模塊和類模塊的通用聲明段中加入語句:Option Explicit3.4 運(yùn)算符和表達(dá)式一. 運(yùn)算符 1. 算術(shù)運(yùn)算符(均是雙目運(yùn)算,ia=3)例:5+10 mod 10 9 / 3 +2 2 結(jié)果是:2. 字符串運(yùn)算符與字符串表達(dá)式 字符串運(yùn)算符有: 、+ 。 功能是字符串連接例如: ABCD + EFGHI 結(jié)果為:ABCDEFGHI“ VB ” & “程序設(shè)計教程” 結(jié)果為:VB程序設(shè)計教程說明:當(dāng)連接符兩旁的操作量都為字符串時,上述兩個連接符等價。它們區(qū)別是: +(連接運(yùn)算):兩個操作數(shù)均應(yīng)為字符串類型; &(連接運(yùn)算):兩個操作數(shù)既可為字符型也可為數(shù)值型,當(dāng)是數(shù)值型時,系統(tǒng)自動先將其轉(zhuǎn)換為數(shù)字字符,然后進(jìn)行連接操作。 例:100 + 123 結(jié)果為 223100 + 123 結(jié)果為 100123 Abc + 123 出錯 100 & 123 結(jié)果為 100123 100 & 123 結(jié)果為 100123 Abc & 123 結(jié)果為 Abc123 Abc & 123 結(jié)果為 Abc123注意:使用運(yùn)算符“&”時,變量與運(yùn)算符“&”之間應(yīng)加一個空格。這是因?yàn)榉枴?”還是長整型的類型定義符,如果變量與符號“&”接在一起,VB系統(tǒng)先把它作為類型定義符處理,因而就會出現(xiàn)語法錯誤。 3.4.3 關(guān)系運(yùn)算符與關(guān)系表達(dá)式 關(guān)系運(yùn)算符都是雙目運(yùn)算,是用來比較兩個運(yùn)算量之間的關(guān)系,關(guān)系表達(dá)式的運(yùn)算結(jié)果為邏輯量。若關(guān)系成立,結(jié)果為True,若關(guān)系不成立,結(jié)果為False。 VB中的關(guān)系運(yùn)算符如下表所示。 運(yùn)算符含義優(yōu)先級實(shí)例結(jié)果小于所有關(guān)系運(yùn)算優(yōu)先級相同。低于算術(shù)運(yùn)算的加“+”,減“-”運(yùn)算,高于邏輯非“Not”運(yùn)算。15+1020False=小于或等于10大于1020False=大于或等于This= ThatTrue=等于This= ThatFalse不等于This ThatTrueLike字符串匹配This Like *isTrueIs對象比較關(guān)系運(yùn)算的規(guī)則如下: (1)當(dāng)兩個操作式均為數(shù)值型,按數(shù)值大小比較。 (2)字符串比較,則按字符的ASCII碼值從左到右一一比較,直到出現(xiàn)不同的字符為止.。 例: ABCDE ABRA 結(jié)果為 False (3)數(shù)值型與可轉(zhuǎn)換為數(shù)值型的數(shù)據(jù)比較, 如:29189 ,按數(shù)值比較,結(jié)果為False。(4)數(shù)值型與不能轉(zhuǎn)換成數(shù)值型的字符型比較, 如:77 sdcd ,不能比較,系統(tǒng)出錯。(5)“Like”運(yùn)算符是VB6.0新增加的。 其使用格式為:str1 Like str23.4.4 邏輯運(yùn)算符與邏輯表達(dá)式 Not 邏輯非為單目運(yùn)算符(要求一個操作數(shù)),其它為雙目運(yùn)算符。 條件表達(dá)式1 And 條件表達(dá)式2 條件表達(dá)式均為T 結(jié)果為T 條件表達(dá)式1 Or 條件表達(dá)式2 條件表達(dá)式有一個T 結(jié)果為T說明:(1)邏輯運(yùn)算符的優(yōu)先級不相同,Not(邏輯非)最高,但它低于關(guān)系運(yùn)算,Imp(邏輯蘊(yùn)含)最低。(2)VB中常用的邏輯運(yùn)算符是Not、And和Or。它們用于將多個關(guān)系表達(dá)式進(jìn)行邏輯判斷。例如,數(shù)學(xué)上表示某個數(shù)在某個區(qū)域時用表達(dá)式: 10X=10 And X=字符運(yùn)算符關(guān)系運(yùn)算符邏輯運(yùn)算 說明: 1當(dāng)一個表達(dá)式中出現(xiàn)多種運(yùn)算符時,首先進(jìn)行算術(shù)運(yùn)算符,接著處理字符串連接運(yùn)算符,然后處理比較運(yùn)算符,最后處理邏輯運(yùn)算符,在各類運(yùn)算中再按照相應(yīng)的優(yōu)先次序進(jìn)行。 2可以用括號改變優(yōu)先順序,強(qiáng)令表達(dá)式的某些部分優(yōu)先運(yùn)行。括號內(nèi)的運(yùn)算總是優(yōu)先于括號外的運(yùn)算。對于多重括號,總是由內(nèi)到外。 . 表達(dá)式的書寫中需注意的問題 (1)運(yùn)算符不能相鄰。例a+-b是錯誤的。 (2)乘號不能省略。例x 乘以y 應(yīng)寫成:x*y (3)括號必須成對出現(xiàn),均使用圓括號。 (4)表達(dá)式從左到右在同一基準(zhǔn)并排書寫,不能出現(xiàn)上下標(biāo) (5)要注意各種運(yùn)算符的優(yōu)先級別,為保持運(yùn)算順序,在寫表達(dá)式時需要適當(dāng)添加括號(),若用到庫函數(shù)必須按庫函要求書寫。 如: (b-sqr(b*b-4*a*c)/(2*a) (a+b)/(a-b)3.5 常用內(nèi)部函數(shù) VB提供了上百種內(nèi)部函數(shù)(庫函數(shù)),要求掌握這些常用函數(shù)的功能及使用。 調(diào)用方法: 函數(shù)名(參數(shù)列表) 有參函數(shù) 函數(shù)名 無參函數(shù)說明: (1) 使用庫函數(shù)要注意參數(shù)的個數(shù)及其參數(shù)的數(shù)據(jù)類型 (2) 要注意函數(shù)的定義域(自變量或參數(shù)的取值范圍) 例如: sqr(x) 要求: x=0 (3) 要注意函數(shù)的值域。 1. 數(shù)學(xué)函數(shù) 常用的數(shù)學(xué)函數(shù) Abs(N) Cos(N) Sin(N) Exp(N) Log(N) Sqr(N) Rnd(N) Sgn(N) 說明: (1) 在三角函數(shù)中的自變量是以弧度為單位。 如:sin300 sin(3.14159/180*30) (2) Rnd函數(shù)返回0 1(包括0和不包括1)之間的雙精度隨機(jī)數(shù)。 若要產(chǎn)生1-100的隨機(jī)整數(shù): Int(Rnd *100)+1 提問:怎樣產(chǎn)生N,M區(qū)間的隨機(jī)數(shù)? 2. 轉(zhuǎn)換函數(shù) 常用的轉(zhuǎn)換函數(shù)見表3-9所示 說明: (1)要區(qū)別兩個取整函數(shù)int()和fix() Fix(N)為截斷取整,即去掉小數(shù)后的數(shù)。 Int(N)不大于N的最大整數(shù)。 N0與int(N) 相同,當(dāng)N0時, int(N) 與fix(N) -1相等。 例如: Fix(9.59) =9, Int(9.59) =9 Fix(-9.59) =-9, Int(-9.59) =-10 思考:如何實(shí)現(xiàn)四舍五入取整? (2)Asc(Abcd) 值為: 65 (只取首字母的Ascii值) (3)Val(abc123) 值為:0, Val(1.2sa10) 值為1.2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論