表達(dá)式和函數(shù)_第1頁
表達(dá)式和函數(shù)_第2頁
表達(dá)式和函數(shù)_第3頁
表達(dá)式和函數(shù)_第4頁
表達(dá)式和函數(shù)_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1 第二章 VB語言 -表達(dá)式和函數(shù)2運(yùn)算符運(yùn)算符, 表達(dá)式表達(dá)式, 常用內(nèi)部函數(shù)常用內(nèi)部函數(shù)算術(shù)運(yùn)算符和表達(dá)式:算術(shù)運(yùn)算符和表達(dá)式:v 乘方乘方 ,* 乘法,乘法, / 除法除法 , 整除整除 ,mod 求余求余+ 加法,加法, - 減發(fā)減發(fā) 和負(fù)號和負(fù)號v其中其中 - 負(fù)號:為單目運(yùn)算符,其余為雙目運(yùn)算符負(fù)號:為單目運(yùn)算符,其余為雙目運(yùn)算符v其使用規(guī)則見書第其使用規(guī)則見書第33頁頁v舉例說明舉例說明2 2 寫成寫成 22 7/2=? 72=? 7mod 2=? 12.58/3.45=? 12.583.45=? 12.58mod3.45=?3 算術(shù)運(yùn)算符的優(yōu)先級算術(shù)運(yùn)算符的優(yōu)先級v 乘方乘方

2、 取負(fù)取負(fù) - 乘除乘除* / 整除整除 求余求余mod 加減加減+ -高高 低低1. 同級別的優(yōu)先級別從左到右同級別的優(yōu)先級別從左到右2. 括號用來改變運(yùn)算符號的優(yōu)先級括號用來改變運(yùn)算符號的優(yōu)先級4 舉例說明舉例說明 下列運(yùn)算結(jié)果:下列運(yùn)算結(jié)果:v2*43+4*6/3+32v16/2-23*7mod9v817mod22v(73+1)*(185-1)v當(dāng)當(dāng)Q為為2時(shí),時(shí),-Q4=? Q為為-2 時(shí)時(shí) ,-Q4=?5 算術(shù)表達(dá)式算術(shù)表達(dá)式v常量,變量和函數(shù)為組成,將他們用運(yùn)算符號和常量,變量和函數(shù)為組成,將他們用運(yùn)算符號和括號連接起來寫成括號連接起來寫成VB的形式,就是算術(shù)表達(dá)式。的形式,就是算

3、術(shù)表達(dá)式。注意:注意:1. 不能漏寫運(yùn)算符號:不能漏寫運(yùn)算符號: 要將要將3 x y寫成寫成3*x*y 2. VB中使用的符號均為小括號中使用的符號均為小括號 (3+5)/2+2/3 寫成(寫成(3+5)/2+2)/3 3.所有符號都在同一行中所有符號都在同一行中,無上標(biāo)和下標(biāo)無上標(biāo)和下標(biāo)6 字符串運(yùn)算符:字符串運(yùn)算符:v+ 或或 & :將文本相連接的雙目運(yùn)算符。:將文本相連接的雙目運(yùn)算符。v舉例:舉例:“abcd”&”efg”為為“abcdefg” “浙江浙江 ”&“杭州杭州” 為為“浙江浙江 杭州杭州”v區(qū)別:區(qū)別:&: 能將非字符串的數(shù)據(jù)轉(zhuǎn)化為字符類型,能

4、將非字符串的數(shù)據(jù)轉(zhuǎn)化為字符類型, +:不存在這樣的功能:不存在這樣的功能v舉例舉例 “x y z” & 123 結(jié)果為結(jié)果為“ x y z123” “x y z” + 123 會出現(xiàn)類型不匹配的錯誤。會出現(xiàn)類型不匹配的錯誤。7日期運(yùn)算符和表達(dá)式日期運(yùn)算符和表達(dá)式日期型數(shù)據(jù)的數(shù)值類型之間只能進(jìn)行日期型數(shù)據(jù)的數(shù)值類型之間只能進(jìn)行加加”+”和減和減”-”運(yùn)算運(yùn)算.如如#9/20/2003# - #9/10/2003#=10 #9/11/2003#+20=#10/1/2003# 8關(guān)系運(yùn)算符關(guān)系運(yùn)算符 = = 結(jié)果為:結(jié)果為:true 和和 false 比較大小說明:比較大小說明:v1. 比較

