chap3(程序設(shè)計(jì)基礎(chǔ))_第1頁(yè)
chap3(程序設(shè)計(jì)基礎(chǔ))_第2頁(yè)
chap3(程序設(shè)計(jì)基礎(chǔ))_第3頁(yè)
chap3(程序設(shè)計(jì)基礎(chǔ))_第4頁(yè)
chap3(程序設(shè)計(jì)基礎(chǔ))_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

第三章

VB程序設(shè)計(jì)基礎(chǔ)本章主要內(nèi)容數(shù)據(jù)類型常量與變量運(yùn)算符、表達(dá)式及運(yùn)算的優(yōu)先級(jí)常用內(nèi)部函數(shù)3.1數(shù)據(jù)類型數(shù)據(jù)是程序的必要組成部分,也是程序處理的對(duì)象。所有數(shù)據(jù)和變量都具有數(shù)據(jù)類型,以決定其操作方式、取值范圍、所占據(jù)的存儲(chǔ)空間大小。VB提供的標(biāo)準(zhǔn)數(shù)據(jù)類型數(shù)據(jù)類型關(guān)鍵字前綴類型符占字節(jié)數(shù)其他字符串型StringStr$字節(jié)型ByteByt10~255整型IntegerInt%2長(zhǎng)整型LongLng&4單精度型SingleSng!4雙精度型DoubleDbl#8VB提供的標(biāo)準(zhǔn)數(shù)據(jù)類型(續(xù))數(shù)據(jù)類型關(guān)鍵字前綴類型符占字節(jié)數(shù)其他貨幣型currencyCur@8表示錢款邏輯型BooleanBln2TrueFalse對(duì)象型ObjectObj4日期型DateDtm8mm/dd/yy變體數(shù)據(jù)類型variantvnt按需0.機(jī)器數(shù)存儲(chǔ)的基本知識(shí)二~十進(jìn)制轉(zhuǎn)換整型常量進(jìn)制十進(jìn)制數(shù)值111十1111111二151*23+1*22+1*21+1*20=15101二51*22+0*21+1*20=5

byte型:000000000~11111111255(28-1)

~1*27+1*26+1*25+1*24+1*23+1*22+1*21+1*20integer型:1000000000000000-32768(-215)~011111111111111132767(215-1)

關(guān)于取值范圍(機(jī)器中的數(shù)一般用補(bǔ)碼表示)符號(hào)位若變量為byte型:00001101若變量為integer型:00000000

00001101

若變量為long型:

00000000

00000000

00000000

00001101

一個(gè)值為13的變量在計(jì)算機(jī)內(nèi)的存儲(chǔ)情況符號(hào)位1.Integer數(shù)據(jù)類型表示形式舉例十進(jìn)制78、-8909八進(jìn)制&347、&O1266十六進(jìn)制&H76、&H32F外觀:不帶小數(shù)點(diǎn)和指數(shù)符號(hào),可帶正負(fù)號(hào)的整數(shù)2.浮點(diǎn)數(shù)(實(shí)型)分類舉例單精度浮點(diǎn)數(shù)single123.45E3、123.45e+3雙精度浮點(diǎn)數(shù)double123.45678D3、123.45678d-3外觀:帶有小數(shù)部分的數(shù)值。通常由3部分組成:尾數(shù)、符號(hào)、指數(shù)。3.String數(shù)據(jù)類型定義----雙引號(hào)界定的一個(gè)字符序列。例:“Hello”

“&*%^”

“”(空字符串)說(shuō)明雙引號(hào)起界定作用,字符串輸出時(shí)不顯示雙引號(hào)。串中的字符區(qū)分大小寫。

DimSAsStringdimS$S=“Database”S$=“howdouknow”

String型變量的長(zhǎng)度默認(rèn)是可變的prints(在窗體輸出howdouknow,無(wú)雙引號(hào))

定長(zhǎng)String型變量聲明格式:

Dim變量名

asString*size4.Boolean數(shù)據(jù)類型

若變量的值只能取2個(gè)值,可將其聲明為Boolean(布爾)類型。VB中,非0為“真”(True),一般以-1表示“真”0為“假”(false)

True

-1

false

0非零True零falseBoolean類型變量的缺省值為False。邏輯值數(shù)值數(shù)值邏輯值5.Date數(shù)據(jù)類型

用于存儲(chǔ)Date和Time值,以#括起來(lái)的任何在字面上被認(rèn)作日期和時(shí)間的字符。

DimSomeDateAsDateSomeDate=#1980-03-16#SomeDate=#3-6-9313:20#SomeDate=#March2719931:20am#VS.“March2719931:20am”6.Variant數(shù)據(jù)類型

缺省(默認(rèn))類型,可表示任何值,包括數(shù)值、字符串、日期/時(shí)間等。VB會(huì)自動(dòng)完成Variant變量任何必要的轉(zhuǎn)換。例如:DimSomeValueasvariant

