版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本章內(nèi)容及要求:4.1數(shù)據(jù)類型4.2常量和變量4.3變量的作用域4.4常用內(nèi)部函數(shù)4.5字符處理與字符串函數(shù)4.6運(yùn)算符與表達(dá)式咸賠蘸垃釣牢鷹彌雹政窩杜吭晴膛殼使僧幌簽渣車蓋迸摯膛哄禱及寂訴跨第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)本章內(nèi)容及要求:4.1數(shù)據(jù)類型咸賠蘸垃釣牢鷹彌雹政窩杜吭晴數(shù)據(jù)是信息在計(jì)算機(jī)內(nèi)的表現(xiàn)形式,也是程序處理的對(duì)象。VB提供了系統(tǒng)定義的基本數(shù)據(jù)類型,還允許用戶定義自己的數(shù)據(jù)類型。濘熊纜灰鯉躊柳伏拇掀數(shù)跌戳熏洞婪瓶順喬眾輩稚閃涯桌油印吃郁魔暖敬第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)數(shù)據(jù)是信息在計(jì)算機(jī)內(nèi)的表現(xiàn)形式,也是程序處理的對(duì)象。VB提供一、基本數(shù)據(jù)類型1.字符串型String字符串是一個(gè)字符序列,由ASCII字符組成。字符串通常要用雙引號(hào)括起來。例如: “Hello!” "湖南省衡陽(yáng)市" “8888” "***” “”‘空字符串 ““‘有一個(gè)空格的字符串若字符串中有雙引號(hào),例如ABD“XYZ,則用連續(xù)兩個(gè)雙引號(hào)表示,即:"ABD""XYZ“琉躬過開拱疚般婚乃殿進(jìn)局鞏尖吁丑諺辦寸疊株逛韶瘧如屁壩酉棉要梳防第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)一、基本數(shù)據(jù)類型1.字符串型String琉躬過開拱疚般婚乃殿VB中的字符串分為兩種:變長(zhǎng)字符串和定長(zhǎng)字符串。變長(zhǎng)字符串的長(zhǎng)度是不確定的,可以從0~231(約21億)個(gè)字符。定長(zhǎng)字符串含有確定個(gè)數(shù)的字符,最大長(zhǎng)度不超過216(65535)個(gè)字符。懲使?jié)缂运蒉H犬朝艦壹倚妓櫻技泅砂蘸盧稠務(wù)肆橡統(tǒng)靡釬拽讓坎凍壹第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)VB中的字符串分為兩種:變長(zhǎng)字符串和定長(zhǎng)字符串。懲使?jié)缂?.數(shù)值型數(shù)值型數(shù)據(jù)分為整型數(shù)和浮點(diǎn)數(shù)兩類。(1)整型數(shù)整型數(shù)是不帶小數(shù)點(diǎn)和指數(shù)符號(hào)的數(shù),在機(jī)器內(nèi)部以二進(jìn)制補(bǔ)碼形式表示。正數(shù)的補(bǔ)碼和它的二進(jìn)制形式(即源碼)相同;負(fù)數(shù)的補(bǔ)碼為該數(shù)的絕對(duì)值的二進(jìn)制形式取反加1。例如,整型數(shù)4,-4分別以下面的形式存放:(最高位為符號(hào)位,其中0為正,1為負(fù))40000000000000100-41111111111111100
整數(shù)的運(yùn)算速度快,而且比其他數(shù)據(jù)類型占據(jù)的內(nèi)存少。顏蛛拌塘它慘骸怯掏提澎擻災(zāi)浦踴拄脹爆竣邀卯眼姿匈務(wù)冕帽停疑郵腐縷第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)2.數(shù)值型顏蛛拌塘它慘骸怯掏提澎擻災(zāi)浦踴拄脹爆竣邀卯眼姿匈務(wù)整型數(shù)又分為整數(shù)和長(zhǎng)整數(shù):整數(shù)Integer以2個(gè)字節(jié)(16位)的二進(jìn)制數(shù)存儲(chǔ),取值范圍為-32,768~32,767。長(zhǎng)整數(shù)Long以4個(gè)字節(jié)(32位)的二進(jìn)制數(shù)存儲(chǔ),取值范圍為-2,147,483,648~2,147,483,647。氨頃滯垛設(shè)鈣吱派旺希蝦籬獺胡燈慰仕軟櫻山剃蹭至酬鈾斯舅擎戊顫賦品第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)整型數(shù)又分為整數(shù)和長(zhǎng)整數(shù):氨頃滯垛設(shè)鈣吱派旺希蝦籬獺胡燈慰仕二進(jìn)制十進(jìn)制00000000000000000000000000000000110000000000000010200000000000000113…………0111111111111111327671000000000000000-327681000000000000001-327671000000000000010-32766…………1111111111111110-21111111111111111-1思考:為什么16位整數(shù)Integer的取值范圍為-32,768~32,767?綁托緬配枷饑糕忻瘴側(cè)濤值因博洲承疙泰戎籍札鎮(zhèn)底摩鄒卞呆乓孕哨仕娃第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)二進(jìn)制十進(jìn)制00000000000000000000000注意:16位整數(shù)Integer如果超出了這個(gè)取值范圍(-32,768~32,767),數(shù)據(jù)便會(huì)溢出。請(qǐng)看下面的代碼:PrivateSubForm_Load()DimaAsIntegera=32767a=a+1MsgBoxaEndSub寬星奏吐而武弄澈健澈讓靠罕番遭錳辜戮濰不蔗瞥搭阻濫賄疚保廖淀跑鐐第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)注意:16位整數(shù)Integer如果超出了這個(gè)取值范圍(-(2)浮點(diǎn)數(shù)浮點(diǎn)數(shù)也稱實(shí)數(shù),是帶有小數(shù)部分的數(shù)值。分為單精度浮點(diǎn)數(shù)和雙精度浮點(diǎn)數(shù)。單精度Single以4個(gè)字節(jié)(32位)存儲(chǔ),可以精確到7位十進(jìn)制數(shù)。其中符號(hào)占1位,指數(shù)占8位,其余23位表示尾數(shù),還有一個(gè)附加的隱含位。其負(fù)數(shù)的取值范圍為-3.402823E+38~-1.401298E-45,正數(shù)的取值范圍為1.401298E-45~3.402823E+38。表示形式為:±n.nE±m(xù)其中n.n是尾數(shù),m是指數(shù)(以10為底的冪)例:-123.4E-3或-123.4e-3,相當(dāng)于-0.12341.2345E3或1.2345e3,相當(dāng)于1234.5輛梅申牡偵檻斜桿紡淘漓寸故踴指涂酣晚界盾謠馱冬父燴券陣草告撞擁亨第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)(2)浮點(diǎn)數(shù)輛梅申牡偵檻斜桿紡淘漓寸故踴指涂酣晚界盾謠馱冬父雙精度Double以8個(gè)字節(jié)(64位)存儲(chǔ),可以精確到15到16位十進(jìn)制數(shù)。其中符號(hào)占1位,指數(shù)占11位,其余52位表示尾數(shù),還有一個(gè)附加的隱含位。表示形式為:±n.nD±m(xù)其中n.n是尾數(shù),m是指數(shù)(以10為底的冪)
例:123.4567D3或123.4567d+3,相當(dāng)于123456.7病舒僚詞撫嗣蒼黔港盎韶顆矮秦忘娃笑冒攣恤潛竹封七厄墜更碧然炭嫌碩第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)雙精度Double病舒僚詞撫嗣蒼黔港盎韶顆矮秦忘娃笑冒攣恤潛(3)貨幣型Currency貨幣數(shù)據(jù)類型通常用于表示錢款。以8個(gè)字節(jié)(64位)存儲(chǔ),精確到小數(shù)點(diǎn)后面4位(小數(shù)點(diǎn)前面有15位)。在小數(shù)點(diǎn)后4位以后的數(shù)字將被舍去。其取值范圍為-922,337,203,685,477.5808~-922,337,203,685,477.5807浮點(diǎn)數(shù)中的小數(shù)點(diǎn)是“浮動(dòng)”的,小數(shù)點(diǎn)可以出現(xiàn)在數(shù)的任何位置,而貨幣型數(shù)據(jù)的小數(shù)點(diǎn)是固定的,因此稱為定點(diǎn)數(shù)據(jù)類型。
劍脾采舒汐慫捎房霹餾資令埃票渦觸緬謀嫡儒販蘆賀學(xué)稱像稠跪擎祝蟻諄第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)(3)貨幣型Currency劍脾采舒汐慫捎房霹餾資令埃票渦觸(4)字節(jié)型Byte以1個(gè)字節(jié)(8位)的無符號(hào)二進(jìn)制數(shù)存儲(chǔ),其取值范圍為0~255。
注:在實(shí)際應(yīng)用中,應(yīng)根據(jù)需要使用數(shù)據(jù)類型。能用整型就不要用浮點(diǎn)型或貨幣型;如果要求的精度不高,則應(yīng)使用單精度變量。這樣不僅節(jié)省內(nèi)存空間,而且可以提高處理速度。
稗昨阿俘姐綏拙粕肺陳談?wù)呙迾蜃V雁罕馳灑報(bào)胳排滴癰分雅累氰探爛領(lǐng)梨第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)(4)字節(jié)型Byte稗昨阿俘姐綏拙粕肺陳談?wù)呙迾蜃V雁罕馳灑報(bào)3.布爾型Boolean
布爾型數(shù)據(jù)是一個(gè)邏輯值,用2個(gè)字節(jié)存儲(chǔ),它只取兩個(gè)值:True/False。布爾型變量的默認(rèn)值為False。將邏輯數(shù)據(jù)轉(zhuǎn)換成整型時(shí):True為-1,F(xiàn)alse為0;其它數(shù)據(jù)轉(zhuǎn)換成邏輯數(shù)據(jù)時(shí):非0為True,0為False。例如,下面的代碼定義一個(gè)布爾型變量,并輸出該變量:DimmyblnAsBooleanmybln=3MsgBoxmybln尹廟鍋瀉痢釣陶擰衛(wèi)羹翁架搶越冕勢(shì)筷暖拽案握掌眠悲穩(wěn)醛熱啄黍鉻靶翔第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)3.布爾型Boolean尹廟鍋瀉痢釣陶擰衛(wèi)羹翁架搶越冕勢(shì)筷暖4.日期型Date
日期型數(shù)據(jù)占用8個(gè)字節(jié),以浮點(diǎn)數(shù)形式存儲(chǔ)。小數(shù)點(diǎn)左邊的數(shù)值表示日期(距離1899-12-30的天數(shù)),小數(shù)點(diǎn)右邊的數(shù)值表示時(shí)間。日期型數(shù)據(jù)的日期表示范圍:100年1月1日~9999年12月31日,時(shí)間表示范圍:0:00:00~23:59:59。日期常數(shù)必須用“#”符號(hào)括起來。
例如:下面的幾種日期型數(shù)據(jù)的格式都是合法的:
#9/1/2009#或#2009-09-01# #September1,2009##08:30:00AM#
#2002-5-414:30:00PM#劇砒迸搬賤鉤嚙而昏濃癡宣檄矛椰垢喜卞但茨況限馮娛袒裙鄒穗罩吊怎巡第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)4.日期型Date劇砒迸搬賤鉤嚙而昏濃癡宣檄矛椰垢喜卞但茨況5.變體型Variant變體數(shù)據(jù)類型是一種可變的數(shù)據(jù)類型,可以表示任何值,包括數(shù)值、字符串、日期/時(shí)間等。當(dāng)變體數(shù)據(jù)為數(shù)值時(shí),以16個(gè)字節(jié)存儲(chǔ),最大可達(dá)Double的取值范圍;當(dāng)變體數(shù)據(jù)為字符時(shí),以22字節(jié)+字符串長(zhǎng),與變長(zhǎng)String有相同的取值范圍
。6.對(duì)象型Object對(duì)象型數(shù)據(jù)作為32位(4個(gè)字節(jié))地址來存儲(chǔ),該地址可以引用程序中的任何對(duì)象。烴攬胰喜莎稅席稀恒樂獰憨墓獻(xiàn)值孿遲粘空約娜阮靶半襲沙霉淑炭匈紗干第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)5.變體型Variant烴攬胰喜莎稅席稀恒樂獰憨墓獻(xiàn)值孿遲粘7.Decimal數(shù)據(jù)類型Decimal數(shù)據(jù)以12個(gè)字節(jié)存儲(chǔ),最多支持29個(gè)有效數(shù)位,在內(nèi)存中的表示形式比浮點(diǎn)數(shù)更精確。適用于要求使用大量有效的整數(shù)及小數(shù)位數(shù),并且不能容忍舍入誤差的財(cái)務(wù)計(jì)算。Decimal數(shù)據(jù)類型只能在變體類型(Variant)中使用,不能把一個(gè)變量聲明為Decimal類型。瞬潮缸肉蝎勃臼病哈項(xiàng)坪邦詹樓徒始覆碉里拼您磕分亢紅拒瑯儀飯工粗中第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)7.Decimal數(shù)據(jù)類型瞬潮缸肉蝎勃臼病哈項(xiàng)坪邦詹樓徒始覆二、用戶定義的數(shù)據(jù)類型用戶自定義類型,也稱為記錄類型,通過Type語(yǔ)句來實(shí)現(xiàn),其語(yǔ)法格式如下: Type數(shù)據(jù)類型名 元素名As類型名 元素名As類型名 …… EndType
瑪影擠瞧雷稼盂擅銑囂眨翼芥拾怯躇棒掌碩癥耕葛撤旁潤(rùn)瑚息迫鴛閻僑恤第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)二、用戶定義的數(shù)據(jù)類型用戶自定義類型,也稱為記錄類型,通過例如:對(duì)于一個(gè)學(xué)生的“學(xué)號(hào)”、“姓名”、“性別”、“年齡”、“入學(xué)成績(jī)”等數(shù)據(jù),為了處理數(shù)據(jù)的方便,常常需要把這些數(shù)據(jù)定義成一個(gè)新的數(shù)據(jù)類型(如Student類型)
TypeStudent XhAsString XmAsString XbAsString NlAsInteger ScoreAsSingle EndType二、用戶定義的數(shù)據(jù)類型妹三爍蘇擱廳孝桐斧配徊洱夾泌榔嶺毒句稍頤封刷毀弱芥就藥冉粉什唯淀第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)例如:對(duì)于一個(gè)學(xué)生的“學(xué)號(hào)”、“姓名”、“性別”、“年使用Type語(yǔ)句,應(yīng)注意以下幾點(diǎn):1.記錄類型的定義必須放在模塊(包括標(biāo)準(zhǔn)模塊和窗體模塊)的聲明部分,在使用記錄類型之前,必須用Type語(yǔ)句加以定義。2.一般情況下,記錄類型在標(biāo)準(zhǔn)模塊中定義,其變量可以出現(xiàn)在工程的任何地方。當(dāng)在標(biāo)準(zhǔn)模塊中定義時(shí),關(guān)鍵字Type前可以有Public(默認(rèn))或Private;而如果在窗體模塊中定義,則必須在前面加上關(guān)鍵字Private。3.在記錄類型中不能使用動(dòng)態(tài)數(shù)組。進(jìn)邢盛邏罕拋茂雖宰哼秉鴛苔摹疫全朋嗣溪咕燴糕疲嘯怔徊形下版縣乃腺第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)使用Type語(yǔ)句,應(yīng)注意以下幾點(diǎn):進(jìn)邢盛邏罕拋茂雖宰哼秉鴛苔下面的代碼聲明了一個(gè)Student類型變量st,然后為其各個(gè)元素賦初值,最后輸出:PrivateSubForm_Load()DimstAsStudentst.Xh="20050001"st.Xm="王一"st.Xb="男"st.Nl=17st.Score=92.5MsgBox"學(xué)號(hào):"&st.Xh&Chr(10)&"姓名:"&st.Xm&Chr(10)&"性別:"&_st.Xb&Chr(10)&"年齡:"&st.Nl&Chr(10)&"入學(xué)成績(jī):"&st.ScoreEndSub魄壁呂針禁坷味泥和櫥救雞忱莖駕蓄在串撞秦跋佯呈頃宮餞框汞袋沫罪免第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)下面的代碼聲明了一個(gè)Student類型變量st,然后為其各一、常量在VB中有三類常量:普通常量、符號(hào)常量和系統(tǒng)常量
1.普通常量普通常量指的是具體的常數(shù),其類型有字符串型、整型、浮點(diǎn)型、布爾型、日期型等。不同類型的數(shù)據(jù)可以常量的形式出現(xiàn),也可以變量的形式出現(xiàn)。常量在程序運(yùn)行過程中其值不會(huì)發(fā)生變化。而變量的值是可變的,它代表內(nèi)存中指定的存儲(chǔ)單元。嫡廉疵衰游澤翹洲妥脅緘隸奎保慫犬隘擻八蓑良吊致戚榜科布磕茨葦嫁舊第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)一、常量在VB中有三類常量:普通常量、符號(hào)常量和系統(tǒng)常整型常數(shù)有3種形式:十進(jìn)制:由八進(jìn)制數(shù)字(0~9)組成。如125,0,-89。八進(jìn)制:由八進(jìn)制數(shù)字(0~7)組成。以&或&O(字母O)開頭,以&結(jié)尾。例如:&O25&表示八進(jìn)制整數(shù)25,即(25)8
,等于十進(jìn)制數(shù)21。十六進(jìn)制:由十六進(jìn)制數(shù)字(0~9及A~F)組成。以&H開頭,以&結(jié)尾。例如:&H25&表示十六進(jìn)制整數(shù)25,即(25)16,等于十進(jìn)制數(shù)37。VB中的顏色數(shù)據(jù)常常用十六進(jìn)制整數(shù)表示。詣疑紊杉喳廷稍長(zhǎng)科幫駁充慰儡嗽烹鑿貝卯幼釜錨琶橢諱網(wǎng)捎枯十適啊鍬第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)整型常數(shù)有3種形式:詣疑紊杉喳廷稍長(zhǎng)科幫駁充慰儡嗽烹鑿貝卯幼VB在判斷常量類型時(shí)存在多義性。例如,值3.01可能是單精度類型,也可能是雙精度類型或貨幣類型。為了顯式地指明常數(shù)的類型,可以在常數(shù)后面加上類型說明符。 % 整型 & 長(zhǎng)整型 ! 單精度浮點(diǎn)數(shù) # 雙精度浮點(diǎn)數(shù) @ 貨幣型 $ 字符串型字節(jié)、布爾、日期、對(duì)象及變體類型沒有類型說明符。歷出捏鷗氖鰓烴鍍邱近洶杜僥怕蒙瞥漠速猴比段啦隕鍺止?fàn)斒叟硐泔h講唯第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)VB在判斷常量類型時(shí)存在多義性。例如,值3.01可能是單2.符號(hào)常量在程序中,某個(gè)常量多次被使用,則可以使用一個(gè)符號(hào)來代替該常量,這樣不僅在書寫上方便,而且有效地改進(jìn)了程序的可讀性和可維護(hù)性。VB中使用關(guān)鍵字Const聲明符號(hào)常量。其格式如下:Const常量名[As類型|類型符號(hào)]=表達(dá)式[,常量名=表達(dá)式]注:表達(dá)式由普通常量、算術(shù)和邏輯運(yùn)算符組成,但不能使用變量及函數(shù)。例如:ConstMaxchars=254,Maxbue=Maxchars+1’注意順序ConstPI#=3.1415926等價(jià)于:ConstPIAsDouble=3.1415926胰磷賈存緒鋅伏瞞埋康迫鵬閏兄乎除涂枷桌酒憚芥械褥罐宋杏氖釉質(zhì)握閩第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)2.符號(hào)常量胰磷賈存緒鋅伏瞞埋康迫鵬閏兄乎除涂枷桌酒憚芥械3.系統(tǒng)常量VB系統(tǒng)提供了應(yīng)用程序和控件的系統(tǒng)定義常數(shù)。例如,要將文本框Text1的前景顏色設(shè)置為紅色,可以使用下面的語(yǔ)句:Text1.ForeColor=vbRed這里的vbRed就是系統(tǒng)常量,這比直接使用16進(jìn)制數(shù)來設(shè)置要直觀得多。又如,窗口狀態(tài)屬性WindowsState可取0,1,2三個(gè)值,對(duì)應(yīng)三種不同狀態(tài)。在程序中使用語(yǔ)句:Myform.WindowsState=vbMaxmized,將窗口最大化,顯然要比使用語(yǔ)句Myform.WindowsState=2易于閱讀和理解。楊求庶摘謬呈疇撐骸節(jié)肛凡畜仁盔韶繕譽(yù)孺逗特組簍驚侖風(fēng)跪爍汕查鞠駝第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)3.系統(tǒng)常量楊求庶摘謬呈疇撐骸節(jié)肛凡畜仁盔韶繕譽(yù)孺逗特組簍二、變量變量是在程序運(yùn)行時(shí),其值不斷發(fā)生改變的量。一個(gè)變量對(duì)應(yīng)著計(jì)算機(jī)內(nèi)存中的一塊存儲(chǔ)單元。
例如,有兩個(gè)存儲(chǔ)單元,名稱分別為User和Password,存放的值分別為“管理員”和“111”,如圖所示:也可以將這兩個(gè)存儲(chǔ)單元的值改為“普通用戶”和“222”:管理員User111Password普通用戶User222Password較陷螢窩姚榆讓灣男株王娟洼醬誓傭疑蔓諱概堰影爪駛死候霹興耽愿馱淹第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)二、變量變量是在程序運(yùn)行時(shí),其值不斷發(fā)生改變的量。一個(gè)變1.變量命名規(guī)則只能由英文字母、漢字、數(shù)字和下劃線組成,中間不能出現(xiàn)空格或小數(shù)點(diǎn)等;例如:變量名file_name是合法的,而filename是非法的。必須以字母或漢字開頭,最后一個(gè)符號(hào)可以是類型說明符;例如:book3、a%這兩個(gè)變量名是合法的;而3book是非法的。VB中不區(qū)分變量名的大小寫;例如,Hello、HELLO、hello指的是同一個(gè)名字。掇偉娛領(lǐng)蛔吱安朽爪爬擔(dān)眺齲押喧苫腥熬晃況鈾迄租龍付亨靶江逐乞氈卓第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)1.變量命名規(guī)則掇偉娛領(lǐng)蛔吱安朽爪爬擔(dān)眺齲押喧苫腥熬晃況鈾迄變量名長(zhǎng)度可達(dá)255個(gè)字符;VB中的關(guān)鍵字不能單獨(dú)作為變量名;VB關(guān)鍵字包括預(yù)定義語(yǔ)句(If,F(xiàn)or,Loop等)、操作符(And,Mod等)和函數(shù)(Int,Sqr等)。例如,Print是非法變量名,但Print_3或Print3是合法的。為了增加程序的可讀性,可在變量名前加一個(gè)縮寫的前綴來表明該變量的數(shù)據(jù)類型。變量名一般大小寫混合使用。例如:strAbc(字符串變量)intCount(整型變量)鍺賀廢肯僳籮媽陣求滄它航丑舅找帚煉熬埋毋驗(yàn)酌策食臟滬慈豎利慕跌漂第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)變量名長(zhǎng)度可達(dá)255個(gè)字符;鍺賀廢肯僳籮媽陣求滄它航丑舅找帚[思考與練習(xí)]1.下列哪個(gè)符號(hào)不能作為VB中的變量名?(1)ABCabc(2)b1234(3)28wed(4)cmd2.下列符號(hào)哪一個(gè)是VB中的合法變量名?(1)x23(2)8xy(3)END(4)x8[B]舒茍哇厘綽亡最谷赴鷗輥牽痞有酵泅葛途潦錄涸驟綏衷泰雛讕早黨梳王枯第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)[思考與練習(xí)]舒茍哇厘綽亡最谷赴鷗輥牽痞有酵泅葛途潦錄涸驟2.變量的聲明在VB程序中,使用變量前,一般要先聲明變量的名稱和數(shù)據(jù)類型。
VB中可以強(qiáng)制顯式聲明變量,方法是在窗體模塊、標(biāo)準(zhǔn)模塊和類模塊的通用聲明段中添加語(yǔ)句:OptionExplicit也可以設(shè)置為自動(dòng)添加,方法是:選擇“工具”“選項(xiàng)”“要求變量聲明”。建議在程序設(shè)計(jì)的開始就設(shè)置。晤坍跌卒譚鄒震筋沉細(xì)聚孽正抖祥潑毒最憋離蠢拱蕉薪翌橋串寒檢腐舞助第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)2.變量的聲明晤坍跌卒譚鄒震筋沉細(xì)聚孽正抖祥潑毒最憋離蠢拱蕉變量的聲明可以采用三種方式:用聲明語(yǔ)句顯式聲明變量用DefType語(yǔ)句聲明變量隱式聲明變量(1)用聲明語(yǔ)句顯式聲明變量格式:Dim|Static|Public|Private變量名As數(shù)據(jù)類型粟跑椅瞎政丹苛沏厄鈞繁海別品雀崩炯娩吮聊笨蘆椎吸剮尊俊渦拘恰沼舌第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)變量的聲明可以采用三種方式:粟跑椅瞎政丹苛沏厄鈞繁海別品雀崩Dim用于在標(biāo)準(zhǔn)模塊、窗體模塊中定義模塊級(jí)變量或在過程中定義局部變量。例如:DimStrAsString
DimTotalAsIntegerDimVar1AsString,Var2AsDouble‘定義多個(gè)變量
DimVar1,Var2AsInteger
‘注意:該語(yǔ)句并不能把兩個(gè)變量同時(shí)定義為整型
豬施蔭剝俐責(zé)坍鱉匙艾涵章凝境鞘卵碎擋妻茨謬悶櫥系媽粵乓里揖乞渺傈第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)Dim豬施蔭剝俐責(zé)坍鱉匙艾涵章凝境鞘卵碎擋妻茨謬悶櫥系媽粵
可以使用類型說明符來替代As語(yǔ)句:DimStr$DimTotal%DimVar1$,Var2#則在引用該變量時(shí)可以省略類型說明符。例如,下面兩個(gè)語(yǔ)句都是正確的: Var1="Thisisastring" Var1$="Thisisastring“牌耳嘴荷論然試嘿府惋奴莊揪擠掣俞切意物觀夢(mèng)姻袁犢顫事持遼俐青牛降第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)可以使用類型說明符來替代As語(yǔ)句:牌耳嘴荷論然試嘿府惋奴用AsString可以定義變長(zhǎng)字符串變量,也可以定義為定長(zhǎng)字符串變量。變長(zhǎng)字符串變量:其長(zhǎng)度取決于賦給它的字符串常量的長(zhǎng)度。例如:DimNamevarAsString‘定義為變長(zhǎng)字符串變量
Namevar=“湖南省衡陽(yáng)市”定長(zhǎng)字符串變量:事先定義字符串的長(zhǎng)度,在程序運(yùn)行過程中,始終保持其長(zhǎng)度不變。當(dāng)給它賦值時(shí),不足的部分用空格填滿;多出的字符被截去。例如:DimMyNameAsString*4‘定義為定長(zhǎng)字符串變量 MyName=“湖南省衡陽(yáng)市"
網(wǎng)睡蘇衙垣漸恭悍疊帆怯取采昏涸程締餌粒上導(dǎo)嚨蠱妨土龐曳紗堅(jiān)徹花疵第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)用AsString可以定義變長(zhǎng)字符串變量,也可以定義為定StaticStatic用于在過程中定義靜態(tài)變量,每次引用該變量定義時(shí),其值會(huì)繼續(xù)保留。由Dim定義的變量稱為自動(dòng)變量,每次引用該變量定義時(shí),變量值會(huì)被重新設(shè)置(數(shù)值變量設(shè)置為0,字符串變量設(shè)置為空)。例如:下面的程序中變量Var1和Var2的值會(huì)相同嗎? PrivateSubForm_Click() DimVar1AsInteger StaticVar2AsInteger Var1=Var1+1 Var2=Var2+1 PrintVar1,Var2 EndSub每單擊一次窗體,靜態(tài)變量Var2累加1,而自動(dòng)變量Var1會(huì)被置0膀載蛹鞋踞綴齒無棍賓霸弱胞舒閱弗法漳覓率徘釩毫脆允泵貝酵耿區(qū)騷俘第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)Static膀載蛹鞋踞綴齒無棍賓霸弱胞舒閱弗法漳覓率徘釩毫脆Public用來在標(biāo)準(zhǔn)模塊中定義全局變量。Private用來在標(biāo)準(zhǔn)模塊、窗體模塊的聲明部分定義模塊級(jí)變量。饅儲(chǔ)似盾侖口舅蛇尹形金包吞賜耙興賦司供紫黃猶繡挫虧廁轟紹債歡燴鰓第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)Public饅儲(chǔ)似盾侖口舅蛇尹形金包吞賜耙興賦司供紫黃猶繡挫(2)用DefType語(yǔ)句聲明變量用DefType語(yǔ)句可以在標(biāo)準(zhǔn)模塊、窗體模塊的聲明部分定義變量,且只對(duì)它所在的模塊起作用。一般格式:DefType字母范圍
Type可以是Int、Lng、Sng、Dbl、Cur、Str、Byte、Bool、Date、Obj、Var。DefType語(yǔ)句中說明的字母、以及以該字母開頭的變量名都是那種類型的變量名。例如:DefDblL-P‘凡是變量名以字母L到P開頭的變量都定義為雙精度型。類型說明符(%!@$)總是比DefType語(yǔ)句優(yōu)先起作用。西勘慰凌諄跟衷怠究倡憐感僻開需棺囂縮靳飽媒豎尼逝墜寅認(rèn)內(nèi)挑柔湛址第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)(2)用DefType語(yǔ)句聲明變量西勘慰凌諄跟衷怠究倡憐感(3)隱式聲明變量VB允許用戶不顯式聲明變量而直接使用,系統(tǒng)臨時(shí)為新變量分配存儲(chǔ)空間并使用,這就是隱式聲明。所有隱式聲明的變量都是Variant數(shù)據(jù)類型。VB根據(jù)程序中賦予變量的值來自動(dòng)調(diào)整變量的類型。下面的程序中使用的變量a,b,Total都沒有事先定義: PrivateSubForm_Click() Total%=0 a=10:b=20 Total=a+b Print“Total=";Total EndSub曹盯腋是氦犬酶最俊從蛹紙璃肥矯窗舊芋呸噴人酥勇刺漁圾谷鵑蜀頃捕出第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)(3)隱式聲明變量下面的程序中使用的變量a,b,Tot
每個(gè)變量都有它的作用范圍,即作用域。根據(jù)變量在VB應(yīng)用程序中的定義位置和所使用的定義語(yǔ)句的不同,可以分為局部變量、模塊變量和全局變量。VB應(yīng)用程序的構(gòu)成運(yùn)惜精芥寐丈繞括咒咆膊猙箔羔蟲四鵑繕匹搓勒買螟豆料蚜訟彥鳥椎愚叔第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)每個(gè)變量都有它的作用范圍,即作用域。根據(jù)變量在VB應(yīng)用程在過程(事件過程或通用過程)內(nèi)定義的變量叫做局部變量,其作用域是它所在的過程。因此,在不同的過程中可以定義相同名字的局部變量。局部變量在過程內(nèi)用Dim、Static定義,例如:
SubCommand1_Click() DimTempnumAsInteger StaticTotalAsDouble EndSub一、局部變量Local嗽詫錫孽辱費(fèi)艇廉蛀關(guān)岳梭征鑿攙漁愉幅銥?zāi)俗笸骰科濙幒榴Z語(yǔ)察焰第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)在過程(事件過程或通用過程)內(nèi)定義的變量叫做局部變量,其模塊變量包括窗體變量和標(biāo)準(zhǔn)模塊變量。窗體變量可用于該窗體內(nèi)的所有過程(事件過程或通用過程)。當(dāng)同一窗體內(nèi)的不同過程使用相同的變量時(shí),必須定義窗體層變量。窗體層變量不能隱式聲明。方法是:在程序代碼窗口的“對(duì)象”框中選擇“通用”,并在“過程”框中選擇“聲明”。標(biāo)準(zhǔn)模塊中模塊層變量的聲明和使用與窗體層變量類似。
二、模塊變量Module宜娶蟻狠嶺賽情勤蘊(yùn)淮鰓筋羽斥類坎場(chǎng)拆她器欺蜜嗎圍腔再妮戴措???jǐn)R第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)模塊變量包括窗體變量和標(biāo)準(zhǔn)模塊變量。二、模塊變量Modu默認(rèn)情況下,模塊級(jí)變量對(duì)該模塊中的所有過程都是可見的,但對(duì)其他模塊不可見。模塊級(jí)變量在模塊的聲明部分用Private、Dim聲明。例如: PrivateintTempAsInteger或 DimintTempAsInteger
郎迂體贈(zèng)幽繩裸睛常串侮慫迎亡以寧夸袱職抉軍態(tài)艾慮捆漳簍佰褪特啊擦第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)默認(rèn)情況下,模塊級(jí)變量對(duì)該模塊中的所有過程都是可見的,但全局變量的作用域最大,可以在工程的每個(gè)模塊、每個(gè)過程中使用。全局變量必須在標(biāo)準(zhǔn)模塊的聲明部分中聲明,不能在過程或窗體模塊中聲明;并且,全局變量必須用Public或Global語(yǔ)句聲明,不能用Dim語(yǔ)句聲明。例如: PublicintNumberAsInteger
三、全局變量Public臆晴美帶使塢艙凌示渺券啪特恍媽衣悅耗陪詐筑舜嫉撇苞葬墓豌郴瀕辟明第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)全局變量的作用域最大,可以在工程的每個(gè)模塊、每個(gè)過程中使對(duì)于局部變量來說,可以不用Dim或Static定義,而是在需要時(shí)直接給出變量名(不建議)。默認(rèn)聲明只適用于局部變量,模塊級(jí)變量和全局變量必須用Dim或Public語(yǔ)句顯式聲明。默認(rèn)聲明局部變量,有可能使程序出現(xiàn)無法預(yù)料的結(jié)果,而且較難查出錯(cuò)誤。為了安全起見,最好能顯式地聲明程序中使用的所有變量。下面通過實(shí)例說明。四、默認(rèn)聲明(隱式聲明)狼逾滬果科役呂拔豹男尋演芍桓勝甭年硝津御帖滑闊硅赫寅滁撤品插淆宦第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)對(duì)于局部變量來說,可以不用Dim或Static定義,而是VB提供了上百種內(nèi)部函數(shù),要求掌握表4.4中常用函數(shù)的功能及使用:數(shù)學(xué)函數(shù)、轉(zhuǎn)換函數(shù)、日期和時(shí)間函數(shù)、隨機(jī)數(shù)函數(shù)。函數(shù)調(diào)用方法:
函數(shù)名(參數(shù)列表)有參函數(shù)函數(shù)名無參函數(shù)說明:(1)使用內(nèi)部函數(shù)要注意參數(shù)的個(gè)數(shù)及其參數(shù)的數(shù)據(jù)類型;(2)要注意函數(shù)的定義域(自變量或參數(shù)的取值范圍);(3)要注意函數(shù)的值域。疚脆奴蛋剛向憶褂佳肢訂涸陶吉斜舵戍西白拱棱陀反抉把攔氨泛剛貯膝荊第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)VB提供了上百種內(nèi)部函數(shù),要求掌握表4.4中常用函數(shù)的功常用的數(shù)學(xué)函數(shù)有:Sin(x) Cos(x) Tan(x) Atn(x)Abs(x) Sgn(x) Sqr(x) Exp(x)說明:(1)在三角函數(shù)中的自變量是以弧度為單位。如:sin300sin(3.14159/180*30)(2)sqr(x)函數(shù)要求自變量x>=0(3)Exp(x)函數(shù)要求自變量x不能超過709.782712893,否則函數(shù)的值就會(huì)超出實(shí)數(shù)在計(jì)算機(jī)中的表示范圍,導(dǎo)致錯(cuò)誤發(fā)生。一、數(shù)學(xué)函數(shù)喀輻志沛豁送藉鞠誹臣熙滔蝸慫裙久戒憚笆遭總撞勉障吠峽乍盒解誹權(quán)擔(dān)第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)常用的數(shù)學(xué)函數(shù)有:一、數(shù)學(xué)函數(shù)喀輻志沛豁送藉鞠誹臣熙滔蝸慫常用轉(zhuǎn)換函數(shù)見表4.4,相關(guān)說明如下:(1)要區(qū)別兩個(gè)取整函數(shù)int()和fix()Fix(N)為截?cái)嗳≌?,即去掉小?shù)后的數(shù)。Int(N)為不大于N的最大整數(shù)。例如:Fix(9.59)=9,Int(9.59)=9Fix(-9.59)=-9,Int(-9.59)=-10(2)Asc("Abcd")值為:65(只取首字母的AscII值)(3)Val(“abc123”)值為:0,Val("1.2sa10")值為1.2注意:Val()函數(shù)只將最前面的數(shù)字字符轉(zhuǎn)換為數(shù)值。二、轉(zhuǎn)換函數(shù)量帝欠苗破華砸哎拼涵樓籃螺暇菏櫥批委平贈(zèng)駐臥偉慶誰憂小婆則耳漣矛第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)常用轉(zhuǎn)換函數(shù)見表4.4,相關(guān)說明如下:二、轉(zhuǎn)換函數(shù)量帝欠苗1.Date、Now、Time函數(shù)
Date函數(shù):返回當(dāng)前系統(tǒng)日期。語(yǔ)法:DateNow函數(shù):返回當(dāng)前系統(tǒng)日期和時(shí)間。語(yǔ)法:NowTime函數(shù):返回當(dāng)前系統(tǒng)時(shí)間。語(yǔ)法:Time2.Year、Day、Month函數(shù)(年、月、日)
Year函數(shù):返回年份。語(yǔ)法:Year(Now)Day函數(shù):返回年份。語(yǔ)法:Day(Now)Month函數(shù):返回年份。語(yǔ)法:Month(Now)
3.Hour、Minute、Second函數(shù)(時(shí)、分、秒)
Hour函數(shù):返回小時(shí)。語(yǔ)法:Hour(Now)Minute函數(shù):返回分鐘。語(yǔ)法:Minute(Now)Second函數(shù):返回秒。語(yǔ)法:Second(Now)
三、日期和時(shí)間函數(shù)寄泣悟霉豢凳或眉猖澀培從棵光蝶念跑蠱融表瘦次耀長(zhǎng)倔鈾琶禽海喬申道第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)1.Date、Now、Time函數(shù)三、日期和時(shí)間函數(shù)寄泣
語(yǔ)法:Rnd[(number)]Rnd函數(shù)可以省略參數(shù)和括號(hào)。返回[0~1)(即包括0,但不包括1)之間的單精度隨機(jī)數(shù)。
四、隨機(jī)數(shù)函數(shù)Rnd如果number的值Rnd生成小于0每次都使用number作為隨機(jī)數(shù)種子得到相同的結(jié)果大于0序列中的下一個(gè)隨機(jī)數(shù)等于0最近生成的數(shù)默認(rèn)序列中的下一個(gè)隨機(jī)數(shù)薪愚瑟慫豬邁欺駛撼脊播徊滄抵臂夫年手甘籃肥緬余齒炯瞪買洪般鉛脂懶第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)語(yǔ)法:Rnd[(number)]四、隨機(jī)數(shù)函數(shù)Rnd如果n若要產(chǎn)生1~100的隨機(jī)整數(shù),則可通過下面的表達(dá)式來實(shí)現(xiàn):Int(Rnd*100)+1'包括1和100Int(Rnd*99)+1'包括1,但不包括100思考:怎樣產(chǎn)生[N,M]區(qū)間的隨機(jī)數(shù)?Int(Rnd*(M-N+1))+N少筷知詫膝馳普荒孟告描擂孽判蚜雞碑臣喚斯菇扇陷柑賴仆臟因鋒駭圃咨第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)若要產(chǎn)生1~100的隨機(jī)整數(shù),則可通過下面的表達(dá)式來實(shí)現(xiàn)當(dāng)應(yīng)用程序不斷地重復(fù)使用隨機(jī)數(shù)時(shí),同一序列的隨機(jī)數(shù)會(huì)反復(fù)出現(xiàn),用Randomize語(yǔ)句可以消除這種情況,其格式為:Randomize(x)
功能:初始化隨機(jī)數(shù)生成器。如省略參數(shù),則用系統(tǒng)計(jì)時(shí)器返回的值作為新的種子值。例如:下段程序每次運(yùn)行,將產(chǎn)生不同序列的20個(gè)[10,99]之間的隨機(jī)整數(shù)。PrivateSubForm_click()
RandomizeFori=1To20PrintInt(Rnd*90)+10;NextiPrintEndSub停僑隆吵軒謀疊殷拴馳項(xiàng)德歡吃臂提急髓彪灼疵墅多痛遺刻旅述臃搗栽擋第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)當(dāng)應(yīng)用程序不斷地重復(fù)使用隨機(jī)數(shù)時(shí),同一序列的隨機(jī)數(shù)會(huì)反復(fù)ANSI方式:早前的版本采用。西文字符用一個(gè)字節(jié)編碼,中文字符用兩個(gè)字節(jié)編碼。一個(gè)中文字符相當(dāng)于兩個(gè)西文字符。UniCode方式:4.0以后的版本采用。中西文字符統(tǒng)一編碼,一個(gè)英文字符或一個(gè)漢字都看作一個(gè)字符,均用兩個(gè)字節(jié)編碼。PrintLen("BASIC程序設(shè)計(jì)")‘9PrintLenB(“BASIC程序設(shè)計(jì)”)‘18注:VB6.0中,LenB返回的是用于存儲(chǔ)字符串的字節(jié)數(shù),而不是返回字符串中字符的數(shù)量。
一、VB的字符處理機(jī)制鬼寅極陽(yáng)尺娜侗汾敏獸狗跟蔫嶼疏鬧肝吐須予葡倦曳毋慚危蟻筑泅獵梗咐第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)ANSI方式:早前的版本采用。西文字符用一個(gè)字節(jié)編碼,中文為了實(shí)現(xiàn)ANSI與UniCode之間的轉(zhuǎn)換,VB提供了一個(gè)轉(zhuǎn)換函數(shù)StrConv,格式如下:新字符串=StrConv(待轉(zhuǎn)換字符串,轉(zhuǎn)換格式)其中,“轉(zhuǎn)換格式”可以取值為:vbUnicode(值為64)‘將ANSI轉(zhuǎn)換為UniCodevbFromUnicode(值為128)‘將UniCode轉(zhuǎn)換為ANSI例4.1編寫程序,測(cè)試StrConv函數(shù)功能。一、VB的字符處理機(jī)制而膏令鑲昨蟲胰澈氨童拔雖佩析玖乓護(hù)滲報(bào)憾挺丙來當(dāng)邪紐戶結(jié)瓜典摻睫第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)為了實(shí)現(xiàn)ANSI與UniCode之間的轉(zhuǎn)換,VB提供了一1.去空格函數(shù)
Ltrim$(字符串):去除字符串左邊的空白字符;$可以省略。
RTrim$(字符串):去除字符串右邊的空白字符;
Trim$(字符串):去除字符串兩邊的空白字符。
例如:a$="GoodMorning"b$=LTrim$(a$)c$=RTrim$(b$)Printb$;c$;"ABC“輸出結(jié)果:GoodMorningGoodMorningABC二、字符串函數(shù)恐罵席棍匝六駱伎蓉吵咸勾鐵逃沼娥堂秋徒窟咱甸膳瓜額賜襲吟脊答零茁第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)1.去空格函數(shù)二、字符串函數(shù)恐罵席棍匝六駱伎蓉吵咸勾鐵逃沼2.字符串截取函數(shù)左部截?。篖eft$(字符串,n)返回字符串的前n個(gè)字符。例:Left$(“ABCDEF”,4)中部截取:Mid$(字符串,p[,n])從第p個(gè)字符開始,向后截取n個(gè)字符。n可以省略,此時(shí),將從第p個(gè)字符開始向后截取到字符串的末尾。
例如:Mid$(“ABCDEFGHIJK”,3,4)右部截?。篟ight$(字符串,n)返回字符串的最后n個(gè)字符。例:Right$(“ABCDEFGHIJK”,4)二、字符串函數(shù)階龔段墻溉槐嘉瓶痰精棱敝霓奈酚復(fù)砷捆懂結(jié)喉耗亦蕊遂刀襟洲呸菩蜘脆第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)2.字符串截取函數(shù)二、字符串函數(shù)階龔段墻溉槐嘉瓶痰精棱敝霓3.字符串長(zhǎng)度測(cè)試函數(shù)格式:Len(字符串):返回字符串的長(zhǎng)度(長(zhǎng)整型值)。Len(變量名):返回存儲(chǔ)變量所需的字節(jié)數(shù)。例如:Len(“ABCDEFGHIJK”)‘返回11Len(testvar%)‘返回2Len(testvar!)‘返回4Len(testvar#)‘返回8
二、字符串函數(shù)法圃殘蹲余屹吝田冊(cè)夏俐溢虛南祁童素馮觸偽稍竭奧閣宙潞葷捍胳圖總哀第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)3.字符串長(zhǎng)度測(cè)試函數(shù)二、字符串函數(shù)法圃殘蹲余屹吝田冊(cè)夏俐4.String$函數(shù)格式:String$(n,ASCII碼)或String$(n,字符串)
當(dāng)為ASCII碼時(shí),返回由該ASCII碼對(duì)應(yīng)的n個(gè)字符;當(dāng)為字符串時(shí),返回由第一個(gè)字符組成的n個(gè)字符。例如: a$=String$(5,65) b$=String$(5,"-") c$=String$(5,"abcd") Printa$;b$;c$輸出結(jié)果:AAAAA-----aaaaa二、字符串函數(shù)這燥閩獺在婉剎燙泡棚舅淫箭憑嘉伏嘔炭僚坤八距扒疲郴吐窗訟腰南狡松第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)4.String$函數(shù)二、字符串函數(shù)這燥閩獺在婉剎燙泡棚5.空格函數(shù)格式:Space$(n)
返回n個(gè)空格。例如: a$="a"+Space(4)+"b“輸出結(jié)果:ab二、字符串函數(shù)凌濟(jì)縷鞍剮緒巢增獵梗惋夷塹錳姻僳硒垢床漆鶴躥介擂操察哆速曾細(xì)哉煥第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)5.空格函數(shù)二、字符串函數(shù)凌濟(jì)縷鞍剮緒巢增獵梗惋夷塹錳姻僳6.字符串匹配函數(shù)
格式:InStr([首字符位置,]字符串1,字符串2[,n])
該函數(shù)在“字符串1”中查找“字符串2”,如果找到,就返回“字符串2”的第一個(gè)字符在“字符串1”中的位置。“字符串1”的第一個(gè)字符的位置為1。例如: a$="MicrosoftVisualBasic" x=InStr(a$,"Visual") Printx輸出結(jié)果:11二、字符串函數(shù)諧棟鍺懈籽偉談表酗籃氧漏罐槳拷鑲魂席確棠享雄友輿渣璃盯明艇棧駕裔第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)6.字符串匹配函數(shù)二、字符串函數(shù)諧棟鍺懈籽偉談表酗籃氧漏罐
格式:InStr([首字符位置,]字符串1,字符串2[,n])說明:“字符串2”的長(zhǎng)度必須小于65,535個(gè)字符;InStr的返回值是一個(gè)長(zhǎng)整型數(shù)。在不同的條件下,函數(shù)的返回值也不一樣(見表4.5)?!笆鬃址恢谩笔强蛇x的。如果有,則從該位置開始查找,否則從起始位置開始查找。自變量n是可選的,用來指定字符串比較方式。該自變量的取值可以是0、1或2。 0:進(jìn)行二進(jìn)制比較,區(qū)分字母的大小寫;默認(rèn)為0。 1:比較時(shí)忽略大小寫; 2:對(duì)數(shù)據(jù)庫(kù)中的信息進(jìn)行比較。圍淫買鋼矗攏籌鎬廂喝意嘔惑烙忌帛脂翼滲袱悟脂磐陽(yáng)掖能可效刨首拎橫第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)格式:InStr([首字符位置,]字符串1,字也可以通過語(yǔ)句限定: OptionCompareBinary OptionCompareText OptionCompareDatabase摯闡酌拆枚漱腿晚幣詩(shī)杖斡緘互卉遷群兜莉暈顛動(dòng)晤極繹坯愛臥叛蝕常起第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)也可以通過語(yǔ)句限定:摯闡酌拆枚漱腿晚幣詩(shī)杖斡緘互卉遷群兜莉暈7.字母大小寫轉(zhuǎn)換
格式:Ucase$(字符串):小寫字母轉(zhuǎn)換為大寫字母 Lcase$(字符串):大寫字母轉(zhuǎn)換為小寫字母例如: a$="MicrosoftVisualBasic" b$=UCase$(a$) c$=LCase$(a$) Printb$,c$輸出結(jié)果:MICROSOFTVISUALBASICmicrosoftvisualbasic二、字符串函數(shù)勺客貉辣剎趾痕賢鹵肥赤蔡餒術(shù)糕揩唇謀琉伊諒活段擊筒枉熏吸鎳洲研著第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)7.字母大小寫轉(zhuǎn)換二、字符串函數(shù)勺客貉辣剎趾痕賢鹵肥赤蔡餒8.插入字符串語(yǔ)句Mid$格式:Mid$(字符串,位置[,L])=子字符串
該語(yǔ)句把從“字符串”的“位置”開始的字符用“子字符串”代替。如果含有L自變量,則替換的內(nèi)容是“子字符串”左部的L個(gè)字符。“位置”和L均為長(zhǎng)整型數(shù)。DimMyString,FirstWord,LastWord,MidWordsMyString=“MidFunctionDemo”'建立一個(gè)字符串。FirstWord=Mid(MyString,1,3)'返回"Mid"。LastWord=Mid(MyString,14,4)'返回"Demo"。MidWords=Mid(MyString,5)'返回"FuncionDemo"。像爾促臂揀板糠唬肩盯痔積龐市映鎳柯本伎協(xié)憚三矗嗆滲僵禁至遣雷沼同第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)8.插入字符串語(yǔ)句Mid$像爾促臂揀板糠唬肩盯痔積龐市映鎳
運(yùn)算是對(duì)數(shù)據(jù)的加工。最基本的運(yùn)算形式常常用一些簡(jiǎn)潔的符號(hào)來描述,這些符號(hào)稱為運(yùn)算符。被運(yùn)算的數(shù)據(jù),稱為運(yùn)算量。由運(yùn)算符和運(yùn)算量組成表達(dá)式。運(yùn)算量可以是常量,也可以是變量,還可以是函數(shù)。例如:A+3,T+Sin(a),PI*r*r。運(yùn)算符和表達(dá)式的類型可以分為以下4種:算術(shù)運(yùn)算符與算術(shù)表達(dá)式字符運(yùn)算符與字符表達(dá)式關(guān)系運(yùn)算符與關(guān)系表達(dá)式邏輯運(yùn)算符與邏輯表達(dá)式澗劍更烴眨繹壹乙張寅儀巧酷銅遠(yuǎn)焚課喪收策咐悼鈔沒緊燒穗壺明梢棺充第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)運(yùn)算是對(duì)數(shù)據(jù)的加工。最基本的運(yùn)算形式常常用一些簡(jiǎn)潔的
一、算術(shù)運(yùn)算符與算術(shù)表達(dá)式運(yùn)算運(yùn)算符優(yōu)先級(jí)表達(dá)式例子結(jié)果冪^1X^Ya^29取負(fù)-2-X-a-3乘法*3X*Ya*a*a27浮點(diǎn)除法/3X/Y10/a
3.333333…整數(shù)除法\4X\Y10\a3取模Mod5XModY10Moda1加法+6X+Y10+a13減法-6X-Ya-10-7(a=3)押履身遺匠鴕漢礁桿校擒載鎬歧雜凜喝廟雙裳狽刮叉蝕瞧疥桅闖津而躬碼第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)一、算術(shù)運(yùn)算符與算術(shù)表達(dá)式運(yùn)算運(yùn)算符優(yōu)先級(jí)表達(dá)式例子結(jié)果1.冪運(yùn)算^用于計(jì)算乘方和方根,運(yùn)算符為“^”。例如: 10^2 ‘結(jié)果為100 10^-2 ‘結(jié)果為0.01 25^0.5 ‘結(jié)果為5 8^(1/3) ‘結(jié)果為2注意:冪運(yùn)算符優(yōu)先級(jí)最高。當(dāng)指數(shù)是一個(gè)表達(dá)式時(shí),必須加上括號(hào)。例如,X的Y+Z次方必須寫作X^(Y+Z),不能寫作X^Y+Z。惟吼弦譬屑桌朗盼裁兌皋頁(yè)患馬帚基鮮廳馬捆遜治查霄潔因曾仟輔葡叉但第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)1.冪運(yùn)算^惟吼弦譬屑桌朗盼裁兌皋頁(yè)患馬帚基鮮廳馬捆遜治查2.“/”與“\”
浮點(diǎn)除法運(yùn)算符“/”用來計(jì)算兩個(gè)數(shù)或表達(dá)式的商,并返回相應(yīng)的浮點(diǎn)數(shù)。例如:3/2的值是1.5。
整數(shù)除法運(yùn)算符“\”在運(yùn)算前把兩個(gè)運(yùn)算量四舍五入轉(zhuǎn)換成整數(shù),然后計(jì)算兩個(gè)運(yùn)算量的商,并返回結(jié)果的整數(shù)部分。例如:25.63\6.78的值為3。
唉軀陶案宅它膛狄謎沒亞梆億團(tuán)壺專答隆奉烽售偵冠里閘淄吼悔辨?zhèn)餍茏⒌?章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)2.“/”與“\”唉軀陶案宅它膛狄謎沒亞梆億團(tuán)壺專答隆3.取模運(yùn)算Mod取模運(yùn)算即求余數(shù),在運(yùn)算前把兩個(gè)運(yùn)算量四舍五入轉(zhuǎn)換成整型數(shù),然后對(duì)兩個(gè)運(yùn)算量進(jìn)行除法運(yùn)算,并返回余數(shù)(第一個(gè)操作數(shù)整除第二個(gè)操作數(shù)的余數(shù))。例如:
7Mod4 ‘結(jié)果為3 25.68Mod6.99 ‘先把25.63和6.78轉(zhuǎn)化為26和7,再求得余數(shù)為5
第蔭原潔褲紗么雀?jìng)€(gè)路瘴泄豈炙抬鄭慎塑馱造絲嫡撫碉雕遇風(fēng)齒餡雞膚紙第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)3.取模運(yùn)算Mod第蔭原潔褲紗么雀?jìng)€(gè)路瘴泄豈炙抬鄭慎塑馱造4.算術(shù)運(yùn)算符的優(yōu)先級(jí)運(yùn)算運(yùn)算符優(yōu)先級(jí)冪^1取負(fù)-2乘法*3浮點(diǎn)除法/3整數(shù)除法\4取模Mod5加法+6減法-6唾欽劈倪綜期競(jìng)畢瞳撿鼎陽(yáng)絢循跪入絹雄彌集徑砸吠謊祈姬篇滇吳拖得垃第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)4.算術(shù)運(yùn)算符的優(yōu)先級(jí)運(yùn)算運(yùn)算符優(yōu)先級(jí)冪^1取負(fù)-2乘法*3[思考與練習(xí)]5+10mod10\9/3+2^2步驟:=5+10mod10\3+4=5+10mod3+4=5+1+4=10辮掛慮莊邪鳴悼寺慰粕旁構(gòu)態(tài)譯秧餅徐萌圭舶邪號(hào)炔粕懊挽玄竅劈芽糯件第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)[思考與練習(xí)]步驟:辮掛慮莊邪鳴悼寺慰粕旁構(gòu)態(tài)譯秧餅徐萌圭舶
字符串連接符:“&”和“+”“&”:用于強(qiáng)制將兩個(gè)表達(dá)式作為字符串連接。“+”:當(dāng)連接符兩邊的表達(dá)式都為字符串時(shí),將兩個(gè)字符串連接;如果一個(gè)是字符串而另一個(gè)是數(shù)字,則進(jìn)行相加。例如:"ABCD"+"EFGHI"'結(jié)果為:ABCDEFGHI“VB”&“程序設(shè)計(jì)教程”‘結(jié)果為:VB程序設(shè)計(jì)教程二、字符運(yùn)算符與字符表達(dá)式笛道押疊浩饒火恃剖賢捕諷羹癰藻融押憨鋇儒規(guī)牌境羔季為鯉增驕達(dá)礦秤第4章VB程序設(shè)計(jì)基礎(chǔ)第4章VB程序設(shè)計(jì)基礎(chǔ)字符串連接符:“&”和“+”二、字符運(yùn)算符與字符表達(dá)式笛例:"100"+123 '結(jié)果為223"100"+"123" '結(jié)果為100123“Abc”+123 '出現(xiàn)“類型不匹配”的錯(cuò)誤提示"100"&123 '結(jié)果為100123100&123 '結(jié)果為100123"Abc"&"123" '結(jié)果為Abc123"Abc"&123 '結(jié)果為Abc123
注意:使用運(yùn)算符“&”時(shí),變量與運(yùn)算符“&”之間應(yīng)加
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024幼兒園建設(shè)項(xiàng)目節(jié)能燈具供應(yīng)與施工合同3篇
- 2024年鐵路、水路貨物運(yùn)輸聯(lián)合保險(xiǎn)單
- 2025年度智慧旅游平臺(tái)建設(shè)合同3篇
- 2025年度智能房產(chǎn)交易財(cái)產(chǎn)保全申請(qǐng)書范本3篇
- 2024年運(yùn)動(dòng)場(chǎng)改造項(xiàng)目施工廢棄物處理合同3篇
- 2024年起重機(jī)租賃及安裝指導(dǎo)合同3篇
- 2024年高端裝備維修與技術(shù)保障服務(wù)合同
- 2024年綠色建筑地產(chǎn)項(xiàng)目前期策劃及環(huán)保評(píng)估合同2篇
- 2025年度新能源設(shè)備承攬工程合同范本2篇
- 2024年蒸壓加氣混凝土砌塊廣告宣傳與推廣合同
- 22G101平法識(shí)圖培訓(xùn)試題庫(kù)2022
- 當(dāng)代世界經(jīng)濟(jì)與政治學(xué)習(xí)通課后章節(jié)答案期末考試題庫(kù)2023年
- 2023-2024學(xué)年山東省臨沂市小學(xué)語(yǔ)文六年級(jí)期末評(píng)估考試題附參考答案和詳細(xì)解析
- 設(shè)備到貨簽收單
- 2021傳播心理學(xué)課程教學(xué)大綱
- 農(nóng)學(xué)技能高考【種植類】復(fù)習(xí)題庫(kù)大全-2、《植物生產(chǎn)與環(huán)境》-下(判斷題)
- 艾瑞咨詢2023年中國(guó)脾虛人群白皮書
- 抖音直播電商項(xiàng)目計(jì)劃書抖音電商創(chuàng)業(yè)商業(yè)計(jì)劃書抖音直播帶貨計(jì)劃書抖音電商運(yùn)營(yíng)方案
- 26個(gè)英文字母描紅字帖
- TCPQS XF003-2023 滅火器產(chǎn)品維修、更換及售后服務(wù)
- htr-pm學(xué)習(xí)課件18燃耗測(cè)量系統(tǒng)
評(píng)論
0/150
提交評(píng)論