5、數(shù)據(jù)兩邊類型要一致比較數(shù)據(jù)兩邊類型要一致v2. 數(shù)值比較數(shù)據(jù)大小數(shù)值比較數(shù)據(jù)大小v3. 日期按照時(shí)間先后日期按照時(shí)間先后v4. 字符字符 按照按照ASCII 碼比較,具體見書后附錄。碼比較,具體見書后附錄。簡單說明:簡單說明:26個字母從小到大個字母從小到大 az AZ 小寫小寫 大于大于大寫。大寫。中文大于英文中文大于英文當(dāng)?shù)谝粋€字母相同時(shí),比較第二個字母當(dāng)?shù)谝粋€字母相同時(shí),比較第二個字母依次類推。依次類推。9關(guān)系表達(dá)式關(guān)系表達(dá)式判斷起大小關(guān)系:判斷起大小關(guān)系:v35v51=51v“hello”“ABcd”v“你好你好”“明天明天”v“你好你好”“mingtian “10邏輯運(yùn)算符邏輯運(yùn)算符

6、Not非非 And與與 Or或或 高高 低低Not: 對原本的邏輯值求反(單目運(yùn)算符)對原本的邏輯值求反(單目運(yùn)算符)vNot false = true vNot true = falseAnd: v求余關(guān)系:當(dāng)兩個均為真值(求余關(guān)系:當(dāng)兩個均為真值(true)時(shí),其值為真)時(shí),其值為真(true)。雙目運(yùn)算符)。雙目運(yùn)算符v true and false = false true and true = true vFalse and false =false11 Or:v求或關(guān)系:兩者中有一個為真值(求或關(guān)系:兩者中有一個為真值(true)時(shí),其結(jié))時(shí),其結(jié)果為真值(果為真值(true)。雙

7、目運(yùn)算符)。雙目運(yùn)算符vTrue or false =true false or false = false12給出中文語句,寫出相應(yīng)的表達(dá)式給出中文語句,寫出相應(yīng)的表達(dá)式X5 : x5A的值大于等于的值大于等于b 但不等于但不等于c 變量變量a 能被能被5整除的偶數(shù):整除的偶數(shù):13 對于運(yùn)算符號:對于運(yùn)算符號:v算術(shù)最高,關(guān)系其次,最后邏輯算術(shù)最高,關(guān)系其次,最后邏輯舉例說明下列的結(jié)果舉例說明下列的結(jié)果vNot 35v8mod2=0 and 8mod3=0v Dim a As Boolean a = (8 Mod 2 = 1 And 8 Mod 3) Print a14對于運(yùn)算符號整體舉例

8、對于運(yùn)算符號整體舉例Dim a As Integer, b As IntegerDim c As Boolean, d As Booleana = 81 7 Mod 2 2b = (7 3 + 1) * (18 5 - 1)c = a 4d = b 4Print a Print bPrint c Print dPrint c And d Print c Or dPrint Not c Or d Print Not (c Or d)15常用內(nèi)部函數(shù)介紹常用內(nèi)部函數(shù)介紹概念:概念:v常用函數(shù):就是指系統(tǒng)預(yù)定義函數(shù),可以有用戶常用函數(shù):就是指系統(tǒng)預(yù)定義函數(shù),可以有用戶直接調(diào)用的。直接調(diào)用的。v其參數(shù)

9、必須要用括號括起來,并要滿足一定的形其參數(shù)必須要用括號括起來,并要滿足一定的形式。式。v舉例說明舉例說明Sin (x)Log(x)16數(shù)學(xué)函數(shù)數(shù)學(xué)函數(shù)三角函數(shù):三角函數(shù):s i n (x) c o s t a n a t n 函數(shù)函數(shù)v其中其中x的值的值 必須為必須為 弧度,即弧度,即300 必須寫成必須寫成30*3.1415926/180Abs(x): 求絕對值求絕對值Exp(x):exLog(x):對數(shù):對數(shù)Sgn(x):x0 值為值為1,x=0值為值為0,x1只為只為-1Sqr(x):求平方根:求平方根Int(x): 返回不大于返回不大于x的最大整數(shù)的最大整數(shù) I n t(7.8) I

