VB程序設計語言基礎課件_第1頁
VB程序設計語言基礎課件_第2頁
VB程序設計語言基礎課件_第3頁
VB程序設計語言基礎課件_第4頁
VB程序設計語言基礎課件_第5頁
已閱讀5頁,還剩63頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第3章VB程序設計語言基礎11/24/20221VisualBasic程序設計教程第3章VB程序設計語言基礎9/24/20221Visua第3章VB程序設計語言基礎本章將介紹構成VB應用程序的基本元素以及使用方法,主要包括數據類型、表達式和運算符和常用函數等內容。3.1數據類型3.2常量與變量3.3表達式和運算符3.4VisualBasic的常用函數11/24/20222VisualBasic程序設計教程第3章VB程序設計語言基礎本章將介紹構成VB應用程序的基3.1數據類型數據不僅僅是數值,凡是能夠輸入到計算機中、被計算機識別并加工處理的符號的集合稱之為數據。數值、文字、字符、圖形、圖像和聲音等都是數據。數據既是計算機程序處理的對象,也是運算產生的結果。數據按其構造、處理方式、用途及基本屬性,可分為若干不同的類型。11/24/20223VisualBasic程序設計教程3.1數據類型數據不僅僅是數值,凡是能夠輸入到計算機中1.數值型數據整型數(Integer)長整型數(Long)單精度浮點數(Single)雙精度浮點數(Double)貨幣型數(Currency)字節型數(Byte)11/24/20224VisualBasic程序設計教程1.數值型數據整型數(Integer)9/24/20222.字符型數據(String)用雙引號括起來的一串字符。一個西文字符占1個字節,一個漢字或全角字符占2個字節。VB中字符串分兩種:定長字符串和變長字符串。例如:“123”、“VisualBasic”、"北京奧運"、""(空字符串)11/24/20225VisualBasic程序設計教程2.字符型數據(String)用雙引號括起來的一串字符。93.日期型數據日期型數據表示由年、月、日組成的日期信息或由時、分、秒組成的時間信息。日期型數據占8個字節內存。日期型數據的書寫格式為mm/dd/yyyy或mm-dd-yyyy,或者是其他可以辨認的文本日期。11/24/20226VisualBasic程序設計教程3.日期型數據日期型數據表示由年、月、日組成的日期信息或由4.邏輯型數據邏輯型數據也稱為布爾型數據,在內存中占2個字節。邏輯型數據取值只有兩種:True(真)和False(假)。11/24/20227VisualBasic程序設計教程4.邏輯型數據邏輯型數據也稱為布爾型數據,在內存中占2個字5.變體型數據變體型數據是一種可變的數據類型,它可以表示多種類型的數據,包括數值、字符串、日期/時間等。11/24/20228VisualBasic程序設計教程5.變體型數據變體型數據是一種可變的數據類型,它可以表示多6.對象型數據對象型數據用來表示圖形、OLE對象或其他對象,用4個字節存儲。11/24/20229VisualBasic程序設計教程6.對象型數據對象型數據用來表示圖形、OLE對象或其他對象3.2常量與變量3.2.1常量3.2.2變量11/24/202210VisualBasic程序設計教程3.2常量與變量3.2.1常量9/24/20223.2.1常量常量是指在程序中事先設置、運行過程中數值保持不變的數據。VB中常量分直接常量和符號常量兩種形式。11/24/202211VisualBasic程序設計教程3.2.1常量常量是指在程序中事先設置、運行過程中數值保1.直接常量-1字符串常量字符串常量就是用雙引號括起來的一串字符。例如:“date”,“#”,“75.25”等。數值常量數值常量有四種表示形式:整型數、長整型數、貨幣型數、浮點數。11/24/202212VisualBasic程序設計教程1.直接常量-1字符串常量9/24/202212Visu1.直接常量-2邏輯(布爾)常量邏輯常量只有True和False兩個值。將邏輯常量轉換成整形數時True為-1,False為0;而數值型數據轉換成邏輯常量時非零為True,零為False。日期常量日期型常量的表示方法是用兩個“#”號把表示日期和時間的值括起來。11/24/202213VisualBasic程序設計教程1.直接常量-2邏輯(布爾)常量9/24/202213Vi1.直接常量-3如果需要特別指明一個常量的類型,可以在常數后面加上類型說明符,如表所示。類型符數據類型%整型&長整型!單精度浮點數#雙精度浮點數@貨幣型$字符串型11/24/202214VisualBasic程序設計教程1.直接常量-3如果需要特別指明一個常量的類型,可以在常數后2.符號常量符號常量是指用事先定義的符號(即常量名)代表具體的常量,通常用來代替數值或字符串。符號常量又分兩種:系統常量和用戶自定義常量。11/24/202215VisualBasic程序設計教程2.符號常量符號常量是指用事先定義的符號(即常量名)代表具系統常量系統常量是VB提供的預定義常量,可以在程序中直接使用。預定義常量又稱內部常量,可與應用程序的對象、方法和屬性一起使用。內部常量以vb打頭,例如:vbOK,vbYesNOCancel等。11/24/202216VisualBasic程序設計教程系統常量系統常量是VB提供的預定義常量,可以在程序中直接使用戶自定義常量-1VB允許用戶創建自己的符號常量,稱之為用戶定義符號常量。用戶定義符號常量使用Const語句來給常量分配名字、值和類型。聲明(定義)常量的語法為:Const<常量名>[As<數據類型>]=<表達式>11/24/202217VisualBasic程序設計教程用戶自定義常量-1VB允許用戶創建自己的符號常量,稱之為用用戶自定義常量-2例如:ConstPI#=3.141592653ConstMin=256Max=999,Constabc!=168.811/24/202218VisualBasic程序設計教程用戶自定義常量-2例如:9/24/202218Visual3.2.2變量變量是指在程序運行過程中,取值可以改變的數據。VB有兩大類型變量:屬性變量和內存(聲明)變量。11/24/202219VisualBasic程序設計教程3.2.2變量變量是指在程序運行過程中,取值可以改變的1.變量的命名規則①變量名必須以字母或漢字開頭,由字母、數字、下劃線等字符組成,最后一個字符可以是類型說明符。②變量名中間不能有空格和小數點,變量名的長度不能超過255個字符。③變量名不能用VB中的保留字。④變量名不區分大小寫,即ABC、AbC、aBC都被看成是同一個變量名。11/24/202220VisualBasic程序設計教程1.變量的命名規則①變量名必須以字母或漢字開頭,由字母、2.定義變量一般是先定義(聲明)后使用。定義變量的目的就是為變量命名,同時由系統通過其類型為它分配存貯單元。變量也可以不加任何定義而直接使用。變量的定義分顯式定義和隱式定義兩種。11/24/202221VisualBasic程序設計教程2.定義變量一般是先定義(聲明)后使用。9/24/2022顯式定義所謂顯式定義,是指每個變量在使用前先定義。顯式定義語句的格式為:Dim<變量名1>[As<類型>][,<變量名2>[As<類型>]Dim<變量名1>[<類型符>][,<變量名2><類型符>]