SomeValue="17"

‘變量值為字符串“17”

SomeValue=SomeValue–15

‘變量值為數(shù)值2

SomeValue=#3-6-9313:20#7.自定義數(shù)據(jù)類型在模塊的聲明部分☆可以建立自定義數(shù)據(jù)類型。語(yǔ)法格式:

Type自定義類型名 元素As類型 …

EndType

例TypeStuentTypeintNoasintegerstrNameasstring*30blnSexasbooleansngMark(1to4)assingle

EndTypeDimstuasstudentType引用:變量名.元素名如:No=25與integer地位類似3.2常量與變量名字的命名規(guī)則常量變量1名字的命名規(guī)則以字母或漢字開頭,后跟字母、漢字、數(shù)字或下劃線組成的序列長(zhǎng)度不超過(guò)255個(gè)字符不與VB中的關(guān)鍵字重名不區(qū)分大小寫字母為提高程序的可讀性,可在變量名前加前綴,表明該變量的數(shù)據(jù)類型變量名、過(guò)程名、符號(hào)常量名、記錄類型名、元素名等的命名均遵循上述規(guī)則。2常量常量-------在程序運(yùn)行期間其值不發(fā)生變化的數(shù)值、字符串或標(biāo)識(shí)符。如:35.6、“hello!”、PRICE(見(jiàn)后頁(yè)聲明)注意:不能給常量賦值分類:用戶自定義常量:

用Const語(yǔ)句聲明系統(tǒng)提供的常量:內(nèi)部的常量、系統(tǒng)定義的常量,由VB系統(tǒng)或引用的對(duì)象提供。用戶自定義常量語(yǔ)法:

Const常量名[As類型]=表達(dá)式privatesubcommand1_click()constPRICE=30dimnum,totalasintegernum=10total=num*PRICEprint“total=”;totalendsub

系統(tǒng)提供的常量將窗口極大化語(yǔ)句:WAY1:

Form1.windowState=vbMaxmizedWAY2:Form1.windowstate=2

windowState屬性取值常量常量值窗口狀態(tài)vbNormal0正常vbMinimized1極小化vbMaximized2極大化3變量定義:存儲(chǔ)和調(diào)用信息的標(biāo)識(shí)符。特點(diǎn):變量在內(nèi)存中占據(jù)一定的存儲(chǔ)單元,該存儲(chǔ)單元里存放變量的值。在程序運(yùn)行過(guò)程中其值可變。value1變量名變量值512語(yǔ)法:dim變量名[As類型]舉例:

dimi,jAsIntegerdimiasvariant,jasintegerdimiasvariant,j%dimyourNameAsString,BillsPaidAsCurrencydimtest,amountdimtestasvariant,amountasvariant變量的隱式聲明一個(gè)標(biāo)識(shí)符未經(jīng)dim語(yǔ)句聲明便直接使用,稱為~。系統(tǒng)默認(rèn)其為變體(variant)類型。使用“變量的隱式說(shuō)明”容易導(dǎo)致一些難以查找的錯(cuò)誤。強(qiáng)制顯式聲明方法:☆(1)在程序模塊的通用聲明段加入聲明語(yǔ)句:

optionexplicit(2)[工具]—[選項(xiàng)]—[編輯器]下設(shè)置3.3運(yùn)算符、表達(dá)式及運(yùn)算的優(yōu)先級(jí)運(yùn)算符的類型:算術(shù)、關(guān)系、邏輯、連接、賦值

“表達(dá)式=運(yùn)算符+運(yùn)算量”常量、變量、函數(shù)、表達(dá)式1、算術(shù)運(yùn)算符2023/1/1129-------------------------------------1冪^x^y2取負(fù)--x

3

乘法*x*y

3

浮點(diǎn)除法/x/y4整數(shù)除法\x\y5

取模modxmody

6加法+x+y

6

減法-x-y運(yùn)算優(yōu)先級(jí)運(yùn)算算術(shù)運(yùn)算符表達(dá)式算術(shù)運(yùn)算符舉例表達(dá)式結(jié)果---------------------------------3+2*717(3+2)*73514/5*25.614\5*2127^1/3927^(1/3)325.68mod6.9952、關(guān)系運(yùn)算符作用:比較兩個(gè)操作數(shù)的大小包括:=>>=<<=<>關(guān)系運(yùn)算符的優(yōu)先級(jí)相同舉例:

