VB語法市公開課特等獎(jiǎng)市賽課微課一等獎(jiǎng)?wù)n件_第1頁
VB語法市公開課特等獎(jiǎng)市賽課微課一等獎(jiǎng)?wù)n件_第2頁
VB語法市公開課特等獎(jiǎng)市賽課微課一等獎(jiǎng)?wù)n件_第3頁
VB語法市公開課特等獎(jiǎng)市賽課微課一等獎(jiǎng)?wù)n件_第4頁
VB語法市公開課特等獎(jiǎng)市賽課微課一等獎(jiǎng)?wù)n件_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論