10、n t(-7.8)Fix(x): 返回返回x的整數(shù)部分的整數(shù)部分 fix(7.8) ,fix(-7.8)17字符串函數(shù)字符串函數(shù)Ltrim: 將最左邊的空格刪除的作用將最左邊的空格刪除的作用vLtrim(“ abcd”) 結(jié)果為結(jié)果為“abcd”Rtrim:將最左邊的空格刪除的作用將最左邊的空格刪除的作用vRtim(“abcd ”)的結(jié)果為)的結(jié)果為“abcd”Trim(x): 將左右兩邊的空格刪除的作用將左右兩邊的空格刪除的作用vTrim(“ abcd ”) 的結(jié)果為的結(jié)果為“abcd”String(n,x):將返回將返回n個個x字符串中的首字符字符串中的首字符.如如果果x為數(shù)值為數(shù)值,則返

11、回則返回X對應(yīng)對應(yīng)ASCII中字符中字符n個個vString(3,”asd”)的結(jié)果為的結(jié)果為”aaa”18 Left(x,n): 返回字符串返回字符串x前前n個字符個字符vLeft(“computer”,3) Right(x,n):返回字符串返回字符串x后后n個字符個字符vright(“computer”,3) mid(x,m,n):返回字符串返回字符串x中從第中從第m個起后面的個起后面的n個字符個字符vmid(“computer”,3,6)19 Len(x):返回字符串:返回字符串x的長度的長度vLen(“hello”)=5Lcase(x):將將x中的所有字符串變?yōu)樾懼械乃凶址優(yōu)樾?/p>

12、寫vLcase(“heLLo”)= “hello”Ucase(x):將將x中的所有字符串變成大寫中的所有字符串變成大寫vUcase(“heLLo”)= “HELLO”20 Space(n): 用來輸出用來輸出n個空格字符個空格字符vA$=“abcd”+space(5)+“efg”所以所以print a 輸出的是:輸出的是: abcd efgInstr(x,y):用來查找用來查找y字符串在字符串在x字符串中字符串中的首位置的首位置vA$=“abcdefghij” b$=“efg” c=“klm”vInstr(a,b) =5 返回的值為返回的值為b在在a中的首位置中的首位置vInstr(a,c)

13、= 0 當(dāng)當(dāng)c的字符串在的字符串在a中無法找到時(shí),返中無法找到時(shí),返回的值為回的值為021 轉(zhuǎn)換函數(shù)轉(zhuǎn)換函數(shù)Str(x):將數(shù)值數(shù)據(jù)轉(zhuǎn)換為字符類型的數(shù)據(jù)將數(shù)值數(shù)據(jù)轉(zhuǎn)換為字符類型的數(shù)據(jù)vStr(-123.45) 返回的值為返回的值為“-123.45”Val(x): 將數(shù)字字符串轉(zhuǎn)化為相應(yīng)的數(shù)值數(shù)將數(shù)字字符串轉(zhuǎn)化為相應(yīng)的數(shù)值數(shù)據(jù)據(jù)v如果如果x中包含有非數(shù)字字符,返回的結(jié)果為第中包含有非數(shù)字字符,返回的結(jié)果為第一個數(shù)字字符的數(shù)據(jù)一個數(shù)字字符的數(shù)據(jù)vVal (“12334.34afdfadsfj345345.3453”)= 12334.3422日期和時(shí)間函數(shù)日期和時(shí)間函數(shù)Date : 返回當(dāng)前日期返回

14、當(dāng)前日期 Time : 返回當(dāng)前時(shí)間返回當(dāng)前時(shí)間Minute(now) minute(time): 返回系統(tǒng)中的分返回系統(tǒng)中的分Second (now) minute(time) 返回系統(tǒng)的秒返回系統(tǒng)的秒Print date print time Print minute(now) print second(time)注意:這個時(shí)間為電腦中設(shè)定的時(shí)間,隨著修改而變化注意:這個時(shí)間為電腦中設(shè)定的時(shí)間,隨著修改而變化23 轉(zhuǎn)換函數(shù)轉(zhuǎn)換函數(shù)(包括字符串函數(shù)中的包括字符串函數(shù)中的str,val)Chr(x): 返回?cái)?shù)值返回?cái)?shù)值x所對應(yīng)的所對應(yīng)的ASCII中的中的字符字符v在在ASCII中中A 對應(yīng)為對

