任務(wù)二選擇型流程設(shè)計(jì)--表達(dá)式_第1頁(yè)
任務(wù)二選擇型流程設(shè)計(jì)--表達(dá)式_第2頁(yè)
任務(wù)二選擇型流程設(shè)計(jì)--表達(dá)式_第3頁(yè)
任務(wù)二選擇型流程設(shè)計(jì)--表達(dá)式_第4頁(yè)
任務(wù)二選擇型流程設(shè)計(jì)--表達(dá)式_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) C運(yùn)運(yùn)算算符符1 1、算術(shù)運(yùn)算符:(、算術(shù)運(yùn)算符:(+ - + - * * / % + - / % + -)2 2、關(guān)系運(yùn)算符:(、關(guān)系運(yùn)算符:( = != = !=)3 3、邏輯運(yùn)算符:(!、邏輯運(yùn)算符:(! & | & |)4 4、位運(yùn)算符、位運(yùn)算符 :(:( | & | &)5 5、賦值運(yùn)算符:(、賦值運(yùn)算符:(= = 及其擴(kuò)展)及其擴(kuò)展)6 6、條件運(yùn)算符:(、條件運(yùn)算符:(?:?:)7 7、逗號(hào)運(yùn)算符:(、逗號(hào)運(yùn)算符:(, ,)8 8、指針運(yùn)算符:(

2、、指針運(yùn)算符:(* * & &)求字節(jié)數(shù):(求字節(jié)數(shù):(sizeofsizeof)強(qiáng)制類型轉(zhuǎn)換:(類型)強(qiáng)制類型轉(zhuǎn)換:(類型)分量運(yùn)算符:(分量運(yùn)算符:(. -. -)下標(biāo)運(yùn)算符:(下標(biāo)運(yùn)算符:()其它其它 :(:(( ) -( ) -)ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 1 1)基本算術(shù)運(yùn)算符:)基本算術(shù)運(yùn)算符: + - + - * * / % / %結(jié)合方向:從左向右結(jié)合方向:從左向右優(yōu)先級(jí):優(yōu)先級(jí): - - - -* * / % / % - - + -+ - (2) (3) (4) (2) (3) (4)

3、說明:說明: “- -”可為可為單目單目運(yùn)算符時(shí)運(yùn)算符時(shí), ,右結(jié)合性右結(jié)合性兩整數(shù)相除,結(jié)果為整數(shù)兩整數(shù)相除,結(jié)果為整數(shù)% %要求兩側(cè)均為整型數(shù)據(jù)要求兩側(cè)均為整型數(shù)據(jù)例 5/2 = -5/2.0 =例 5%2 = -5%2 = 1%10 = 5%1 = 5.5%22-2.51-110()ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 作用:使變量值加作用:使變量值加1 1或減或減1 1種類:種類:前置前置 +i, -i (+i, -i (先執(zhí)行先執(zhí)行i+1i+1或或i-1i-1,再使用,再使用i i值)值)后置后置 i+,ii+,i-

4、(- (先使用先使用i i值值, ,再執(zhí)行再執(zhí)行i+1i+1或或i-1i-1)說明:說明:+ - + - 不能用于常量和表達(dá)式不能用于常量和表達(dá)式, ,如如5+5+,( (a+ba+b)+)+ -+ -結(jié)合方向:結(jié)合方向: 自右向左自右向左優(yōu)先級(jí):優(yōu)先級(jí):- + - - + - -* * / % -+ - / % -+ - (2) (3) (4)(2) (3) (4)例例 -i+ -i+ -(i+) -(i+) i=3; i=3; printf(printf(“%d%d”,-i,-i+); +); /-3 /-3 例例 j+kj+k; (; (j+)+kj+)+k; ;例例 -i+-i+ i=

5、3; i=3; printf(printf(“%d%d”,-i,-i+);+); 例 j=3; k=+j; j=3; k=j+; j=3; printf(“%d”,+j); j=3; printf(“%d”,j+); a=3;b=5;c=(+a)*b; a=3;b=5;c=(a+)*b; /k=4,j=4/k=4,j=4/k=3,j=4/k=3,j=4/4/4/3/3/c=20,a=4/c=20,a=4/c=15,a=4/c=15,a=4ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 簡(jiǎn)單賦值運(yùn)算符簡(jiǎn)單賦值運(yùn)算符符號(hào):符號(hào): = =格式:

6、格式: 變量標(biāo)識(shí)符變量標(biāo)識(shí)符= =表達(dá)式表達(dá)式作用:將一個(gè)數(shù)據(jù)(常量或表達(dá)式)賦給一作用:將一個(gè)數(shù)據(jù)(常量或表達(dá)式)賦給一個(gè)變量個(gè)變量復(fù)合賦值運(yùn)算符復(fù)合賦值運(yùn)算符種類種類:+= -= += -= * *= /= %= /= %= = = = &= = |= &= = |=含義:含義: exp1 op= exp2exp1 op= exp2 exp1 = exp1 = exp1exp1 op exp2 op exp2a+=3a=a+3x*=y+8x=x*(y+8)x%=3x=x%3例例 a=3;a=3; d= d=funcfunc();(); c=d+2; c=d+2;ShanWe

7、i vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 結(jié)合方向:結(jié)合方向:自右向左自右向左優(yōu)先級(jí)優(yōu)先級(jí): 14左側(cè)必須是變量,不能是常量或表達(dá)左側(cè)必須是變量,不能是常量或表達(dá)式式賦值表達(dá)式的值與變量值相等賦值表達(dá)式的值與變量值相等,且可嵌套且可嵌套賦值轉(zhuǎn)換賦值轉(zhuǎn)換規(guī)則規(guī)則: :使賦值號(hào)右邊表達(dá)式值使賦值號(hào)右邊表達(dá)式值自動(dòng)自動(dòng)轉(zhuǎn)換成轉(zhuǎn)換成其左邊變量的類型其左邊變量的類型例例 3=x-23=x-2* *y;y; a+ba+b=3;=3;例例 float f; int i; i=10; f=i;則則 f=10.0例例 int i; i=2.56; /結(jié)果結(jié)果i=

8、2;例例: a=b=c=5: a=b=c=5 a=(b=5) a=(b=5) a=5+(c=6) a=5+(c=6) a=(b=4)+(c=6) a=(b=4)+(c=6) a=(b=10)/(c=2) a=(b=10)/(c=2)/表達(dá)式值為表達(dá)式值為5 5,a,b,ca,b,c值為值為5 5/ b=5;a=5/ b=5;a=5/表達(dá)式值表達(dá)式值1111,c=6,a=11c=6,a=11/表達(dá)式值表達(dá)式值1010,a=10,b=4,c=6a=10,b=4,c=6/表達(dá)式值表達(dá)式值5 5,a=5,b=10,c=2a=5,b=10,c=2例例: a=12; : a=12; a+=a-=a a+=

9、a-=a* *a a例例: : intint a=2; a=2; a%=4-1; a%=4-1; a+=a a+=a* *=a-=a=a-=a* *=3; =3; /a=-264 /a=-264 等價(jià)于等價(jià)于a=a=a+(aa+(a=a-(a=a-(a* *a)a)/a=0 /a=0 等價(jià)于等價(jià)于a=a=a+(aa+(a=a=a* *(a=a-(a=a(a=a-(a=a* *3)3)ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 形式:形式:表達(dá)式表達(dá)式1,表達(dá)式表達(dá)式2,表達(dá)式表達(dá)式n 結(jié)合性結(jié)合性:從左向右從左向右 優(yōu)先級(jí)優(yōu)先級(jí): 1

10、5 逗號(hào)表達(dá)式的值:等于表達(dá)式逗號(hào)表達(dá)式的值:等于表達(dá)式n的值的值 用途:常用于循環(huán)用途:常用于循環(huán)for語(yǔ)句中語(yǔ)句中例例 a=3*5,a*4 a=3*5,a*4,a+5例例 x=(a=3,6*3) x=a=3,6*a例例 a=1;b=2;c=3; printf(“%d,%d,%d”,a,b,c); printf(“%d,%d,%d”,(a,b,c),b,c); /a=15,表達(dá)式值表達(dá)式值60/a=15,表達(dá)式值表達(dá)式值20/賦值表達(dá)式,表達(dá)式值賦值表達(dá)式,表達(dá)式值18,x=18/逗號(hào)表達(dá)式逗號(hào)表達(dá)式,表達(dá)式值表達(dá)式值18,x=3/1,2,3/3,2,3例例:#include void ma

11、in() int x,y=7; float z=4; x=(y=y+6,y/z); printf(x=%dn,x);運(yùn)行結(jié)果:運(yùn)行結(jié)果:x=3ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 關(guān)系運(yùn)算符關(guān)系運(yùn)算符種類種類: = !=結(jié)合方向:自左向右結(jié)合方向:自左向右優(yōu)先級(jí)別:優(yōu)先級(jí)別:=!=優(yōu)先級(jí)優(yōu)先級(jí)6(高)(高)優(yōu)先級(jí)優(yōu)先級(jí)7(低)(低)例例 cca+ba+b /c( /c(a+ba+b) ) ab!=c /(ab)!=c ab!=c /(ab)!=c a=bc /a=(bc) a=bc /a=(bc /a=(bc) a=bc /a=

12、(bc)關(guān)系表達(dá)式的值:是邏輯值關(guān)系表達(dá)式的值:是邏輯值“真真”或或“假假”,用,用1和和0表示表示例例 int a=3,b=2,c=1,d,f; ab (ab)=c b+cb f=abc/表達(dá)式值表達(dá)式值1/表達(dá)式值表達(dá)式值1/表達(dá)式值表達(dá)式值0/d=1/f=0ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 例例 若若a=0; b=0.5; x=0.3; 則則 a=x278在在C中是允許的,中是允許的, 值為值為0例例 int i=1, j=7,a; a=i+(j%4!=0); 則則a=2例例 a0 結(jié)果為結(jié)果為 A100 結(jié)果為結(jié)果為

13、10ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 例例 注意區(qū)分注意區(qū)分“=”與與“=” int a=0,b=1; if(a=b) printf(“a equal to b”); else printf(“a not equal to b”);例例 應(yīng)避免對(duì)應(yīng)避免對(duì)實(shí)數(shù)實(shí)數(shù)作相等或不等的判斷作相等或不等的判斷如如 1.0/3.0*3.0=1.0 結(jié)果為結(jié)果為可改寫為:可改寫為:fabs(1.0/3.0*3.0-1.0)1e-60ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) ab!

14、a!ba&ba|b真真假假真真假假假假假假真真真真 邏輯運(yùn)算符邏輯運(yùn)算符種類:種類: ! & |邏輯運(yùn)算真值表邏輯運(yùn)算真值表C C語(yǔ)言中語(yǔ)言中, ,運(yùn)算量運(yùn)算量: : 0 0表示表示“假假”, 非非0 0表示表示“真真”, , 運(yùn)算結(jié)果運(yùn)算結(jié)果: : 0 0表示表示“假假”, 1 1表示表示“真真”, ,真真假假假假假假假假假假真真真真假假假假真真真真真真假假真真真真ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) ! (2)& (11)| (12)高高低低例例 a=x & xb&xy a=b|x=y

15、 !a|abl優(yōu)先級(jí):優(yōu)先級(jí):l結(jié)合方向:結(jié)合方向:! :從右向左從右向左& :從左向右從左向右| :從左向右從左向右/ (a=x) & (xb)&(xy)/(a=b)|(x=y)/(!a)|(ab)例例 a=4;b=5; !a a&b a|b !a|b 4&0|2 53&2|83)&2|(8(4-(!0) 值為值為1ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 短路特性短路特性:邏輯表達(dá)式求解時(shí),并非所有的邏:邏輯表達(dá)式求解時(shí),并非所有的邏輯運(yùn)算符都被執(zhí)行,只是在必須執(zhí)行下一個(gè)邏

16、輯運(yùn)算符都被執(zhí)行,只是在必須執(zhí)行下一個(gè)邏輯運(yùn)算符才能求出表達(dá)式的解時(shí),才執(zhí)行該運(yùn)輯運(yùn)算符才能求出表達(dá)式的解時(shí),才執(zhí)行該運(yùn)算符算符例例 a&b&c /只在只在a為真時(shí),才判別為真時(shí),才判別b的值;的值; 只在只在a、b都為真時(shí),才判別都為真時(shí),才判別 c的值的值例例 a|b|c /只在只在a為假時(shí),才判別為假時(shí),才判別b的值;的值; 只在只在a、b都為假時(shí),才判別都為假時(shí),才判別 c的值的值例例 a=1;b=2;c=3;d=4;m=1;n=1; (m=ab)&(n=cd)/結(jié)果結(jié)果m=0,n=1ShanWei vocation and technology college

17、 任務(wù)二 選擇型流程設(shè)計(jì) 一般形式:一般形式: expr1 ? expr2 : expr3 執(zhí)行過程執(zhí)行過程 功能:相當(dāng)于條件語(yǔ)句,但不能取代一般功能:相當(dāng)于條件語(yǔ)句,但不能取代一般if語(yǔ)句語(yǔ)句例例 if (ab) printf(“%d”,a); else printf(“%d”,b);printf(“%d”,ab?a:b);例例 求求 a+|b| printf(“a+|b|=%dn”,b0?a+b:a-b);expr1取取expr2值值取取expr3值值非非0=0例例 (a=b)?Y:N (x%2=1)?1:0 (x=0)?x:-x (c=a & c0?1:(xb?a:cd?c:d

18、ab?a:(cd?c:d)expr1、expr2、expr3類型可不同,表達(dá)式值取較高的類型類型可不同,表達(dá)式值取較高的類型例例 x?a:b /x=0,表達(dá)式值為表達(dá)式值為b; x0,表達(dá)式值為表達(dá)式值為a xy?1:1.5 /xy ,值為值為1.0; xy ,值為值為1.5ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 01 11 11 11 11 11 11 11int型:型:最大最大:3276710 00 00 00 00 00 00 00最小最小:-3276811 11 11 11 11 11 11 11unsigned int型:型:最大最大:6553500 00 00 00 00 00 00 00最小最小:0ShanWei vocation and technology college 任務(wù)二 選擇型流程設(shè)計(jì) 數(shù)制數(shù)制基基權(quán)權(quán)表示表示數(shù)碼數(shù)碼特點(diǎn)特點(diǎn)10,10,10,十進(jìn)制數(shù)0910逢十進(jìn)一二進(jìn)制數(shù)01

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論