11/24/202222VisualBasic程序設計教程顯式定義所謂顯式定義,是指每個變量在使用前先定義。9/24/隱式定義VB允許用戶編程時可以不加任何定義而直接使用變量,系統運行時再臨時為變量分配存儲空間,通常稱這種方式為隱式定義。11/24/202223VisualBasic程序設計教程隱式定義VB允許用戶編程時可以不加任何定義而直接使用變量,3.強制顯示定義變量強制用戶顯示定義變量。選擇“工具”菜單的“選項”命令,打開“選項”對話框,然后選擇“編輯器”選項卡下的“要求變量聲明”復選框,再單擊“確定”按鈕即可。OptionExplicit11/24/202224VisualBasic程序設計教程3.強制顯示定義變量強制用戶顯示定義變量。9/24/2023.3表達式和運算符表達式是數據之間運算關系的表達形式,由常量、變量、函數等數據和運算符組成。3.3.1算術運算符和算術表達式3.3.2字符串運算符3.3.3關系運算符和關系表達式3.3.4邏輯運算符和邏輯表達式3.3.5日期運算符3.3.6運算符的優先級11/24/202225VisualBasic程序設計教程3.3表達式和運算符表達式是數據之間運算關系的表達形式3.3.1算術運算符和算術表達式優先級運算運算符表達式例子1冪^M^N2取負--N3乘法、浮點除法*、/M*N、M/N4整數除法\M\N5取模(余數)ModMModN6加法、減法+、-M+N、M-N11/24/202226VisualBasic程序設計教程3.3.1算術運算符和算術表達式優先級運算運1.冪運算冪運算用來計算乘方和方根。例如:2^3 2的3次方,結果為811/24/202227VisualBasic程序設計教程1.冪運算冪運算用來計算乘方和方根。9/24/2022272.整數除法與浮點除法-1整數除法的操作數一般為整型值,結果為整型值。如果操作數帶有小數,系統先將操作數進行舍入處理,將其變為整型數或長整型數,然后再進行整除運算,運算結果被截斷為整型數或長整型數,不進行舍入處理。11/24/202228VisualBasic程序設計教程2.整數除法與浮點除法-1整數除法的操作數一般為整型值,結2.整數除法與浮點除法-2例如:5/2結果為2.55\2結果為224.4\5結果為624.6\5結果為511/24/202229VisualBasic程序設計教程2.整數除法與浮點除法-2例如:9/24/202229V3.取模運算取模運算用來求第1個操作數整除第2個操作數所得的余數,其結果的正負號始終與第1個操作數的符號相同。通常用來判斷一個數是否能被另一個數整除。例如:7Mod3 結果為17Mod-3 結果為1-7Mod3 結果為-1-7Mod–3 結果為-111/24/202230VisualBasic程序設計教程3.取模運算取模運算用來求第1個操作數整除第2個操作數所得4.算術表達式-1算術表達式由算術運算符,數值型常量、變量、函數和括號組成,其運算結果為一數值。表達式的書寫原則:表達式中的所有操作數和運算符都必須在同一水平線上。括號必須成對出現,均使用圓括號。11/24/202231VisualBasic程序設計教程4.算術表達式-1算術表達式由算術運算符,數值型常量、變量4.算術表達式-2算術運算符的優先級當算術表達式中出現多個算術運算符時,按表3-3中運算符的優先級決定其運算順序,冪運算的優先級最高,加、減運算的優先級最低。11/24/202232VisualBasic程序設計教程4.算術表達式-2算術運算符的優先級9/24/202234.算術表達式-3算術運算中數據類型的轉換在算術運算中,如果操作數具有不同的數據精度,VB規定運算結果的數據類型采用精度高的數據類型。Integer<long<Single<Double<Currency