15、應(yīng)為65,a 對應(yīng)為:對應(yīng)為:97v所以所以 chr (65)= “A” chr(97)=“a”Asc(x): chr(x)函數(shù)的逆函數(shù)函數(shù)的逆函數(shù)vX可以為多個字符,但返回的值為首字符的可以為多個字符,但返回的值為首字符的ASCII 值值vAsc(“Assdsd”)= 65vAsc(“aSDD”) =9724隨機(jī)函數(shù)隨機(jī)函數(shù)Rnd 函數(shù):用于產(chǎn)生大于等于零小于函數(shù):用于產(chǎn)生大于等于零小于1 之間的數(shù)據(jù)之間的數(shù)據(jù)v對于對于a,b之間的整數(shù),可以使用之間的整數(shù),可以使用Int ( rnd*(b-a)+1) +aRandomize 語句:用于選擇一種語句:用于選擇一種rnd函函數(shù)產(chǎn)生數(shù)據(jù)的方式數(shù)產(chǎn)

16、生數(shù)據(jù)的方式v舉例說明:舉例說明: print rnd Randomize(1) : print rnd Randomize(2) : print rnd 25 例子:隨機(jī)產(chǎn)生一個至多例子:隨機(jī)產(chǎn)生一個至多3位正整數(shù),位正整數(shù), 將其逆將其逆向輸出:如向輸出:如345 543Dim a As Integer, b As Integer, c As Integer, d As integerRandomize (1)d = Int (Rnd * 1000)Print da =Fix(d / 100)b = Fix(d Mod 100) / 10)c = d Mod 10Print c*100+b

17、*10+a26 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù)在在vb 中有一些數(shù)據(jù)類型可以自動轉(zhuǎn)換中有一些數(shù)據(jù)類型可以自動轉(zhuǎn)換,例如數(shù)值類型和布爾型數(shù)據(jù)的轉(zhuǎn)換例如數(shù)值類型和布爾型數(shù)據(jù)的轉(zhuǎn)換.但是但是多數(shù)是不能轉(zhuǎn)換的多數(shù)是不能轉(zhuǎn)換的,需要用類型轉(zhuǎn)換函數(shù)需要用類型轉(zhuǎn)換函數(shù)來說明來說明.具體的函數(shù)和使用方法見書具體的函數(shù)和使用方法見書P39中的表中的表2-11中所示中所示.(在平時(shí)的使用過程當(dāng)在平時(shí)的使用過程當(dāng)中我們用前面講過的轉(zhuǎn)換函數(shù)就夠了中我們用前面講過的轉(zhuǎn)換函數(shù)就夠了)27函數(shù)的使用:函數(shù)的使用:v數(shù)學(xué)函數(shù):數(shù)學(xué)函數(shù): 參數(shù)要括號,三角函數(shù)中參數(shù)要括號,三角函數(shù)中 角度要用弧角度要用弧度制,度制,ln50

18、 用用 log(50)表示,)表示,e5 用用 exp(5)表)表示示 等問題。等問題。v字符串函數(shù):字符串函數(shù): trim(x) left(x,n) len(x) instr(x,y)等等v日期時(shí)間函數(shù):日期時(shí)間函數(shù):date , time 等等v轉(zhuǎn)化函數(shù):轉(zhuǎn)化函數(shù):STR VAL CHR ASCv隨機(jī)數(shù)產(chǎn)生函數(shù):隨機(jī)數(shù)產(chǎn)生函數(shù):rnd28作業(yè)作業(yè)請課后將書上第二章的課后習(xí)題完成請課后將書上第二章的課后習(xí)題完成.29兩條基本語句兩條基本語句卸載語句卸載語句:unload 語句語句用法用法: unload 其中其中”對象名對象名”是要卸載的窗體對象或是要卸載的窗體對象或控件名控件名 作用作用:

19、在內(nèi)存中將對象去除在內(nèi)存中將對象去除結(jié)束語句結(jié)束語句:end 語句語句用法用法:end 作用作用:用來結(jié)束程序的執(zhí)行用來結(jié)束程序的執(zhí)行30數(shù)據(jù)輸入數(shù)據(jù)輸入(簡講簡講)1.使用文本框的輸入使用文本框的輸入 方法方法:引用文本框的引用文本框的text屬性屬性.如如 a=text1.text2.用用inputbox對話框?qū)υ捒?具體內(nèi)容在下具體內(nèi)容在下)31Msgbox函數(shù)函數(shù)功能:功能:v消息對話框,用于事件發(fā)生后,提供給消息對話框,用于事件發(fā)生后,提供給 用戶的提用戶的提示信息。示信息。格式:格式:v變量名變量名=msgbox (“提示信息提示信息”,消息框類型,消息框類型,“標(biāo)題標(biāo)題” )舉例

