![C語(yǔ)言運(yùn)算符和表達(dá)式_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/30/f7caa767-987c-415f-aedf-0c07f6623f56/f7caa767-987c-415f-aedf-0c07f6623f561.gif)
![C語(yǔ)言運(yùn)算符和表達(dá)式_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/30/f7caa767-987c-415f-aedf-0c07f6623f56/f7caa767-987c-415f-aedf-0c07f6623f562.gif)
![C語(yǔ)言運(yùn)算符和表達(dá)式_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/30/f7caa767-987c-415f-aedf-0c07f6623f56/f7caa767-987c-415f-aedf-0c07f6623f563.gif)
![C語(yǔ)言運(yùn)算符和表達(dá)式_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/30/f7caa767-987c-415f-aedf-0c07f6623f56/f7caa767-987c-415f-aedf-0c07f6623f564.gif)
![C語(yǔ)言運(yùn)算符和表達(dá)式_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/30/f7caa767-987c-415f-aedf-0c07f6623f56/f7caa767-987c-415f-aedf-0c07f6623f565.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Suzhou Institute of Service and Outsourcing1Module 1c: Operator and ExpressionGeorge Cao Oct. 13, 2009 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, S
2、uzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.2Study Purpose運(yùn)算符Operator:狹義的運(yùn)算符是表示各種運(yùn)算的符號(hào)。表達(dá)式Expression:使用運(yùn)算符將常量、變量、函數(shù)連接起來,構(gòu)成表達(dá)式。C語(yǔ)言運(yùn)算符豐富,范圍很寬,把除了控制語(yǔ)句和輸入/輸出以外的幾乎所有的基本操作都作為運(yùn)算符處理,所以C語(yǔ)言運(yùn)算符可以看作是操作符。 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. Al
3、l Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.3 C C的運(yùn)算符有以下幾類:的運(yùn)算符有以下幾類: +,- Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Informatio
4、n. All Rights Reserved.4Agenda2. Assignment OperatorAssignment Operator賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式1. Arithmetic Operator and Expression算術(shù)運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符和表達(dá)式4. Comma OperatorComma Operator逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符7. Logical OperationLogical Operation邏輯運(yùn)算邏輯運(yùn)算 8. Conditional OperationConditional Operation條件運(yùn)算符條件運(yùn)算符3. Increme
5、nt & Decrement Operator自增自減運(yùn)算符自增自減運(yùn)算符5. Data Type Conversion數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換6. Bitwise Operator關(guān)系運(yùn)算符和表達(dá)式關(guān)系運(yùn)算符和表達(dá)式 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.51.
6、 1. Arithmetic Operator and Expression 1、算術(shù)運(yùn)算符 + (加法運(yùn)算符。如3+5) - (減法運(yùn)算符或負(fù)值運(yùn)算符。如5-2,-3) * (乘法運(yùn)算符。如3*5) / (除法運(yùn)算符。如5/3,5.0/3) %(模運(yùn)算符或求余運(yùn)算符,%要求兩側(cè)均為整型數(shù)據(jù)。如7%4的值為3)。 7.1%3 error Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confident
7、ial and Proprietary Information. All Rights Reserved.61、*、/ 運(yùn)算,運(yùn)算對(duì)象是整型、實(shí)型均可。整型(、*、/)整型整型 如:3+25 9/51實(shí)型(、*、/)實(shí)型實(shí)型 如:3.02.05.0 9.0/5.01.8若兩個(gè)操作數(shù)一個(gè)為整型、一個(gè)為實(shí)型,則結(jié)果為實(shí)型。如:32.05.0 9.0 / 51.82、關(guān)于運(yùn)算對(duì)象只能為整型數(shù)據(jù)。同樣的運(yùn)算對(duì)象也只能為整型數(shù)據(jù)。如:3.52是不對(duì)的。Instruction Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Informa
8、tion. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.7說明:(1)兩個(gè)整數(shù)相除的結(jié)果為整數(shù),如5/3的結(jié)果為1,舍去小數(shù)部分。但是如果除數(shù)或被除數(shù)中有一個(gè)為負(fù)值,則舍入的方向是不固定的,多數(shù)機(jī)器采用“向0取整”的方法(實(shí)際上就是舍去小數(shù)部分,注意:不是四舍五入)。Instruction Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Inform
9、ation. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.81. Arithmetic Operator and Expression Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Prop
10、rietary Information. All Rights Reserved.9 算術(shù)表達(dá)式: 用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象(也稱操作數(shù))連接起來的、符合C語(yǔ)法規(guī)則的式子,稱為算術(shù)表達(dá)式。 運(yùn)算對(duì)象可以是常量、變量、函數(shù)等。1. Arithmetic Operator and Expression Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietar
11、y Information. All Rights Reserved.10 例如,下面是一個(gè)合法的C算術(shù)表達(dá)式。 a*b/c-1.5+a 注意: C語(yǔ)言算術(shù)表達(dá)式的書寫形式與數(shù)學(xué)表達(dá)式的書寫形式有一定的區(qū)別: (1) C語(yǔ)言算術(shù)表達(dá)式的乘號(hào)(*)不能省略。例如:數(shù)學(xué)式b2-4ac,相應(yīng)的C表達(dá)式應(yīng)該寫成:b*b-4*a*c (2) C語(yǔ)言表達(dá)式中只能出現(xiàn)字符集允許的字符。例如,數(shù)學(xué)r2相應(yīng)的C表達(dá)式應(yīng)該寫成:PI*r*r。(其中PI是已經(jīng)定義的符號(hào)常量) (3)C語(yǔ)言算術(shù)表達(dá)式不允許有分子分母的形式。例如,(a+b)/(c+d) != a+b/c+d1. Arithmetic Operator
12、 and Expression Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.11 (4)C語(yǔ)言算術(shù)表達(dá)式只使用圓括號(hào)改變運(yùn)算的優(yōu)先順序(不能用)。可以使用多層圓括號(hào),此時(shí)左右括號(hào)必須配對(duì),運(yùn)算時(shí)從內(nèi)層括號(hào)開始,由內(nèi)向外依次計(jì)算表達(dá)式的值。 3、(算術(shù))運(yùn)算符的優(yōu)先級(jí)與結(jié)合性 C
13、語(yǔ)言規(guī)定了進(jìn)行表達(dá)式求值過程中,各運(yùn)算符的“優(yōu)先級(jí)”和“結(jié)合性”。 (1)C語(yǔ)言規(guī)定了運(yùn)算符的“優(yōu)先級(jí)”和“結(jié)合性”。在表達(dá)式求值時(shí),先按運(yùn)算符的“優(yōu)先級(jí)別”高低次序執(zhí)行。 如表達(dá)式:a-b*c等價(jià)于a-(b*c),“*”運(yùn)算符優(yōu)先級(jí)高于“-”運(yùn)算符。1. Arithmetic Operator and Expression Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential an
14、d Proprietary Information. All Rights Reserved.12 (2)如果在一個(gè)運(yùn)算對(duì)象兩側(cè)的運(yùn)算符的優(yōu)先級(jí)別相同,則按規(guī)定的“結(jié)合方向”處理。 例如:a-b+c,到底是(a-b)+c還是a-(b+c)?(b先與a參與運(yùn)算還是先于c參與運(yùn)算?) 按結(jié)合方向和優(yōu)先界別原則:+/-運(yùn)算優(yōu)先級(jí)別相同,結(jié)合性為“自左向右”,即就是說b先與左邊的a結(jié)合。所以a-b+c等價(jià)于(a-b)+c。1. Arithmetic Operator and Expression Copyright, Suzsoft Co., Ltd. Confidential and Proprie
15、tary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.13 (3)在書寫多個(gè)運(yùn)算符的表達(dá)式時(shí),應(yīng)當(dāng)注意各個(gè)運(yùn)算符的優(yōu)先級(jí),確保表達(dá)式中的運(yùn)算符能以正確的順序參與運(yùn)算。對(duì)于復(fù)雜表達(dá)式為了清晰起見可以加圓括號(hào)“()”強(qiáng)制規(guī)定計(jì)算順序。1. Arithmetic Operator and Expression Copyright, Suzsoft Co., Ltd. Confidential an
16、d Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.14ExerciseExercise 寫出下列算式的C語(yǔ)言表達(dá)式: (求平方根的函數(shù)為sqrt) b/(a+b/a) (x-y*z)/(a+b+c) sqrt(a+b)*(b+c)*(c+a) Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Inform
17、ation. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.15Agenda5. Data Type Change數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換2. Assignment OperatorAssignment Operator賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式3. Self Add/Cut自增自減運(yùn)算符自增自減運(yùn)算符6. Relation Operation and Expression關(guān)系運(yùn)算符和表達(dá)式關(guān)系運(yùn)算符
18、和表達(dá)式1. Arithmetic Operator and Expression算術(shù)運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符和表達(dá)式4. CommaComma逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符7. Logical OperationLogical Operation邏輯運(yùn)算邏輯運(yùn)算 8. Conditional OperationConditional Operation條件運(yùn)算符條件運(yùn)算符 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co.,
19、Ltd. Confidential and Proprietary Information. All Rights Reserved.162. 2. Assignment Operator 賦值運(yùn)算符:賦值符號(hào)“=”就是賦值運(yùn)算符。 賦值表達(dá)式:由賦值運(yùn)算符組成的表達(dá)式稱為賦值表達(dá)式。一般形式: 變量賦值符表達(dá)式 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Prop
20、rietary Information. All Rights Reserved.17 賦值表達(dá)式的求解過程:將賦值運(yùn)算符右側(cè)的表達(dá)式的值賦給左側(cè)的變量,同時(shí)整個(gè)賦值表達(dá)式的值就是剛才所賦的值。賦值的含義:將賦值運(yùn)算符右邊的表達(dá)式的值存放到左邊變量名標(biāo)識(shí)的存儲(chǔ)單元中。 例如:x=10+y; 執(zhí)行賦值運(yùn)算(操作),將10+y的值賦給變量x,同時(shí)整個(gè)表達(dá)式的值就是剛才所賦的值。2. Assignment Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserve
21、d. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.18 說明: (1) 賦值運(yùn)算符左邊必須是變量,右邊可以是常量、變量、函數(shù)調(diào)用或常量、變量、函數(shù)調(diào)用組成的表達(dá)式。 例如:x=10 y=x+10 y=func()都是合法的賦值表達(dá)式。 (2)賦值符號(hào)“=”不同于數(shù)學(xué)的等號(hào),它沒有相等的含義。(“=”相等)例如:C語(yǔ)言中x=x+1是合法的(數(shù)學(xué)上不合法),它的含義是取出變量x的值加1,再存放到變量x中。2. Assignment Operator Copyri
22、ght, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.19 (3)賦值運(yùn)算時(shí),當(dāng)賦值運(yùn)算符兩邊數(shù)據(jù)類型不同時(shí),將由系統(tǒng)自動(dòng)進(jìn)行類型轉(zhuǎn)換type conversion。 轉(zhuǎn)換原則是:先將賦值號(hào)右邊表達(dá)式類型轉(zhuǎn)換為左邊變量的類型,然后賦值。 Int a; a=1.546789; Printf(“%d”,
23、a); a=1; (1)C語(yǔ)言的賦值符號(hào)“=”除了表示一個(gè)賦值操作外,還是一個(gè)運(yùn)算符,也就是說賦值運(yùn)算符完成賦值操作后,整個(gè)賦值表達(dá)式還會(huì)產(chǎn)生一個(gè)所賦的值,這個(gè)值還可以利用。2. Assignment Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.20 賦值表達(dá)
24、式的求解過程是: 先計(jì)算賦值運(yùn)算符右側(cè)的“表達(dá)式”的值 將賦值運(yùn)算符右側(cè)“表達(dá)式”的值賦值給左側(cè)的變量。 整個(gè)賦值表達(dá)式的值就是被賦值變量的值。2. Assignment Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.21 例如:分析x=y=z=3+5這個(gè)表達(dá)式
25、。根據(jù)優(yōu)先級(jí):原式x=y=z=(3+5);根據(jù)結(jié)合性(從右向左):x=(y=(z=(3+5)x=(y=(z=3+5)2. Assignment Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.22 1、復(fù)合賦值運(yùn)算符 在賦值符“=”之前加上某些運(yùn)算符,可以構(gòu)成復(fù)合
26、賦值運(yùn)算符,復(fù)合賦值運(yùn)算符可以構(gòu)成賦值表達(dá)式。C語(yǔ)言中許多雙目運(yùn)算符可以與賦值運(yùn)算符一起構(gòu)成復(fù)合運(yùn)算符,即: +=,-=,*=,/=,%=,=,&=,|=,=2. Assignment Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.23 復(fù)合賦值表達(dá)式一
27、般形式: = 等價(jià)于: = 例如: n+=1 等價(jià)于 n=n+1; x*=y+1 等價(jià)于 x=x*(y+1) a/=3 = a=a/3; 注意:賦值運(yùn)算符、復(fù)合賦值運(yùn)算符的優(yōu)先級(jí)比算術(shù)運(yùn)算符低。2. Assignment Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserv
28、ed.24 結(jié)合性原則:“自右向左” 如:a=b*=a+2; 等價(jià)于b=b*(a+2); a=b; exercise:設(shè)k=2, i=2, m=(k+=i*=k) 則m= i= i=i*k; i=4; k=k+4; k=6; m=6;2. Assignment Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Informatio
29、n. All Rights Reserved.25Agenda5. Data Type Conversion數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換2. Evaluating OperatorEvaluating Operator賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式3. Increment & Decrement Operator自增自減運(yùn)算符自增自減運(yùn)算符6. Bitwise Operation and Expression關(guān)系運(yùn)算符和表達(dá)式關(guān)系運(yùn)算符和表達(dá)式1. Arithmetic Operator and Expression算術(shù)運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符和表達(dá)式4. Comma Ope
30、ratorComma Operator逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符7. Logical OperationLogical Operation邏輯運(yùn)算邏輯運(yùn)算 8. Conditional OperationConditional Operation條件運(yùn)算符條件運(yùn)算符 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Ri
31、ghts Reserved.26Increment & Decrement Operator1.作用 自增運(yùn)算使單個(gè)變量的值增,自減運(yùn)算使單個(gè)變量的值減。2.用法與運(yùn)算規(guī)則 自增、自減運(yùn)算符都有兩種用法: (1)前置運(yùn)算運(yùn)算符放在變量之前:a、a 先使變量的值增(或減),然后再以變化后的值參與其它運(yùn)算,即先增減、后運(yùn)算。 (2)后置運(yùn)算運(yùn)算符放在變量之后:a、a 變量先參與其它運(yùn)算,然后再使變量的值增(或減),即先運(yùn)算、后增減。 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Righ
32、ts Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.273.說明(1)自增、自減運(yùn)算,常用于循環(huán)語(yǔ)句中,使循環(huán)控制變量加(或減),以及指針變量中,使指針指向下(或上)一個(gè)地址。(2)自增、自減運(yùn)算符,不能用于常量和表達(dá)式。例如,5+、-(a+b)等都是非法的。(3)在表達(dá)式中,連續(xù)使同一變量進(jìn)行自增或自減運(yùn)算時(shí),很容易出錯(cuò),所以最好避免這種用法。Increment & Decrement Operator Copyright, Su
33、zsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.28 exercise: 設(shè)a=5; b=+a; 則b=6 , a=6 ; b=+a; 則a=6 , b=6 ; b=a-; 則b=5 , a= 4; b=-a; 則a=4 , b= 4;Increment & Decrement Operator C
34、opyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.29 exercise: 設(shè)a=5; b=a+; 則b=5, a=6; b=+a; 則a=6, b=6; b=a-; 則b=5, a=4; b=-a; 則a=4, b=4; 自加、自減運(yùn)算也是賦值運(yùn)算,故運(yùn)算的對(duì)象只能是變量,不能是常數(shù)
35、或表達(dá)式。 即:5 (x+y)+ 都是錯(cuò)誤的。 -IT SERVICE 20091020Increment & Decrement Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.30Agenda5. Data Type Change數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)
36、換2. Evaluating OperatorEvaluating Operator賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式3. Self Add/Cut自增自減運(yùn)算符自增自減運(yùn)算符6. Relation Operation and Expression關(guān)系運(yùn)算符和表達(dá)式關(guān)系運(yùn)算符和表達(dá)式1. Arithmetic Operator and Expression算術(shù)運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符和表達(dá)式4. Comma OperatorComma Operator逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符7. Logical OperationLogical Operation邏輯運(yùn)算邏輯運(yùn)算 8. Conditio
37、nal OperationConditional Operation條件運(yùn)算符條件運(yùn)算符 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.314. Comma Operator and Expression語(yǔ)言提供一種用逗號(hào)運(yùn)算符“,”連接起來的式子,稱為逗號(hào)表達(dá)式。逗號(hào)運(yùn)算符又稱
38、順序求值運(yùn)算符。一般形式 表達(dá)式, 表達(dá)式, , 表達(dá)式n1、逗號(hào)表達(dá)式的求解過程為:先求解表達(dá)式1,再求解表達(dá)式2。結(jié)合性自左向右。2、整個(gè)逗號(hào)表達(dá)式的值是表達(dá)式n的值。3、逗號(hào)運(yùn)算符的優(yōu)先級(jí)是所有運(yùn)算符中最低的。 如:a=(3+5,6+8); 則a的值為14。 又如:a=3*5, a*4 先求a=3*5, 再求a*4, 故整個(gè)逗號(hào)表達(dá)式的值為:60。 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd.
39、Confidential and Proprietary Information. All Rights Reserved.32例1、假定x和y為double類型,則表達(dá)式x=2,y=x+3/2的值是()A)3.500000 B)3 C)2.000000 D)3.000000例2、若已定義x,y為int 類型,則表達(dá)式:x=2, y=x+3/2.0的值是()B4. Comma Operator and Expression Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Rese
40、rved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.33Agenda5. Data Type Conversion數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換2. Evaluating OperatorEvaluating Operator賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式3. Self Add/Cut自增自減運(yùn)算符自增自減運(yùn)算符6. Relation Operation and Expression關(guān)系運(yùn)算符和表達(dá)式關(guān)系運(yùn)算符和表達(dá)式1. Arithmetic
41、Operator and Expression算術(shù)運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符和表達(dá)式4. Comma OperatorComma Operator逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符7. Logical OperationLogical Operation邏輯運(yùn)算邏輯運(yùn)算 8. Conditional OperationConditional Operation條件運(yùn)算符條件運(yùn)算符 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co.,
42、Ltd. Confidential and Proprietary Information. All Rights Reserved.345. Data Type Conversion數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算 整型、單精度型、雙精度型數(shù)據(jù)可以混合運(yùn)算。前已述及,整型、單精度型、雙精度型數(shù)據(jù)可以混合運(yùn)算。前已述及,字符型數(shù)據(jù)可以與整型通用,因此,整型、實(shí)型(包括單、雙字符型數(shù)據(jù)可以與整型通用,因此,整型、實(shí)型(包括單、雙精度)、字符型數(shù)據(jù)間可以混合運(yùn)算。例如精度)、字符型數(shù)據(jù)間可以混合運(yùn)算。例如 10+a+110+a+15-87655-8765
43、12341234bb是合法的。在進(jìn)行運(yùn)算時(shí),不同類型的數(shù)據(jù)要先轉(zhuǎn)換成同一類是合法的。在進(jìn)行運(yùn)算時(shí),不同類型的數(shù)據(jù)要先轉(zhuǎn)換成同一類型,然后進(jìn)行運(yùn)算。轉(zhuǎn)換的規(guī)則按下圖所示型,然后進(jìn)行運(yùn)算。轉(zhuǎn)換的規(guī)則按下圖所示 d o u b l e f l o a tlong unsignedint char, short Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprieta
44、ry Information. All Rights Reserved.35舉例說明:假設(shè)已指定i為整型變量,f為float變量,d為double型變量,e為1ong型,有下面式子: 10十a(chǎn)i*f-d/e運(yùn)算次序?yàn)椋哼M(jìn)行10a的運(yùn)算,先將a轉(zhuǎn)換成整數(shù)97,運(yùn)算結(jié)果為107。進(jìn)行i*f的運(yùn)算。先將i與f都轉(zhuǎn)成double型,運(yùn)算結(jié)果為double型。整數(shù)107與i*f的積相加。先將整數(shù)107轉(zhuǎn)換成雙精度數(shù)(小數(shù)點(diǎn)后加若干個(gè)0,即10700000),結(jié)果為double型。將變量e化成double型,d/e結(jié)果為double型。將10十a(chǎn)i*f的結(jié)果與”d/e結(jié)果為double型。 上述的類型轉(zhuǎn)換
45、是由系統(tǒng)自動(dòng)進(jìn)行的。5. Data Type Conversion數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.361、賦值轉(zhuǎn)換C語(yǔ)言允許通過賦值使賦值號(hào)右邊表達(dá)式值的類型轉(zhuǎn)換為其左邊變量的類型。如上圖1中,右邊表達(dá)式的值為double類型,但經(jīng)過賦值運(yùn)
46、算卻轉(zhuǎn)換為int類型。即result中的最終結(jié)果為一個(gè)整數(shù)。 即:賦值轉(zhuǎn)換具有強(qiáng)制性,賦值號(hào)右邊的表達(dá)式要強(qiáng)制轉(zhuǎn)換成左邊變量的形式。 又如:int a; a=5.8; printf(“%d”, a ); 則輸出5。5. Data Type Conversion數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Informa
47、tion. All Rights Reserved.372、不同類型數(shù)據(jù)的顯式轉(zhuǎn)換在C語(yǔ)言中,有一種“強(qiáng)制類型轉(zhuǎn)換運(yùn)算符”,它能將某一類型的變量強(qiáng)制轉(zhuǎn)換為另一種類型,它的一般形式為: (類型標(biāo)識(shí)符)表達(dá)式如:printf ( “ %c ”, (char)(67-1.2); 會(huì)輸出A。如:float x=4.5; int i; i=(int)x; printf(“%d %f “, i, x); 則會(huì)輸出4 4.500000 即:x的值仍為4.5,i的值為x值的整數(shù)部分。又如: (int)(x+y) 不能寫為 int(x+y) 5. Data Type Conversion數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換
48、 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.383、輸出轉(zhuǎn)換在輸出語(yǔ)句中,也會(huì)發(fā)生隱式轉(zhuǎn)換。如:float f=5.8; printf(“%d”, f ); 則輸出5。Exercise:int a=5.8; int i = - - 1; printf(“%f”, a); pr
49、intf(“%u”, i );輸出結(jié)果?5. Data Type Conversion數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.39Exercises1、變量a是int 類型,并執(zhí)行了語(yǔ)句:a=A+1.6; 則正確的敘述是()A)a的值是字符C B)
50、不允許字符型和浮點(diǎn)型相加 C)a的值是浮點(diǎn)型 D)a的值是字符A的ASCII碼加上1。2、設(shè)a、b均為double型變量,且a=5.5;b=2.5,則表達(dá)式(int)a+b/b的值是()A)6.500000 B)6 C)5.500000 D)6.0000003、已知int m=3,n=4, x; 則x= -m+; x=x+8/+m; 后,x=( ),m( )。-25 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co.,
51、 Ltd. Confidential and Proprietary Information. All Rights Reserved.40Agenda5. Data Type Change數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換2. Evaluating OperatorEvaluating Operator賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式3. Self Add/Cut自增自減運(yùn)算符自增自減運(yùn)算符6. Bitwise Operator關(guān)系運(yùn)算符和表達(dá)式關(guān)系運(yùn)算符和表達(dá)式1. Arithmetic Operator and Expression算術(shù)運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符和表達(dá)式4. CommaC
52、omma逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符7. Logical OperationLogical Operation邏輯運(yùn)算邏輯運(yùn)算 8. Conditional OperationConditional Operation條件運(yùn)算符條件運(yùn)算符 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.4
53、16. Bitwise Operator關(guān)系運(yùn)算符作用優(yōu)先級(jí)運(yùn)算對(duì)象運(yùn)算結(jié)果結(jié)合性大于1高整型實(shí)型或字符型關(guān)系成立則為真,結(jié)果為1關(guān)系不成立則為假,結(jié)果為0自左向右=大于等于3-1 等價(jià)于:a=(1+2)(3-1) 關(guān)系成立,a的值為1。6. Bitwise Operator Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information
54、. All Rights Reserved.43又如:2=3 表達(dá)式值為0, 10!9 表達(dá)式值為1,2=3 表達(dá)式值為0。又如:23=5 等價(jià)于 2(3 =5) 表達(dá)式值為0。又如:z=3+1=2+31=5+6*2 先做算術(shù)運(yùn)算(先乘除取余,后加減,相同級(jí)別的從左向右做):z = ( 3 + 1 ) = = ( 2 + 3 - 1 ) = ( 5 + 1 2 ) 等 價(jià) 于 z=4=4、=、=,后、?。簔=41 z=0最后做賦值運(yùn)算。特別要注意“”與“”的區(qū)別。6. Bitwise Operator Copyright, Suzsoft Co., Ltd. Confidential and
55、 Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.44Agenda5. Data Type Change數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換2. Evaluating OperatorEvaluating Operator賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式3. Self Add/Cut自增自減運(yùn)算符自增自減運(yùn)算符6. Bitwise Operator關(guān)系運(yùn)算符和表達(dá)式關(guān)系運(yùn)
56、算符和表達(dá)式1. Arithmetic Operator and Expression算術(shù)運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符和表達(dá)式4. CommaComma逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符7. Logical OperationLogical Operation邏輯運(yùn)算邏輯運(yùn)算 8. Conditional OperationConditional Operation條件運(yùn)算符條件運(yùn)算符 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co.
57、, Ltd. Confidential and Proprietary Information. All Rights Reserved.457. Logical Operator and Expression邏輯運(yùn)算符作用運(yùn)算對(duì)象運(yùn)算結(jié)果優(yōu)先級(jí)結(jié)合性!邏輯非整型實(shí)型或字符型0或11高自右向左&邏輯與2中自左向右|邏輯或3低ab! a! ba & ba | b110011100101011001001100 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Rese
58、rved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.46注意:注意:若&的第一個(gè)操作數(shù)為0,則第二個(gè)操作數(shù)不再計(jì)算;若|的第一個(gè)操作符為非0,則第二個(gè)操作數(shù)不再計(jì)算。 如:5&2 3&0 0&(x=1+3) 1&5 1&0 0& . .2 5 | 2 3 | 0 0 | 0 1 | (x*w) 1 | 0 0 | . .27. Logical Operator and Expression Copy
59、right, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.47例1:已有定義:int x=3, y=4, z=5; 則表達(dá)式 !(x+y)+z-1&y+z/2 的值是() A)6 B)0 C)2 D)1例2、語(yǔ)句printf(“%d”, (a=4) & (b=-3) )的輸出結(jié)果是(
60、)【注】例3、設(shè)x, y, z 均為int型變量,則執(zhí)行語(yǔ)句x=y=3;t=+x | +y 后,y的值為()【注】例4、10 x100 或x10) & (x=100))| (x 1 Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved. Copyright, Suzsoft Co., Ltd. Confidential and Proprietary Information. All Rights Reserved.48例5、寫出點(diǎn)(x,y)落在圖2環(huán)形部分的C語(yǔ)言表達(dá)式。 1221xy(x*x+y*y=1 & x*x+y*yb)&(n=cd)運(yùn)算后,n的值為()A)0 B)1 C)2 D)317. Lo
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年專家顧問聘用合同范文
- 2025年中醫(yī)藥大數(shù)據(jù)項(xiàng)目提案報(bào)告模板
- 2025年懷化市住宅租賃合同示范
- 2025年植樹用地租賃合同模板
- 2025年電熱設(shè)備:電熱管項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告范文
- 2025年產(chǎn)權(quán)交易所項(xiàng)目轉(zhuǎn)讓服務(wù)協(xié)議
- 2025年中等教育助學(xué)貸款合同范本
- 2025年衛(wèi)生用品采購(gòu)合同
- 2025年天然級(jí)復(fù)盆子酮項(xiàng)目申請(qǐng)報(bào)告模稿
- 2025年企業(yè)信息技術(shù)保密協(xié)議管理
- 糖尿病運(yùn)動(dòng)指導(dǎo)課件
- 蛋白表達(dá)及純化課件
- 完整版金屬學(xué)與熱處理課件
- T∕CSTM 00640-2022 烤爐用耐高溫粉末涂料
- 304不銹鋼管材質(zhì)證明書
- 民用機(jī)場(chǎng)不停航施工安全管理措施
- 港口集裝箱物流系統(tǒng)建模與仿真技術(shù)研究-教學(xué)平臺(tái)課件
- 新教科版2022年五年級(jí)科學(xué)下冊(cè)第2單元《船的研究》全部PPT課件(共7節(jié))
- QTD01鋼質(zhì)焊接氣瓶檢驗(yàn)工藝指導(dǎo)書
- 辛棄疾生平簡(jiǎn)介(課堂PPT)
- 人教版七年級(jí)英語(yǔ)下冊(cè)全冊(cè)英語(yǔ)單詞默寫直接打印
評(píng)論
0/150
提交評(píng)論