11/24/202233VisualBasic程序設計教程4.算術表達式-3算術運算中數據類型的轉換9/24/203.3.2字符串運算符字符串運算符有兩個“&”和“+”,用來連接兩個或更多個字符串。格式:<字符串1>&<字符串2>[&<字符串3>]…11/24/202234VisualBasic程序設計教程3.3.2字符串運算符字符串運算符有兩個“&”和“+”3.3.3關系運算符和關系表達式-1關系運算符也稱比較運算符,用來對兩個相同類型的表達式進行比較,其結果是一個邏輯值,若關系成立,結果為True(真),否則為False(假)。11/24/202235VisualBasic程序設計教程3.3.3關系運算符和關系表達式-1關系運算符也稱比較3.3.3關系運算符和關系表達式-2運算符含義實例結果=等于3+8=15False>大于"bcde">"abde"True<小于"ABCD">"abde"False>=大于等于"fg">="abc"True<=小于等于"2008">="2009"False<>或><不等于"New"<>"new"TrueLike字符竄匹配"New"like"*ew"TrueIs比較對象11/24/202236VisualBasic程序設計教程3.3.3關系運算符和關系表達式-2運算符含3.3.4邏輯運算符和邏輯表達式邏輯運算又稱布爾運算,用邏輯運算符連接兩個或多個關系表達式,構成邏輯表達式。其運算結果為邏輯型數據,即True(真)或False(假)。11/24/202237VisualBasic程序設計教程3.3.4邏輯運算符和邏輯表達式邏輯運算又稱布爾運算,非(Not)運算進行取反運算。例如:a=2:b=6Not(a>b)結果為TrueNot–1結果為0Not0結果為–111/24/202238VisualBasic程序設計教程非(Not)運算進行取反運算。9/24/202238Vis與(And)運算兩個表達式均為True,結果才為True,否則為False。例如:a=2:b=6(a<b)And(7>3)結果為True11/24/202239VisualBasic程序設計教程與(And)運算兩個表達式均為True,結果才為True,或(Or)運算兩個表達式只要有一個為True,結果為True,只有當兩個都為False,結果才是False。例如:a=2:b=6(a<b)Or(4>7)結果為True11/24/202240VisualBasic程序設計教程或(Or)運算兩個表達式只要有一個為True,結果為Tru異或(Xor)運算兩個表達式同時為True或同時為False,結果為False,否則為True。例如:(2<7)Xor(3>5)結果為True11/24/202241VisualBasic程序設計教程異或(Xor)運算兩個表達式同時為True或同時為Fals等價(Eqv)運算兩個表達式同時為True或同時為False,結果為True,否則為False。例如:(2<7)Eqv(3>5)結果為False11/24/202242VisualBasic程序設計教程等價(Eqv)運算兩個表達式同時為True或同時為Fals蘊含(Imp)運算當第1個表達式為True,第2個表達式為False時,結果為False。例如:(2<7)Imp(3>5)結果為False11/24/202243VisualBasic程序設計教程蘊含(Imp)運算當第1個表達式為True,第2個表達式為3.3.5日期運算符日期型數據只有加(+)和減(-)兩個運算符。兩個日期型數據相減,結果是一個整型數據,即兩個日期相差的天數。日期型數據加上(或減去)一個整型數據,結果仍為一日期型數據。11/24/202244VisualBasic程序設計教程3.3.5日期運算符日期型數據只有加(+)和減(-)兩3.3.6運算符的優先級各運算符的優先級為:①數值運算符;②字符串運算符;③關系運算符;④邏輯運算符。如果表達式中有函數和括號,則先做函數和括號內的表達式。11/24/202245VisualBasic程序設計教程3.3.6運算符的優先級各運算符的優先級為:9/24/3.4VisualBasic的常用函數3.4.1算術函數3.4.2字符串函數3.4.3數據類型轉換函數3.4.4日期和時間函數3.4.5測試函數3.4.6格式函數Format11/24/202246VisualBasic程序設計教程3.4VisualBasic的常用函數3.4.13.4.1算術函數函數格式功能Sin(X)返回X的正弦值Cos(X)返回X的余弦值Abs(X)返回X的絕對值Sgn(X)返回X的符號X<0返回-1,X=0返回0,X>0返回1Sqr(X)返回X的平方根(X>=0)Exp(X)返回e的X次方Rnd(X)產生[0,1)之間的隨機數11/24/202247VisualBasic程序設計教程3.4.1算術函數函數格式功能Sin(X1.隨機函數-1隨機函數Rnd(x),產生一個[0,1)之間的Single型的隨機數。格式為:Rnd[(expN)11/24/202248VisualBasic程序設計教程1.隨機函數-1隨機函數Rnd(x),產生一個[0,11.隨機函數-2產生指定區間的隨機數的方法為:[0,x)區間的隨機浮點數:Rnd*x[m,n)區間的隨機浮點數:m+Rnd*(n–m)[i,j]區間的隨機整數:Int(i+Rnd*(j–i+1))11/24/202249VisualBasic程序設計教程1.隨機函數-2產生指定區間的隨機數的方法為:9/24/22.隨機數語句當一個應用程序不斷地重復使用隨機函數Rnd,VB可能會提供相同的種子,即同一序列的隨機數可能會反復出現,用隨機數語句可以消除這種情況。隨機數語句的格式為:Randomize[expN]11/24/202250VisualBasic程序設計教程2.隨機數語句當一個應用程序不斷地重復使用隨機函數Rnd,3.4.2字符串函數函數格式功能Ltrim(字符串)刪除“字符串”左邊的空白字符Rtrim(字符串)刪除“字符串”右邊的空白字符Trim(字符串)刪除“字符串”左右兩邊的空白字符Len(字符串|變量名)返回字符串的長度Left(字符串,n)返回“字符串”的前n個字符Mid(字符串,m,n)從第m個字符開始,向后截取n個字符Right(字符串,n)返回“字符串”的最后n個字符String(n,|ASCII碼)返回由“字符串”中首字符或“ASCII碼”組成的n個相同的字符串Ucase(字符串)把“字符串”中的小寫字母轉換為大寫字母Lcase(字符串)把“字符串”中的大寫字母轉換為小寫字母Space(n)返回由n個空格組成的字符串InStr([m,]c1,c2[,n])在c1中從第m個字符開始找c2,省略m時從頭開始找,返回第一次找到c2的開始位置,找不到為0。11/24/202251VisualBasic程序設計教程3.4.2字符串函數函數格式功能Ltri1.刪除空白字符函數格式1:Ltrim(字符串)格式2:Rtrim(字符串)格式3:Trim(字符串)11/24/202252VisualBasic程序設計教程1.刪除空白字符函數格式1:Ltrim(字符串)9/24/2.字符串長度測試函數格式:Len(字符串|變量名)例如:s1="計算機"一個英文字符或一個漢字都看做是一個字符,均占用2個字節的存儲空間。11/24/202253VisualBasic程序設計教程2.字符串長度測試函數格式:Len(字符串|變量名)9/3.字符串截取函數-1格式1:Left(字符串,n)格式2:Mid(字符串,m,n)格式3:Right(字符串,n)11/24/202254VisualBasic程序設計教程3.字符串截取函數-1格式1:Left(字符串,n)9/23.字符串截取函數-2例如:v="GoodLuck"v1=Left(v,4)v2=Right(v,4)v3=Mid(v,1,4)11/24/202255VisualBasic程序設計教程3.字符串截取函數-2例如:v="GoodLuck"9/24.返回指定字符串函數格式:String(n,字符串|ASCII碼)例如:a=string(3,65)b=string(3,"#")11/24/202256VisualBasic程序設計教程4.返回指定字符串函數格式:String(n,字符串|AS5.大小寫字母轉換函數格式1:Ucase(字符串)格式2:Lcase(字符串)11/24/202257VisualBasic程序設計教程5.大小寫字母轉換函數格式1:Ucase(字符串)9/246.空格函數格式:Space(n)其中:例如:u="BBC"+Space(2)+"CDD"11/24/202258VisualBasic程序設計教程6.空格函數格式:Space(n)其中:9/24/20227.字符串匹配函數格式:InStr([m,]c1,c2[,n])例如:?InStr(2,"asd","a",0)11/24/202259VisualBasic程序設計教程7.字符串匹配函數格式:InStr([m,]c1,c2[,3.4.3數據類型轉換函數函數格式功能實例結果Asc(String)返回字符串中第一個字符的ASCII碼Asc("a")97Chr(X)將ASCII碼轉換成字符Chr(65)AInt(X)返回不大于自然數X的最大整數Int(-34.5)-35Cint(X)將X取整,小數部分舍入處理Cint(-34.51)-35Fix(X)將X取整Fix(-34.5)-34Str(X)將X的值換成字符串Str("-23.5")-23.5Val(String)將字符串換成數值Val("45EF")4511/24/202260VisualBasic程序設計教程3.4.3數據類型轉換函數函數格式功能實3.4.4日期和時間函數函數格式功能Date()返回計算機系統當前日期(年-月-日)Day(Now)返回當前月中的日(1~31)WeekDay(Now)返回當前星期(1~7)Month(Now)返回當前月份(1~12)Year(Now)返回當前年份(YYYY)Hour(Now)返回當前小時Minute(Now)返回當前分鐘Second(Now)返回當前秒Now()返回系統日期和時間Time()返回系統時間11/24/202261VisualBasic程序設計教程3.4.4日期和時間函數函數格式功能Da例3-1(界面)【例3-1】在窗體Form1上有文本框Text1、Text2、Text3、Text4、Text5和Text6,要求單擊窗體時,在6個文本框Text1中分別顯示當前系統的年、月、日、時、分和秒。如圖所示。11/24/202262VisualBasic程序設計教程例3-1(界面)【例3-1】在窗體Form1上有文本框Tex例3-1(語句)代碼如下:PrivateSubForm_Click()Text1.Text=Year(Now)Text2.Text=Month(Now)Text3.Text=Day(Now)Text4.Text=Hour(Now)Text5.Text=Minute(Now)Text6.Text=Second(Now)EndSub11/24/202263VisualBasic程序設計教程例3-1(語句)代碼如下:9/24/202263Visual3.4.5測試函數函數格式功能返回值的類型IIf(E,z1,z2)若表達式E為True,返回表達式z1的值,否則返回表達式z2的值由z1、z2的值決定IsNull(E)測試表達式是否不包含任何有效數據(Null)BooleanIsNumeric(E)測試表達式的值是否為數值型BooleanIsArray(V)測試變量是否為數組BooleanVarType(E)返回表達式的值類型對應的整數Integer11/24/202264VisualBasic程序設計教程3.4.5測試函數函數格式功能返回值的類3.4.6格式函數Format格式函數Format可以將要輸出數據以某種特定的格式輸出,其返回值是字符串。Format函數的格式為:Format(表達式[,格式字符串])

溫馨提示

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

評論

0/150

提交評論