20、舉例vA!=msgbox(“計(jì)算機(jī)非法操作!系統(tǒng)已經(jīng)崩潰!計(jì)算機(jī)非法操作!系統(tǒng)已經(jīng)崩潰!” 0+16+1,“警告警告”)32說明說明提示信息:在對話框中出現(xiàn)的文本內(nèi)容提示信息:在對話框中出現(xiàn)的文本內(nèi)容標(biāo)題:對話框的左上角的標(biāo)題信息標(biāo)題:對話框的左上角的標(biāo)題信息類型說明:類型說明:v通過通過3個參數(shù)來確定消息框類型個參數(shù)來確定消息框類型v按鈕樣式:按鈕樣式: 5:vbokonly 0 : vokcancel 1: vbabortretryignore 2: vbyesnocancel 3:vbyesno 4:vbretrycancel v圖標(biāo)樣式:圖標(biāo)樣式:16:停止:停止 32: 問號問號48

21、: 嘆號嘆號 64: 消息消息33 v默認(rèn)按鈕:默認(rèn)按鈕:0: 第一按鈕,第一按鈕, 1:第二按鈕:第二按鈕 2: 第三按鈕第三按鈕舉例說明:舉例說明:va! = MsgBox(“計(jì)算機(jī)非法操作!系統(tǒng)已崩潰!計(jì)算機(jī)非法操作!系統(tǒng)已崩潰!”, 1 + 64 + 1, “警告警告”) 更改類型,觀察結(jié)果更改類型,觀察結(jié)果對于變量名的用處對于變量名的用處v用于接受返回的結(jié)果用于接受返回的結(jié)果消息框中的每一個按鈕,對應(yīng)一個數(shù)值數(shù)據(jù),你按消息框中的每一個按鈕,對應(yīng)一個數(shù)值數(shù)據(jù),你按下其中一個按鈕,變量名的值就是對應(yīng)的數(shù)值。下其中一個按鈕,變量名的值就是對應(yīng)的數(shù)值。34對于返回值的舉例對于返回值的舉例va

22、! = MsgBox(“計(jì)算機(jī)非法操作!系統(tǒng)已崩潰!計(jì)算機(jī)非法操作!系統(tǒng)已崩潰!”, 1 + 64 + 1, “警告警告”)vPrint a v觀察觀察a的結(jié)果的結(jié)果35為何要設(shè)置返回值的概念為何要設(shè)置返回值的概念v目的是為了用戶能夠根據(jù)不同的返回值,來執(zhí)行目的是為了用戶能夠根據(jù)不同的返回值,來執(zhí)行相對應(yīng)的語句。相對應(yīng)的語句。v如果變量名如果變量名a=1 執(zhí)行語句執(zhí)行語句1v如果變量名如果變量名a=2 執(zhí)行語句執(zhí)行語句2 上述中,如果上述中,如果,其含義就是一個選,其含義就是一個選擇性質(zhì)的過程,是屬于選擇結(jié)構(gòu)的內(nèi)容。擇性質(zhì)的過程,是屬于選擇結(jié)構(gòu)的內(nèi)容。36Inputbox函數(shù)函數(shù)功能:用于與用

23、戶交互的功能:用于與用戶交互的 數(shù)據(jù)輸入對話數(shù)據(jù)輸入對話框窗口產(chǎn)生的函數(shù)??虼翱诋a(chǎn)生的函數(shù)。格式:格式: 變量名變量名=inputbox(“提示信息提示信息” ,“標(biāo)題標(biāo)題”,默認(rèn),默認(rèn)值值)格式舉例格式舉例A!= inputbox (“請?jiān)诖溯斎霐?shù)據(jù)請?jiān)诖溯斎霐?shù)據(jù)a的值的值” ,“數(shù)據(jù)輸數(shù)據(jù)輸入入”,0)37說明說明 變量名:用于存放輸入數(shù)據(jù)的值。默認(rèn)狀況變量名:用于存放輸入數(shù)據(jù)的值。默認(rèn)狀況下,其類型為字符型號下,其類型為字符型號提示信息:在對話框中出現(xiàn)的文本內(nèi)容提示信息:在對話框中出現(xiàn)的文本內(nèi)容標(biāo)題:對話框的左上角的標(biāo)題信息標(biāo)題:對話框的左上角的標(biāo)題信息默認(rèn)值:在一出現(xiàn)對話框時(shí),在待輸入位置默認(rèn)值:在一出現(xiàn)對話框時(shí),在待輸入位置出

溫馨提示

  • 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

提交評論