關(guān)系表達(dá)式結(jié)果“A”<“Z”、“0”<“9”True“ABCD”>“ABR”false“23”<=“3”true23<=3false從左至右按照字符的ASCII碼值一一比較ASCII碼表3、邏輯運(yùn)算符邏輯運(yùn)算符含義優(yōu)先級(jí)Not取反1And與2Or或3Xor異或3Eqv等價(jià)4imp蘊(yùn)含5xyNotxxandyXory-1-10-1-1-1000-10-1-10-100-100-1表示True,0表示FalsexyxxoryxeqvyXimpy-1-10-1-1-10-1000-1-10-1000-1-1-1表示True,0表示False說(shuō)明進(jìn)行邏輯運(yùn)算時(shí),只要有一個(gè)操作數(shù)為Null,結(jié)果將返回Null。4、連接運(yùn)算符&、+

(P51)作用:&、+都能用于兩個(gè)字符串的連接舉例:“你好,”+“世界!”

=>“你好,世界!”“你好,”&“世界!”

=>“你好,世界!”a&b字符串變量后面要有空格不能寫成:a&b區(qū)別:

“xyz”&12=>“xyz12”

“xyz”+12出錯(cuò)&

強(qiáng)制兩個(gè)表達(dá)式按字符串連接,即使被連接的表達(dá)式不是字符串。+

兩個(gè)表達(dá)式都是字符串時(shí)按字符串連接,否則視具體情況會(huì)有不同結(jié)果某些情況下,使用&運(yùn)算符更安全5、賦值運(yùn)算符=語(yǔ)法:Variable=

表達(dá)式可以是變量、數(shù)組元素、對(duì)象的屬性??梢允浅A俊⒆兞?、函數(shù)調(diào)用或用運(yùn)算符連接的式子,須有確定的值。6、運(yùn)算符的優(yōu)先級(jí)別指數(shù)運(yùn)算(^)負(fù)數(shù)(–)乘、浮點(diǎn)除(*、/)算術(shù)運(yùn)算符整除(\)求模(Mod)加、減(+、–)字符串連接(&)比較運(yùn)算符優(yōu)先順序都相同

邏輯運(yùn)算符:Not=>And=>Or、

Xor=>

Eqv=>

Imp。先后計(jì)算步驟:

16/2^3*6-482128計(jì)算步驟:2=2ornot2>0and(2-2)/1<>0

00TrueFalseTrueFalseFalseTrue書寫表達(dá)式注意乘號(hào)(*)不能省略,也不能用“.”代替括號(hào)可以改變運(yùn)算順序。只能用圓括號(hào)。判斷x是否在區(qū)間[a,b],數(shù)學(xué)上的表示是:a<=x<=b但VB中應(yīng)為:a<=xandx<=b3.4常用內(nèi)部函數(shù)數(shù)學(xué)函數(shù)字符串函數(shù)判斷函數(shù)轉(zhuǎn)換函數(shù)日期和時(shí)間函數(shù)Shell函數(shù)數(shù)學(xué)函數(shù)(1)Sin(x)——返回X的正弦值,X的單位為弧度。Cos(x)——返回X的余弦值Tan(x)——返回X的正切值A(chǔ)tn(x)——返回X的反正切值,返回值單位為弧度。

Log(x)——返回X的自然對(duì)數(shù)。

Exp(x)——返回以e為底的X的指數(shù)值。

數(shù)學(xué)函數(shù)(2)Sqr(x)——返回X的平方根值。

Abs(x)——返回X的絕對(duì)值。

Hex(x)——以字符串形式返回X的十六進(jìn)制值。Oct(x)——以字符串形式返回X的八進(jìn)制值。

Rnd(x)——產(chǎn)生一個(gè)介于0~1之間的單精度隨機(jī)數(shù)。

Int(x)——返回不大于參數(shù)的最大整數(shù)。

int(3.14159)=3int(-3.14159)=-4

字符串函數(shù)(1)InStr([起始位置],字符串1,字符串2[,比較類型])——字符串2在字符串1中第一次出現(xiàn)的位置。InStrRev(字符串1,字符串2[起始位置[,比較類型]]—與InStr()函數(shù)相似,區(qū)別是從字符串1的后面開始向前查找。LTrim(字符串)——去掉字符串左邊的空格。Rtrim(字符串)——去掉字符串右邊的空格。Trim(字符串)——去掉字符串的左右空格。

Left(字符串,個(gè)數(shù))——取出字符串左邊指定個(gè)數(shù)的字符。

字符串函數(shù)(2)Right(字符串,個(gè)數(shù))——取出字符串右邊指定個(gè)數(shù)的字符。Mid(字符串,起始位置[,個(gè)數(shù)])——取字符串由起始位置開始的指定個(gè)數(shù)的字符。

Len(字符串或字符變量)——計(jì)算字符串長(zhǎng)度。Ucase(字符串)——將字符串的小寫字母轉(zhuǎn)換為大寫字母。Lcase(字符串)——將字符串的大寫字母轉(zhuǎn)換為小寫字母。

Space(個(gè)數(shù))——

溫馨提示

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

評(píng)論

0/150

提交評(píng)論