




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2第四章第四章 運算符與表達式運算符與表達式4.1 運算符運算符4.2 表達式表達式34.1 運算符運算符本節知識點:本節知識點: 運算符運算符 算術算術運算符運算符 比較比較運算符運算符 字符串字符串運算符運算符 日期時間日期時間運算符運算符 邏輯邏輯運算符運算符44.1 運算符運算符v運算運算是是對數據進行加工和處理的過程對數據進行加工和處理的過程。v運算符運算符:一些基本運算可用簡潔的符號表示,:一些基本運算可用簡潔的符號表示,這種這種表示某種運算的符號表示某種運算的符號就是運算符。就是運算符。v運算量運算量:被運算的對象。:被運算的對象。(常數常數、變量變量等等)v表達式表達式:描述:
2、描述對什么數據對什么數據,按什么順序按什么順序進行進行什么運算什么運算的式子,由運算符和運算量組成。的式子,由運算符和運算量組成。v表達式的值表達式的值:表達式的計算結果稱為表達式:表達式的計算結果稱為表達式的值,的值,表達式的值也有相應的數據類型表達式的值也有相應的數據類型。54.1 運算符運算符1、算術運算符、算術運算符v用來對用來對數值型數據進行算術運算數值型數據進行算術運算,運算結果運算結果是是數值型數值型。運算符運算符說明說明優先級優先級示例示例舉例舉例運算結果運算結果指數指數1xy238* , /乘,除乘,除2x*y , x/y2*36整除整除3xy522Mod求余求余4x mod
3、 y5 Mod 21+ , -加,減加,減5x+y , x-y2+3564.1 運算符運算符v整除運算符整除運算符“”執行整除運算,執行整除運算,結果為整型結果為整型數數。整除的運算量為整型數,當運算量帶有。整除的運算量為整型數,當運算量帶有小數時,小數時,首先四舍五入為整數首先四舍五入為整數,然后進行整,然后進行整除運算,除運算,運算結果截去小數部分運算結果截去小數部分,不再四舍,不再四舍五入。五入。( 10.1 3.9 結果結果 2 )vMod用來求余數用來求余數。求余運算結果的正負號同。求余運算結果的正負號同第一個操作數的符號。第一個操作數的符號。( 15 mod -6 結果結果 3 )
4、v絕對值小于絕對值小于0.5的數的數不能作整除運算和求余運不能作整除運算和求余運算的除數,否則會出現除數為算的除數,否則會出現除數為“0”的錯誤。的錯誤。74.1 運算符運算符2、比較運算符、比較運算符v用來對用來對兩個數值兩個數值或或字符串字符串進行比較,結果為進行比較,結果為邏輯值邏輯值True或或False。運算符運算符說明說明示例示例結果結果小于小于2.5大于大于2.55False=等于等于2=4False=小于等于小于等于2.5=大于等于大于等于5=6False不等不等18True84.1 運算符運算符v比較運算符比較運算符“=”與與賦值號賦值號“=”的區別的區別:前者:前者只比較兩
5、邊的值是否相等,不會改變任何一只比較兩邊的值是否相等,不會改變任何一個值,所以比較運算符兩邊可以是:個值,所以比較運算符兩邊可以是:常量常量、變量變量、函數函數或或表達式表達式。v賦值語句是獨立的語句,而由比較運算符構賦值語句是獨立的語句,而由比較運算符構成的表達式成的表達式只能是語句的一部分只能是語句的一部分。v例子例子:求表達式:求表達式 a=b=c的值。的值。94.1 運算符運算符3、字符串運算符、字符串運算符v字符串連接運算符字符串連接運算符:將兩個字符串連接成一:將兩個字符串連接成一個字符串,有個字符串,有“+”和和“&”。由于。由于“+”還兼有還兼有算術運算符的功能,所以使
6、用時要注意。算術運算符的功能,所以使用時要注意。 例子例子:“30” & “15” “3015”“30” + “15” “3015” 30 & 15 “3015”“30” + 15 45104.1 運算符運算符v字符串比較運算符字符串比較運算符:使用比較運算符。兩字:使用比較運算符。兩字符串進行比較時,兩字符串符串進行比較時,兩字符串向左對齊向左對齊,然后然后逐個進行比較逐個進行比較。 字符的大小取決于字符的字符的大小取決于字符的機內碼機內碼。 英文字母、數字等按其英文字母、數字等按其ASCII碼值碼值區分大小。區分大小。 漢字:中文符號按漢字漢字:中文符號按漢字國標碼國標碼順
7、序進行比較。順序進行比較。 所有漢字和中文符號大于所有英文字母、數所有漢字和中文符號大于所有英文字母、數字等字等ASCII碼。碼。114.1 運算符運算符v語言文字的數字化語言文字的數字化: 首先確定需要數字化的首先確定需要數字化的字符集合字符集合。 為字符集合中的每個字符分配一個唯一為字符集合中的每個字符分配一個唯一的的二進制編碼二進制編碼。 為該字符集合設計為該字符集合設計輸入法輸入法。 字符集合中的每個字符制作字庫。字符集合中的每個字符制作字庫。124.1 運算符運算符 例子例子:“A”“B” 結果為結果為“false”“ab”“ac” 結果為結果為“false” “ab”“abc” 結
8、果為結果為“false”“ab”“AB” 結果為結果為“true”“123”“99” 結果為結果為“false”“123”=“123”結果為結果為“true”“你們你們”“我們我們” 結果為結果為“true”134.1 運算符運算符v字符串匹配運算符字符串匹配運算符:字符串的匹配字符串的匹配是指一個是指一個字符串是否符合一個字符串是否符合一個“模板模板”規定的樣式規定的樣式。運算符為運算符為“like”。S1 Like S2 通配符通配符:?代表任何一個字符代表任何一個字符*代表任意多個任何字符,(包含代表任意多個任何字符,(包含0個)個)#代表任意一個數字,(代表任意一個數字,(0-9)14
9、4.1 運算符運算符 例子例子: “abc” like “abc” 結果為結果為“true” “ab” like “ac” 結果為結果為“False” “ac” like “a?” 結果為結果為“true” “aAFHDa” like “a*a” 結果為結果為“true” “a2b” like “a # b” 結果為結果為“true”154.1 運算符運算符 例子例子:“F” like “A-Z” 結果為結果為“true”“aM5b” Like “aL-P#!c-e” 結果為結果為“true”“a” like “!abc” 結果為結果為“False”“abc” like “abc” 結果為結果
10、為“False”“你你” like “你我他你我他” 結果為結果為“true”164.1 運算符運算符4、日期時間運算符、日期時間運算符v日期型數據是一種日期型數據是一種特殊的數值型數據特殊的數值型數據,它們,它們之間之間只能進行只能進行“+”、“-”運算運算。v兩個日期型數據相減兩個日期型數據相減,結果是一個數值型數,結果是一個數值型數據據(兩個日期相差的天數兩個日期相差的天數)。例如:例如:#10/15/2009# - #8/15/2009# 結果結果為為61天。天。174.1 運算符運算符v日期型數據可以日期型數據可以加上加上(或或減去減去)一個一個表示天數的表示天數的數值型數據數值型數
11、據,結果仍然為一日期型數據。,結果仍然為一日期型數據。例如例如:#8/15/2009# + 30 結果結果2009年年9月月14日日#8/15/2009# - 30 結果結果2009年年7月月16日日v日期型數據的日期型數據的比較比較:比較晚的日期比較晚的日期比較早的日期。比較早的日期。184.1 運算符運算符5、邏輯運算符、邏輯運算符v對對邏輯量邏輯量進行運算,結果為進行運算,結果為邏輯值邏輯值。運算符運算符含義含義優先級優先級說明說明示例示例結果結果Not取反取反1假變真假變真, 真變假真變假Not trueFalseAnd與與2全真為真全真為真T and TTrueOr或或3一真即為真一
12、真即為真F or FFalseXor異或異或3不同為真不同為真F xor TTrueEqv同或同或4相同為真相同為真F eqv FTrueImp蘊涵蘊涵5真不含假真不含假T imp Ffalse194.1 運算符運算符v例子例子:a、b、c 是三個變量,已知是三個變量,已知 ac,判,判斷斷b的值是否在的值是否在a與與c之間。之間。表達式表達式正確正確寫法:寫法:ab and bc 錯誤錯誤寫法:寫法:ab 比較運算符比較運算符 邏輯運算符邏輯運算符v所有比較運算符的優先級都相同所有比較運算符的優先級都相同,要按它們,要按它們出現的順序從左到右進行計算。出現的順序從左到右進行計算。v字符連接運
13、算符字符連接運算符“&”的優先級位于的優先級位于算術算術和和比比較運算符較運算符之間。之間。算術運算符算術運算符 & 比較運算符比較運算符 邏輯運算符邏輯運算符324.2 表達式表達式v運算符的優先級運算符的優先級:334.2 表達式表達式3、使用括號改變計算順序、使用括號改變計算順序v可以用可以用圓括號圓括號“( ) ”改變表達式中運算的優改變表達式中運算的優先順序先順序,強制表達式中的,強制表達式中的某些部分優先進行某些部分優先進行運算運算。在括號內,運算符的優先順序不變。在括號內,運算符的優先順序不變。圓括號可以多層使用,但要注意配對出現。圓括號可以多層使用,但要注意配對
14、出現。v例子例子:8 + 4 * 9 6 / 2(8 + 4) * 9 6 / 2(8 + 4 * 9) 6) / 2344.2 表達式表達式4、正確書寫表達式、正確書寫表達式vVB中的表達式中的表達式雖然與雖然與代數中的算式代數中的算式很相似,很相似,但二者卻是但二者卻是完全不同的概念完全不同的概念。例如:。例如:a = b 與與 b = a vVB的表達式有的表達式有嚴格的規則限制嚴格的規則限制,初學者要,初學者要避避免代數知識的影響免代數知識的影響。354.2 表達式表達式v書寫表達式要注意書寫表達式要注意: 表達式中的表達式中的每個字符沒有高低每個字符沒有高低、大小的區別大小的區別。
15、只能使用圓括號只能使用圓括號,可以多重使用,必須成對,可以多重使用,必須成對出現。出現。 VB表達式中的表達式中的乘號乘號“*”不能省略不能省略。 能用內部函數的地方能用內部函數的地方盡量使用內部函數盡量使用內部函數。364.2 表達式表達式v將代數式轉換為表達式將代數式轉換為表達式: 例子:將數學式例子:將數學式 寫成寫成VB表表達式達式結果:結果:(-b+ sqr(b2-4*a*c) / (2*a) aacbb242374.2 表達式表達式v浮點數的精度問題浮點數的精度問題:無論是單精度還是雙精:無論是單精度還是雙精度浮點數都有有效數字位數的限制,度浮點數都有有效數字位數的限制,無法準無法
16、準確表示超過該精度的值確表示超過該精度的值。在編程時,應考慮。在編程時,應考慮這一點。這一點。v運算的順序問題運算的順序問題: 在構造表達式時,應避免在計算過程中出現在構造表達式時,應避免在計算過程中出現特大或特小的值特大或特小的值,可能,可能造成溢出造成溢出或或精度損失精度損失。 應避免應避免特別大的值與特別小的值特別大的值與特別小的值直接相加減直接相加減,可能可能造成誤差造成誤差。384.2 表達式表達式v運算過程中的溢出錯誤運算過程中的溢出錯誤: 當為數值型變量賦一個超出其表示范圍的值當為數值型變量賦一個超出其表示范圍的值時會出現時會出現“溢出錯誤溢出錯誤”。同樣,。同樣,在表達式的在表
17、達式的運算過程中運算過程中,當運算的中間結果超出變量的當運算的中間結果超出變量的表示范圍時表示范圍時,也會導致,也會導致“溢出錯誤溢出錯誤”。 例子例子:int1=20000: int2=20000sng1=int1+int2 溢出錯誤。溢出錯誤。dim int1 as integer, int2 as integer, sng1 as single394.2 表達式表達式5、表達式求值、表達式求值v表達式的值是表達式中表達式的值是表達式中所有運算執行后的最所有運算執行后的最終結果終結果v例子例子:已知:已知a=3,b=4,c=5,求表達式值。,求表達式值。 (a+b)+c-1 and b+c
18、/2 求解:求解: 7+5-1 and 4+2.5 11 and 6.5 11 and 6 00001011 and 00000110 00010001404.2 表達式表達式v例子例子:41上機作業三上機作業三題目題目1:已知三角形三邊:已知三角形三邊a,b,c的長,求三角的長,求三角形的面積,輸出面積。形的面積,輸出面積。分析分析:應用程序的界面應該能讓用戶輸入三邊:應用程序的界面應該能讓用戶輸入三邊的長,程序在接受用戶輸入的數據后,利用數的長,程序在接受用戶輸入的數據后,利用數學公式對數據進行計算,并把結果輸出到屏幕學公式對數據進行計算,并把結果輸出到屏幕上。已知三角形三邊上。已知三角形三邊a,b,c的長,求三角形的長,求三角形的面積的公式為:的面積的公式為:其
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論