




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、v第一節(jié) 數(shù)據(jù)類型 v第二節(jié) 常量和變量 v第三節(jié) 變量的作用域 v第四節(jié) 常用內(nèi)部函數(shù) v第五節(jié) 字符處理與字符串函數(shù) v第六節(jié) 運算符與表達式 v數(shù)據(jù)是程序處理的對象v數(shù)據(jù)類型體現(xiàn)了數(shù)據(jù)結(jié)構(gòu)的特點第一節(jié)數(shù)據(jù)類型第一節(jié)數(shù)據(jù)類型 如:“hello” “visual basic 6.0” “”一一、基本數(shù)據(jù)類型基本數(shù)據(jù)類型2.數(shù)值 整型數(shù)和浮點數(shù)1.字符串(string)a.一個字符序列。 標準asc字符和擴展asc字符b.放在雙引號內(nèi)的若干字符??兆址L度為0(1)整型數(shù):不帶小數(shù)點和指數(shù)符號。整 數(shù):2個字節(jié)(16位)二進制碼。長整型:帶有符號 4個字節(jié)(32位)。單精度浮點數(shù)(e) 12
2、3.45e3或123.45e+3 4個字節(jié)(32位)存儲(2)浮點數(shù):實形數(shù)或?qū)崝?shù)。 由符號、指數(shù)及尾數(shù)組成。雙精度浮點數(shù)(d) 123.45678d3或123.45678d+3 8個字節(jié)(64位)存儲 5.其它數(shù)據(jù)類型4.變體(variant) 是一種可變的數(shù)據(jù)類型 數(shù)值、字符串、日期/時間等byte(字節(jié)型) 一個字節(jié)的無符號二進制數(shù)存儲boolean(布爾型) 邏輯值. true或false3.貨幣型(currency) 定點數(shù)據(jù)類型(小數(shù)點是固定的) 8個字節(jié)(64位)存儲date(日期時間型) 存儲為ieee 64位(8個字節(jié))浮點數(shù)值形式。 日期文字須以數(shù)字符號(#)括起來。 例如
3、:#january 1,2001#。object(對象型) 用來表示圖形或ole對象等。(ole插入或嵌入) 用4個字節(jié)存儲。例如:描述學(xué)生對象,包括學(xué)號、姓名、 性別、年齡、所在系、專業(yè)等。 將不同類型的變量組合起來形成新的數(shù)據(jù)類型,稱為“用戶自定義數(shù)據(jù)類型”(在c語言中稱為“結(jié)構(gòu)”)。private|public type private|public type 自定義類型名自定義類型名 元素名元素名 as as 數(shù)據(jù)類型數(shù)據(jù)類型 end type end type在窗體模塊中,只能聲明為私有的。使用type語句,且type語句必須放在模塊的 通用聲明部分。在標準模塊中,可聲明為公有的或私
4、有的。private type student num as string 學(xué)號 name as string 姓名 age as integer 年齡 sex as string 性別 class as string 班級 end typestudent為自定義數(shù)據(jù)類型的類型名,num、 name等為student的成員。dim 變量名 as 自定義數(shù)據(jù)類型 例: dim stu as student 或 dim allstu(1 to 10) as student聲明語句:自定義類型變量名. 自定義類型成員名 例: stu.name = “peter” stu.age = 20 或 all
5、stu(1).num = “9812a00”引用方式: public | | privateenum類型名稱成員名=常數(shù)表達式成員名=常數(shù)表達式end enum 枚舉類型提供了一種方便的方法,用來處理有關(guān)的常數(shù),或者使名稱與常數(shù)數(shù)值相關(guān)聯(lián)。 枚舉類型放在窗體模塊、標準模塊或公用類模塊中的聲明部分,通過enum語句來定義,格式如下: 第二節(jié)常量和第二節(jié)常量和變量 文字常量、符號常量。1.文字常量 分字符串和數(shù)值兩種(1)字符串常量 a.除雙引號和回車符之外的任何ascii字符 b.定長字符串;變長字符串。(2)數(shù)值常量 整型數(shù)、長整型數(shù)、貨幣型數(shù)和浮點數(shù)。 a.整型數(shù)和長整型數(shù)都有3種形式,即十
6、進制 十六進制和八進制。 b.貨幣型常數(shù)的小數(shù)點位置是固定的,因此 也稱定點數(shù)。 c.浮點數(shù)也稱實數(shù),其小數(shù)點是“浮動”的, 分為單精度浮點數(shù)和雙精度浮點數(shù)。(3)類型說明符 整型 長整型! 單精度浮點數(shù)# 雙精度浮點數(shù) 貨幣型$ 字符串型字節(jié)、布爾、日期、對象及變體類型沒有類型說明符。2.符號常量用來代替數(shù)值或字符串格式:格式:const常量名=表達式,常量名=表達式 常量名:變量的構(gòu)成規(guī)則命名表達式: 文字常量、運算符(算術(shù)、邏輯)。 不能用字符串連接運算符、變量以及用 戶定義的函數(shù)或內(nèi)部函數(shù)。 注意:(1)可以在常量名后面加上類型說明符。(2)在程序中引用符號常量時,通常省略類型 說明符
7、。(3)類型說明符不是符號常量的組成部分,定 義符號常量后,在定義變量時要慎重。變量:一個有名稱的內(nèi)存位置稱為變量。 應(yīng)用程序在運行期間用變量來臨時存 儲數(shù)據(jù)。名字:在程序中標識變量變量的特性:數(shù)據(jù)類型:確定了變量中可以保存哪類數(shù)據(jù)在程序執(zhí)行的每個瞬間,變量的值是確定的、 已知的;但在程序執(zhí)行的整個過程中,它的 值是可變的。1.1.變量的命名規(guī)則變量的命名規(guī)則必須以字母開頭,其它字符可是字母、數(shù)字 或下劃線。最后一個字符可以是類型說明符不能用visual basic的保留字作變量名,但可 以把保留字嵌入變量名中。最后一個字符不 能是類型說明符保留字。有效字符255個。vb不區(qū)分變量名和其他名字
8、中字母的大小寫。2.2.變量的類型和定義變量的類型和定義基本數(shù)據(jù)類型和用戶定義的數(shù)據(jù)類型(1)用類型說明符來標識 把類型說明符放在變量名的尾部,可以標識不同的變量類型。其中表示整型,表示長整型,!表示單精度型,#表示雙精度型,表示貨幣型,$表示字符串型。total% amount# lname$(2)在定義變量時指定其類型 格式:declare 變量名 as 類型declare:可以是dim、static、redim、public; as:是關(guān)鍵字; 類型:可以是基本數(shù)據(jù)類型或用戶定義的類型。 dim 用于在標準模塊、窗體模塊或過程中定義 變量或數(shù)組(自動變量)。 例:dim varl as
9、integer dim myname as string*10注意:注意:在一個dim語句中定義多個變量時,用as子 句聲明其類型,否則被看作變體類型。 static在過程中定義靜態(tài)變量及數(shù)組變量(靜態(tài)變量)。例:dim var1,var2 as double例:dim var1 as integer,var2 as double用static定義的變量每次引用時其值會繼續(xù)保留。sub test() static var1 as integer var1 = var1 + 1 end subsub test() dim var1 as integer var1 = var1 + 1 end s
10、ub每調(diào)用一次test過程,靜態(tài)變量var1累加1。每次調(diào)用test過程時,自動變量就被置為0。(3)用deftype語句定義 用deftype語句可以在標準模塊、窗體模塊的 聲明部分定義變量。格式: deftype 字母范圍 字母范圍 用“字母-字母”形式 字母az中的任一個(大小寫均可) public在標準模塊中定義全局變量或數(shù)組。注意:如果一個變量未被顯式定義,末尾也沒有類型 說明符,則被隱含地說明為變體類型變量。類型說明符總是比deftype語句優(yōu)先起作用。 記錄類型變量的定義與基本數(shù)據(jù)類型變量的定義沒有什么區(qū)別,但必須用“變量.元素”的格式引用記錄中的各個成員。3.3.記錄類型變量記
11、錄類型變量在實際應(yīng)用中,應(yīng)根據(jù)需要設(shè)置變量的類型;盡 可能節(jié)省內(nèi)存空間,以便提高處理速度。用類型說明符定義的變量,在使用時可以省略類 型說明符。dim astr$astr = this is a stringastr$ = this is a string第三節(jié)變量的作用域第三節(jié)變量的作用域 指的是變量的有效范圍。即變量的“可見性”vb應(yīng)用程序.vbp 窗體模塊.frm 標準模塊.bas聲明部分通用過程事件過程聲明部分通用過程1.1.局部變量局部變量( (過程變量過程變量) )在過程(事件過程或通用過程)內(nèi)定義的變量。 通常用來存放中間結(jié)果或用作臨時變量。在不同的的過程中可以定義相同名字的局
12、部變量。2.2.模塊變量模塊變量( (窗體變量和標準模塊變量窗體變量和標準模塊變量) ) v用于該模塊內(nèi)的所有過程。 v同一模塊內(nèi)的不同過程使用相同的變量時, 必須定義模塊變量。 v在使用窗體層變量前,必須先聲明。 v只含有程序代碼的應(yīng)用程序文件。 .bas v工程添加模塊(對話框中選“新建”)。v用private 或dim來聲明,建議用private. 3.3.標準模塊變量標準模塊變量4.4.全局變量全局變量( (全程變量全程變量) )在工程的每個模塊、每個過程。 不能用dim語句聲明,更不能用private語句聲明。 不能在過程或窗體模塊中聲明只能在標準模塊中 聲明。 用public(或g
13、lobal)語句聲明。 變量的作用域變量的作用域名名 稱稱作用域作用域聲明的位置聲明的位置使用的語句使用的語句局部變量過程過程中dim或static模塊變量模塊變量窗體模塊和標窗體模塊和標準模塊準模塊模塊的聲明部分private 或dim全局變量全局變量整個應(yīng)用程序標準模塊的聲明部分public或globalv一般只適用于局部變量。 v對于局部變量來說,可以不用dim(或static)定 義,而在需要時直接給出變量名。 v變量的類型可以用類型說明符(、&、!、#、$、 )來標識。 第四節(jié)常用內(nèi)部函數(shù)第四節(jié)常用內(nèi)部函數(shù) 1.1.內(nèi)部函數(shù)可分為內(nèi)部函數(shù)可分為5 5類類轉(zhuǎn)換函數(shù)數(shù)學(xué)函數(shù)字符串函數(shù)時間
14、日期函數(shù)隨機數(shù)函數(shù)等五類 詳見:p682.2.參數(shù)參數(shù)v“自變量”在高級語言中稱為參數(shù)。v內(nèi)部函數(shù)仍稱為自變量。v用戶編寫的過程,一律稱為參數(shù)。3.3.說明說明三角函數(shù)的自變量x是一個數(shù)值表達式, 單位為弧度。 日期和時間函數(shù)的自變量now是一個內(nèi)部變 量,不需要用戶定義。直接方式在立即窗口中執(zhí)行(可以通過命令 行直接顯示函數(shù)的執(zhí)行結(jié)果)。4.4.立即窗口立即窗口通過命令行在立即窗口中直接顯示函數(shù)執(zhí)行結(jié)果。 v視圖立即窗口。vctrl+g。例:x=2500 print x 2500 ? x+200 2700 print sqr(2) 1.4142135623731第五節(jié)字符處理與字符串函數(shù)第五
15、節(jié)字符處理與字符串函數(shù) 1.1.大字符編碼(大字符編碼(4.04.0版以上)版以上) 又稱:“unicode方式”(統(tǒng)一編碼方式) 把西文字符和中文字符作為一個整體進行統(tǒng)一編碼,每個字符均用兩個字符進行編碼,這種機制下,一個英文字符或一個漢字都看做是一個字符,所占用的存儲空間均為兩個字節(jié)。 2.2.字符串處理函數(shù)字符串處理函數(shù) 解決中西文混合字符串處理問題方案:新增加的函數(shù)與原有的字符串處理函數(shù) 相對應(yīng),在原函數(shù)名的后面增加了一個字母“b”。 如:lenb,leftb,rightb等。 print len(“basic程序設(shè)計”) 9 print lenb (“basic程序設(shè)計”) 13單字
16、節(jié)處理方式(ansi) 3.“3.“unicodeunicode”與與“ansi”ansi” 轉(zhuǎn)換函數(shù)(strconv)的格式:新字符串=strconv(待轉(zhuǎn)換字符串,轉(zhuǎn)換格式)v“待轉(zhuǎn)換字符串”可以是字符串常量,也可以是字符串變量 例4.1 編寫程序,測試strconv函數(shù)的功能 visual basic提供了處理字符串的函數(shù),用這些函數(shù)可實現(xiàn)字符串的截取、長度測試、大小寫轉(zhuǎn)換、字符匹配等操作。 字符串函數(shù)一般以類型說明符$結(jié)尾, $可省略。用于處理ansi格式的函數(shù),這類函數(shù)以字母“b”結(jié)尾。同一個字符串函數(shù)可能會有4種形式。 例:以left函數(shù)為例 left$(字符串,n) left(字
17、符串,n) leftb$(字符串,n) leftb(字符串,n) 其中有“b”的函數(shù)用于ansi格式的字符串。 1.1.刪除空白字符函數(shù)刪除空白字符函數(shù) vltrim$(字符串):去掉“字符串”左邊的空白字符。vrtrim$(字符串):去掉“字符串”右邊的空白字符。vtrim$(字符串): 去掉“字符串”兩邊的空白字符。 空白字符包括空格、tab鍵例: a$= “ good morning ” b$= ltrim$(a$) c$= rtrim$(b$) print b$ ;c$; “abc” good morning good morningabc2.2.字符串截取函數(shù)字符串截取函數(shù) 左部、右
18、部和中部截取左部截取 格 式:left$(字符串,n) 字符串:可以是常量、變量、函數(shù)或字符串連 接表達式 例:a$= “abcdef” print left$(a$,4) abcd中部截取 格式:mid$(字符串,p,n) 3.3.字符串長度測試函數(shù)字符串長度測試函數(shù) 格式:len(字符串) len(變量名)v可以測量變量的存儲空間p73a$ = abcdefghijk print mid$(a$, 3, 4) 右部截取 格式:right$(字符串,n)cdef注:n省略,從p開始截取到字符串的末尾。例: a$ = abcdefghijk print len(a$) b = len(test
19、var1#) c = len(testvar2!) d = len(testvar3%) print b, c, d結(jié)果:11 8 4 24.string$4.string$函數(shù)函數(shù) 格式: string$(n,asc碼) string$(n,字符串)返回由n個指定字符組成的字符串為asc碼返回由該asc碼對應(yīng)的n個字符為字符串,返回由該字符串第一字符組成的n個 字符的字符串。例: a$=string$(5,65) b$=string$(5, “-”) c$=string$(5, “abcde”) print a$; b$; c$ aaaaa-aaaaa5.5.空格函數(shù)空格函數(shù) 例: a$=
20、“a”+ space$(4) + “b” print a$ a b6.6.字符串匹配函數(shù)字符串匹配函數(shù) 格式:instr(首字符位置,字符串1,字符串2,n) 例: a$= “microsoft visual basic” x= instr(a$, “visual”) print x 11instr函數(shù)的返回值見p74格式: space$(n)說明:字符串2的長度小于65535。(216) instr返回一個長整型數(shù)。 首字符位置,從該位置開始查找。 n,取值0、1、2(0進行二進制比較, 區(qū)分大小寫;1比較時忽略大小寫;2基 于數(shù)據(jù)庫中包含的信息進行比較。7.7.字母大小寫轉(zhuǎn)換字母大小寫轉(zhuǎn)換
21、格式: ucase$(字符串) (小轉(zhuǎn)大) lcase$(字符串) (大轉(zhuǎn)?。?.8.插入字符串語句插入字符串語句格式: mid$(字符串,位置,l)=子字符串 含l自變量,替換的內(nèi)容是“子字符串”左部的l個字符。1 1、運算符、運算符 運算是對數(shù)據(jù)進行加工的過程,描述各種不同運算的符號稱為運算符。 例:+、-、*、/、and、or等第六節(jié)第六節(jié) 運算符和表達式運算符和表達式2 2、表達式、表達式表達式用來表示某個求值規(guī)則,由運算符、 數(shù)字、常量、變量、函數(shù)、對象和配對的圓 括號以合理的形式組合而成。表達式用于執(zhí)行某種特定的運算、操作字符 或測試數(shù)據(jù)。每個表達式只產(chǎn)生一個結(jié)果。表達式的定義方法
22、: 1.常數(shù)、常量、變量是表達式 2.表達式、運算符及表達式的組合仍是表達式3 3、表達式的數(shù)據(jù)類型、表達式的數(shù)據(jù)類型常量、常數(shù)表達式的類型仍為常量的類型。包含運算符的表達式,將根據(jù)操作數(shù)的類型 決定結(jié)果的類型。 1.若表達式中的操作數(shù)類型相同,則結(jié)果的類 型不變。 2.若表達式中的操作數(shù)類型不同,則結(jié)果的類 型為占存儲單元多的數(shù)據(jù)類型。例:例:兩個長整型數(shù)據(jù)相加,其結(jié)果類型為: 長整型(long) 一個整型數(shù)與一個單精度浮點數(shù)相加,其結(jié)果類型為: 單精度浮點型(single)4 4、表達式賦值、表達式賦值在賦值語句中,表達式結(jié)果的類型應(yīng)與變量 的類型相同。若不同,vb將表達式結(jié)果的類型轉(zhuǎn)換為
23、變量 的類型。二、算術(shù)運算符二、算術(shù)運算符1.1.算術(shù)運算符算術(shù)運算符 9個算術(shù)運算符,取負是單目運算符,其余均為雙目運算符。 冪;(-)取負;*;/浮點除;整數(shù)除; mod模運算;+;-;&連接(同“+”) 。例:53=1。 例:5 mod 3 = 2 例:102表示10的二次方, 103表示10的三次方, 250.5 表示25的平方根, 8(1/3) 表示8的立方根。v浮點數(shù)除法運算符(/)執(zhí)行標準除法操作, 與數(shù)學(xué)中的除法一樣,其結(jié)果為浮點數(shù)。v整數(shù)除法運算符()執(zhí)行整除運算,其結(jié) 果為整型值。2.2.浮點數(shù)除法與整數(shù)除法浮點數(shù)除法與整數(shù)除法3.3.取模運算取模運算v取模運算符 mod
24、用來求余數(shù)。v浮點數(shù)先進行四舍五入。4.4.算數(shù)運算符的優(yōu)先級算數(shù)運算符的優(yōu)先級冪;(-)取負;* 或 /浮點除;整數(shù)除; mod ;+ 或 -;&連接。含括號先算括號內(nèi)的運算。5. 5. 算術(shù)運算表達式算術(shù)運算表達式 由算術(shù)運算符、常數(shù)、常量、變量構(gòu)成的表達式。 例: 50*2+(70-6)/8 (x+y)*100*abs(z)/conpi x= 50*2+(70-6)/8 y= (x+y)*100*abs(z)/conpi三、三、關(guān)系運算符和關(guān)系表達式關(guān)系運算符和關(guān)系表達式visual basic提供了8個關(guān)系運算符,包括: =(相等)、或(不相等)、(小于)、 (大于)、=(小于或等于)
25、、=(大于或等于)、 like(比較樣式)、is(比較對象變量)。關(guān)系運算方式:關(guān)系運算方式:將運算符左右兩邊的表達式 進行比較,若比較式成立,則運算結(jié)果為true, 否則運算結(jié)果為false。關(guān)系表達式:關(guān)系表達式: 用關(guān)系(比較)運算符將兩個表 達式連接起來的表達式。結(jié)果是一個boolean類 型的值,即true和false。一般-1表示真,0表 示假。 四、四、邏輯運算符和邏輯表達式邏輯運算符和邏輯表達式邏輯運算也稱布爾運算。邏輯運算符連接兩個或多個關(guān)系式,組成一個 布爾表達式。visualbasic的邏輯運算符有以下6種: not(非)、and(與)、or(或)、xor(異或)、 eq
26、v(等價)、imp(蘊含)。邏輯運算表達式的結(jié)果:true 或 false。1.not1.not(非)(非)由真變?yōu)榧倩蛴杉僮優(yōu)檎?,進行“取反”運算。例:38 false ; not(38 ) true。2.and2.and(與)(與) 兩個關(guān)系表達式的值進行比較,如果兩個表達式的值為true,結(jié)果才為true ;否則為false.例:(38)and(58)or(53)xor(58)eqv(1020) 結(jié)果:true6.imp6.imp(蘊含)(蘊含) 當?shù)谝粋€表達為true,且第二個表達式為false時,結(jié)果為false. 例: 63 and 16 00000000 01111111 and 00000000 00010000 00000000 0001000063 and 1
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單位食堂聘用合同范本
- 口罩訂貨合同范本
- 經(jīng)絡(luò)與腧穴模擬習(xí)題與答案
- 個人房屋出租委托書
- 化工銷售合同范本
- 卷膜合同范本
- 勞動退休人員 合同范本
- 三七女生節(jié)活動策劃書
- 辦事處施工合同范本
- 雙方合作利益合同范本
- 三廢環(huán)保管理培訓(xùn)
- 機電運輸安全基本知識
- 基于51單片機的無功補償裝置
- 幼兒園公開課:大班語言《相反國》課件(優(yōu)化版)
- 水利設(shè)施維護投標方案(技術(shù)標)
- 2024屆湖南省長沙市湖南師大附中等校高三上學(xué)期月考(二)語文試題(解析版)
- 上海科技版小學(xué)二年級下冊綜合實踐活動全冊教案
- 氣缸磨損的測量說課教案
- 《高鐵乘務(wù)安全管理及應(yīng)急處置》課程教案-崔藝琳編寫
- 產(chǎn)品可靠性測試計劃
- 21ZJ111 變形縫建筑構(gòu)造
評論
0/150
提交評論