版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
VB語法基礎(chǔ)本章內(nèi)容及要求:1.
熟悉VB程序中代碼和語句書寫規(guī)則;2.
掌握VB數(shù)據(jù)類型;掌握VB
運(yùn)算符和表示式使用;掌握VB基本語句使用方法第1頁VB語言字符集及編碼規(guī)則編碼規(guī)則與約定
(一)編碼規(guī)則1.VB代碼中不區(qū)分字母大小寫。2.同一行上能夠書寫多條語句,但語句間要用冒號“:”分隔。3.若一個(gè)語句行不能寫下全部語句,或在尤其需要時(shí),能夠換行。換行時(shí)需在本行后加入續(xù)行符,1個(gè)空格加下劃線“_”。4.注釋以Rem開頭,也能夠使用單引號“'”,注釋內(nèi)容可直接出現(xiàn)在語句后面。
5.在程序轉(zhuǎn)向時(shí)需用到標(biāo)號,標(biāo)號是以字母開始而以冒號結(jié)束字符串。第2頁(二)約定1.為了提升程序可讀性,對于VB中關(guān)鍵字其首字母大寫,其余字母小寫2.注釋業(yè)利于程序維護(hù)和調(diào)試
Rem開始或單撇‘。比如:‘Th從sisaVBREMThisisaVB
在6.0中新增了“塊注釋/取消塊注釋”(視圖/工具欄/編輯)第3頁數(shù)據(jù)類型標(biāo)準(zhǔn)數(shù)據(jù)類型第4頁自定義類型
在模塊級別中使用,用于定義包含一個(gè)或多個(gè)元素用戶自定義數(shù)據(jù)類型。使用形式:
Type自定義類型名 元素名[([下標(biāo)])]As類型名 元素名[([下標(biāo)])]As類型名
...EndType
見下例第5頁TypeStudent XhAsSting XmAsString XbAsString NlAsInteger ScoreAsSingleEndType
比如:對于一個(gè)學(xué)生“學(xué)號”、“姓名”、“性別”、“年紀(jì)”、“入學(xué)成績”等數(shù)據(jù),為了處理數(shù)據(jù)方便,經(jīng)常需要把這些數(shù)據(jù)定義成一個(gè)新數(shù)據(jù)類型(如Student類型)。第6頁常量和變量常量及其申明有些數(shù)字我希望在程式一開始時(shí)候就決定,之后就不再改變比如:圓周率=3.14只打3.14有時(shí)候會造成日后不易維護(hù)常量定義Const常量名稱
=數(shù)值比如:ConstPi=3.14下次想要更精確時(shí)候,能夠直接改成ConstPi=3.1415,而不用每個(gè)用到地方都需要改動(dòng)第7頁變量二.變量申明
1.用Dim語句顯式申明變量形式:Dim變量名[AS類型] Dim變量名[類型符]
例 DimiCountAsinteger,sumAssingle
等價(jià)于DimiCount%,sum!2.隱式申明
VisualBasic允許用戶在編寫應(yīng)用程序時(shí),不申明變量而直接使用,系統(tǒng)暫時(shí)為新變量分配存放空間并使用,這就是隱式申明。全部隱式申明變量都是Variant數(shù)據(jù)類型。VisualBasic依據(jù)程序中賦予變量值來自動(dòng)調(diào)整變量類型。比如:第8頁
下面是一個(gè)很簡單程序,其使用變量a,b,Sum都沒有事先定義。PrivateSubForm_Click()Sum=0a=10:b=20Sum=a+bPrint"Sum=";SumEndSub3.強(qiáng)制顯式申明——OptionExplicit語句
良好編程習(xí)慣都應(yīng)該是“先申明變量,后使用變量”,這么做能夠提升程序效率,同時(shí)也使程序易于調(diào)試。VisualBasic中能夠強(qiáng)制顯式申明,能夠在窗體模塊、標(biāo)準(zhǔn)模塊和類模塊通用申明段中加入語句:OptionExplicit第9頁變量作用域概述:
在VB中,因?yàn)槟軌蛟谶^程中和模塊中申明變量,依據(jù)定義變量位置和定義變量語句不一樣,變量能夠分為:局部變量(過程級變量)窗體/模塊級變量(私有模塊級變量,能被本模塊全部過程和函數(shù)使用)全局級變量(公有模塊級變量)。第10頁過程級變量——局部變量局部變量:
在過程內(nèi)申明變量,只能在本過程中使用。
在過程內(nèi)部使用Dim或者Static關(guān)鍵字來申明變量,只在申明它們過程中才能被訪問或改變該變量值,別過程不可訪問。所以能夠在不一樣過程中申明相同名字局部變量而互不影響。第11頁例:PrivateSubForm_Load()Dimn%n=10EndSubPrivateSubFrom_Click()Dimn%Print“n=“;nEndSub程序運(yùn)行后單擊窗體,其輸出結(jié)果是什么?第12頁窗體/模塊級變量窗體/模塊級變量:
在“通用申明”段中用Dim語句或用Private語句申明變量,可被本窗體/模塊任何過程訪問。但其它模塊卻不能訪問該變量。比如:在“通用申明”段申明以下變量PrivatesAsStringDimaAsInteger,bAsSingle第13頁全局變量
全局變量也稱公有模塊級變量,在窗體模塊或標(biāo)準(zhǔn)模塊頂部“通用”申明段用Public關(guān)鍵字申明,它作用范圍是整個(gè)應(yīng)用程序,即可被本應(yīng)用程序任何過程或函數(shù)訪問。比如:
PublicaAsInteger,bAssingle第14頁3種變量申明及使用規(guī)則以下表:第15頁靜態(tài)變量
除作用域之外,變量還有存活期,在這一期間變量能夠保持它們值。在應(yīng)用程序存活期內(nèi)一直保持模塊級變量和全局變量值。不過,對于Dim申明局部變量僅當(dāng)過程執(zhí)行期間存在,當(dāng)一個(gè)過程執(zhí)行完成,它局部變量值就已經(jīng)不存在,而且變量所占據(jù)內(nèi)存也被釋放。當(dāng)下一次執(zhí)行該過程時(shí),它全部局部變量將重新初始化。概念局部變量存活期由其定義關(guān)鍵詞來決定。第16頁局部變量申明:
Dim申明:隨過程調(diào)用而分配存貯單元,變量初始化;過程體結(jié)束,變量內(nèi)容自動(dòng)消失,存貯單元釋放。
Static申明,每次調(diào)用過程,變量保持上次調(diào)用結(jié)束時(shí)值。申明形式:
Static變量名[AS類型] StaticFunction函數(shù)過程名([參數(shù)列表])[As類型]StaticSub子過程名[(參數(shù)列表)]
注意:過程名前加Static,表示該過程內(nèi)局部變量都是靜態(tài)變量。第17頁例5.2
有一個(gè)人編了下面一段程序,想用變量n記錄單擊窗體次數(shù)。PrivateSubForm_Click()DimnAsIntegern=n+1Print"已單擊次數(shù):";n&"次"EndSub分析程序運(yùn)行后屢次單擊窗體輸出結(jié)果:
要統(tǒng)計(jì)單擊窗體次數(shù),怎樣實(shí)現(xiàn)?并比較使用模塊變量和靜態(tài)變量差異。第18頁P(yáng)rivateSubForm_Click()Dimi%,isum%Fori=1To5 isum=sum(i) Printisum,
NextiEndSubPrivateFunctionsum(nAsInteger)
DimjAsInteger j=j+nsum=jEndFunction12345StaticjAsInteger結(jié)果怎樣?
補(bǔ)充例題:第19頁數(shù)組數(shù)組申明Dim數(shù)組名稱(數(shù)組元素個(gè)數(shù))As數(shù)據(jù)類型DimScore(5)AsInteger申明了一個(gè)叫Score數(shù)組這個(gè)數(shù)組有5個(gè)元素這數(shù)組5個(gè)元素都是Integer類型第20頁使用數(shù)組元素?cái)?shù)組名稱(第幾個(gè)元素)范例:Score(4)=3注意數(shù)組元素從0開始算,以之前例子,能夠拿來使用數(shù)組元素有:Score(0),Score(1),Score(2),Score(3),Score(4)不能使用超過數(shù)組定義長度元素第21頁日期型表示式日期型數(shù)據(jù)是一個(gè)特殊數(shù)值型數(shù)據(jù),只能有下面3種情況:1.一個(gè)日期型數(shù)據(jù)能夠相減:
DateB-DateA結(jié)果是一個(gè)數(shù)值型整數(shù)(兩個(gè)日期相差天數(shù))。比如:#05/08/#-#05/01/#其結(jié)果為數(shù)值:72.一個(gè)日期型數(shù)據(jù)(DateA)與一數(shù)值數(shù)據(jù)(N)可作加法運(yùn)算:DateA+N其結(jié)果仍是一個(gè)日期型數(shù)據(jù)。比如:#05/01/#+7其結(jié)果為日期型數(shù)據(jù):#05/08/#3.一個(gè)日期型數(shù)據(jù)(DateA)與一數(shù)值數(shù)據(jù)(N)可作減法運(yùn)算:
DateA-N其結(jié)果仍是一個(gè)日期型數(shù)據(jù)。比如:#05/08/#-7其結(jié)果為日期型數(shù)據(jù):#05/01/#第22頁運(yùn)算符和表示式一.算術(shù)運(yùn)算符第23頁
字符串運(yùn)算符與字符串表示式字符串運(yùn)算符有:&、+
。功效是字符串連接比如:
"ABCD"+"EFGHI"'結(jié)果為:ABCDEFGHI“VB”&“程序設(shè)計(jì)教程”'結(jié)果為:VB程序設(shè)計(jì)教程說明:當(dāng)連接符兩旁操作量都為字符串時(shí),上述兩個(gè)連接符等價(jià)。它們區(qū)分是:
+(連接運(yùn)算):兩個(gè)操作數(shù)均應(yīng)為字符串類型;
&(連接運(yùn)算):兩個(gè)操作數(shù)既可為字符型也可為數(shù)值型,當(dāng)是數(shù)值型時(shí),系統(tǒng)自動(dòng)先將其轉(zhuǎn)換為數(shù)字字符,然后進(jìn)行連接操作。第24頁例:"100"+123'結(jié)果為
223"100"+"123"'結(jié)果為
100123"Abc"+"123"‘結(jié)果為
Abc123"Abc"+123 ‘犯錯(cuò)"100"&123'結(jié)果為
100123100&123'結(jié)果為
100123"Abc"&"123"'結(jié)果為
Abc123"Abc"&123'結(jié)果為
Abc123
注意:使用運(yùn)算符“&”時(shí),變量與運(yùn)算符“&”之間應(yīng)加一個(gè)空格。這是因?yàn)榉枴?”還是長整型類型定義符,假如變量與符號“&”接在一起,VB系統(tǒng)先把它作為類型定義符處理,因而就會出現(xiàn)語法錯(cuò)誤。第25頁關(guān)系運(yùn)算符與關(guān)系表示式
關(guān)系運(yùn)算符都是雙目運(yùn)算,是用來比較兩個(gè)運(yùn)算量之間關(guān)系,關(guān)系表示式運(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+10<20False<=小于或等于10<=20True>大于10>20False>=大于或等于"This">="That"True=等于"This"="That"False<>不等于"This"<>"That"TrueLike字符串匹配"This"Like"*is"TrueIs對象比較
第26頁關(guān)系運(yùn)算規(guī)則以下:(1)當(dāng)兩個(gè)操作式均為數(shù)值型,按數(shù)值大小比較。(2)字符串比較,則按字符ASCII碼值從左到右一一比較,直到出現(xiàn)不一樣字符為止.。例:"ABCDE">"ABRA" 結(jié)果為False(3)數(shù)值型與可轉(zhuǎn)換為數(shù)值型數(shù)據(jù)比較比如:29>"189",按數(shù)值比較,結(jié)果為False。(4)數(shù)值型與不能轉(zhuǎn)換成數(shù)值型字符型比較,如:77>"sdcd",不能比較,系統(tǒng)犯錯(cuò)。(5)“Like”運(yùn)算符是VB6.0新增加。其使用格式為:str1Likestr2第27頁邏輯運(yùn)算符與邏輯表示式
Not邏輯非為單目運(yùn)算符(要求一個(gè)操作數(shù)),其它為雙目運(yùn)算符。條件表示式1And條件表示式2條件表示式均為T結(jié)果為T
條件表示式1Or條件表示式2條件表示式有一個(gè)T結(jié)果為T第28頁第29頁說明:(1)邏輯運(yùn)算符優(yōu)先級不相同,Not(邏輯非)最高,但它低于關(guān)系運(yùn)算,Imp(邏輯蘊(yùn)含)最低。(2)VB中慣用邏輯運(yùn)算符是Not、And和Or。它們用于將多個(gè)關(guān)系表示式進(jìn)行邏輯判斷。比如,數(shù)學(xué)上表示某個(gè)數(shù)在某個(gè)區(qū)域時(shí)用表示式:
10≤X<20,用VB程序中應(yīng)寫成:
X>=10AndX<20(3)參加邏輯運(yùn)算量普通都應(yīng)是邏輯型數(shù)據(jù),假如參加邏輯運(yùn)算兩操作數(shù)是數(shù)值量,則以數(shù)值二進(jìn)制值逐位進(jìn)行邏輯運(yùn)算(0當(dāng)False,1當(dāng)True)。
關(guān)系表示式與邏輯表示式常慣用在條件語句與循環(huán)語句中,作為條件控制程序流程走向。第30頁運(yùn)算符執(zhí)行次序
表示式中出現(xiàn)了各種不一樣類型運(yùn)算符時(shí),其運(yùn)算符優(yōu)先級以下:
算術(shù)運(yùn)算符>=字符運(yùn)算符>關(guān)系運(yùn)算符>邏輯運(yùn)算
說明:
1.當(dāng)一個(gè)表示式中出現(xiàn)各種運(yùn)算符時(shí),首先進(jìn)行算術(shù)運(yùn)算符,接著處理字符串連接運(yùn)算符,然后處理比較運(yùn)算符,最終處理邏輯運(yùn)算符,在各類運(yùn)算中再按攝影應(yīng)優(yōu)先次序進(jìn)行。
2.能夠用括號改變優(yōu)先次序,強(qiáng)令表示式一些部分優(yōu)先運(yùn)行。括號內(nèi)運(yùn)算總是優(yōu)先于括號外運(yùn)算。對于多重括號,總是由內(nèi)到外。第31頁表示式書寫中需注意問題(1)運(yùn)算符不能相鄰。例a+-b是錯(cuò)誤。(2)乘號不能省略。例x乘以y應(yīng)寫成:x*y
(3)括號必須成對出現(xiàn),均使用圓括號。(4)表示式從左到右在同一基準(zhǔn)并排書寫,不能出現(xiàn)上下標(biāo)(5)要注意各種運(yùn)算符優(yōu)先級別,為保持運(yùn)算次序,在寫VB表示式時(shí)需要適當(dāng)添加括號(),若用到庫函數(shù)必須按庫函要求書寫。如:
(b-sqr(b*b-4*a*c))/(2*a)(a+b)/(a-b)
第32頁流程控制第33頁判斷語句IFTHENELSE基本:If條件式成立Then dosomethingEndIf擴(kuò)展:If條件1成立Then dosomethingElse dosomethingEndIf第34頁多個(gè)條件:If條件1成立Then dosomethingElseIf條件2成立Then dosomethingElseIf條件3成立Then dosomethingElse dosomethingEndIf第35頁判斷式等于A=B不等于A<>B小于A<B大于A>B大于等于A>=B小于等于A<=B第36頁范例打分?jǐn)?shù)網(wǎng)站0~50分:你完蛋了!50~60分:差一點(diǎn)點(diǎn)而已60~80分:不錯(cuò)嘛!80~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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 防水補(bǔ)漏維修施工工程合同(3篇)
- 銷售每日工作總結(jié)
- 小學(xué)生社區(qū)服務(wù)社會實(shí)踐活動(dòng)總結(jié)
- 銀行卡租用協(xié)議(3篇)
- 渠道銷售協(xié)議標(biāo)準(zhǔn)版本百
- 有關(guān)于營銷心得體會(33篇)
- 語文黃果樹瀑布教育課件
- 全國計(jì)算機(jī)技術(shù)與軟件專業(yè)技術(shù)資格(水平)考試試題(附答案)
- 廠級安全培訓(xùn)試題及答案(網(wǎng)校專用)
- 防控傳染病演練方案
- 云計(jì)算與人工智能的協(xié)同應(yīng)用
- SB-T 11238-2023 報(bào)廢電動(dòng)汽車回收拆解技術(shù)要求
- 懸挑安全通道施工方案
- 醫(yī)學(xué)教案教學(xué)設(shè)計(jì)的教學(xué)過程與教學(xué)實(shí)施
- 《超分子化學(xué)簡介》課件
- 《通志 氏族略》鄭樵著
- 安全員崗位面試題及答案(經(jīng)典版)
- 幼兒園公開課:中班語言《金色的房子》課件
- 子宮脫垂教育查房課件
- 高端天然礦泉水項(xiàng)目融資計(jì)劃書
- 有限空間監(jiān)護(hù)人員安全職責(zé)
評論
0/150
提交評論