謝麗聰老師C語(yǔ)言5分支結(jié)構(gòu)程序2PPT演示課件_第1頁(yè)
謝麗聰老師C語(yǔ)言5分支結(jié)構(gòu)程序2PPT演示課件_第2頁(yè)
謝麗聰老師C語(yǔ)言5分支結(jié)構(gòu)程序2PPT演示課件_第3頁(yè)
謝麗聰老師C語(yǔ)言5分支結(jié)構(gòu)程序2PPT演示課件_第4頁(yè)
謝麗聰老師C語(yǔ)言5分支結(jié)構(gòu)程序2PPT演示課件_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第五章 分支結(jié)構(gòu)程序設(shè)計(jì) 由關(guān)系運(yùn)算符、圓括號(hào)把兩個(gè)表達(dá)式連接起由關(guān)系運(yùn)算符、圓括號(hào)把兩個(gè)表達(dá)式連接起來(lái)的式子。來(lái)的式子。 若所表示的條件成立、則其值為若所表示的條件成立、則其值為1(非(非0)、)、否則其值為否則其值為0。、例:例: a=2 、39 、a != ( a=8 ) 、 x+(y=3)=k*z 、(a!=3)(kbcd 應(yīng)表示為應(yīng)表示為 不能順手也寫(xiě)為不能順手也寫(xiě)為 abcd 關(guān)系運(yùn)算符都是雙目運(yùn)算符,其結(jié)合性均關(guān)系運(yùn)算符都是雙目運(yùn)算符,其結(jié)合性均為為。 在六個(gè)關(guān)系運(yùn)算符中,在六個(gè)關(guān)系運(yùn)算符中,。由邏輯運(yùn)算符、圓括號(hào)把表達(dá)式連接起來(lái)的式子由邏輯運(yùn)算符、圓括號(hào)把表達(dá)式連接起來(lái)的式子若

2、所表示的條件成立、其值為若所表示的條件成立、其值為1(非非0)、否則其值為、否則其值為0& (與)(與) 、| (或)、?。ǚ牵ɑ颍ⅲ。ǚ牵┖秃途鶠榫鶠?,具有,具有。 為為,具有,具有。邏輯運(yùn)算符和其它運(yùn)算符優(yōu)先級(jí)的關(guān)系可表示如下:邏輯運(yùn)算符和其它運(yùn)算符優(yōu)先級(jí)的關(guān)系可表示如下: 按照運(yùn)算符的優(yōu)先順序可以得出:按照運(yùn)算符的優(yōu)先順序可以得出: ab & cd 等價(jià)于等價(jià)于 (ab)&(cd) !b=c|da 等價(jià)于等價(jià)于 (!b)=c)|(dc&x+yc)&(x+y)3 a=8 23 0 2、x+y a 2 3、x+(y=3)=k*z !a 0+3=-1

3、 !a 0|0 4、(x!=7) a 0!=7|971|97 5、 ( x+y3 a=8 ) !(231)!(01)!016、 ( k*q ) !(-1)7、!x !(1) !(0) 1作第一個(gè),知道結(jié)果,后面不作,如:作第一個(gè),知道結(jié)果,后面不作,如: & &1、執(zhí)行、執(zhí)行 int a,b,c; a=b=c=0; + +a|+ +b&+ +c; 后后a、b、c值分別為值分別為1、0、02、執(zhí)行、執(zhí)行 int a=5,b=6,x=1,y=2; (a=xy)&(b= xy); 后后a、b值分別為值分別為0、63、執(zhí)行、執(zhí)行 int a,b,c;a=b=c= - 1

4、; + +a & + +b | + +c; 后后a、b、c值分別為值分別為0、-1、0 例例1:main()char c=k; int i=1,j=2,k=3; float x=3e+5,y=0.85; printf(%d,%dn,!x*!y,!x); printf(%d,%dn,x|i&j-3,ij&xy); printf(%d,%dn,i=5&c&(j=8),x+y|i+j+k); 1、第一種形式為基本形式、第一種形式為基本形式: if if(表達(dá)式表達(dá)式) 語(yǔ)句語(yǔ)句 語(yǔ)義:如果表達(dá)式的值為真,則執(zhí)行其后的語(yǔ)句,語(yǔ)義:如果表達(dá)式的值為真,則執(zhí)行其后的

5、語(yǔ)句,否則不執(zhí)行該語(yǔ)句。其過(guò)程可表示為下圖。否則不執(zhí)行該語(yǔ)句。其過(guò)程可表示為下圖。 表 達(dá) 式 可表 達(dá) 式 可以 是 任 意以 是 任 意合 法 表 達(dá)合 法 表 達(dá)式 , 后 面式 , 后 面不能加;不能加;例例2:void main() int a,b,max; printf(n input two numbers: ); scanf(%d %d,&a,&b); max=a; if (maxb) max=b; printf(max=%d,max); 例例3:void main() int a,b,c,t; printf(n input two numbers: ); sc

6、anf(%d %d %d ,&a,&b,&c); if (ab) t=a;a=b;b=t; if (ac) t=a;a=c;c=t; if (bb) printf(max=%dn,a); else printf(max=%dn,b); 3、第三種形式為、第三種形式為if-else-if形式:形式:語(yǔ)義:語(yǔ)義: 依次判斷表達(dá)式的依次判斷表達(dá)式的值,當(dāng)出現(xiàn)某個(gè)值為值,當(dāng)出現(xiàn)某個(gè)值為真時(shí),則執(zhí)行其對(duì)應(yīng)真時(shí),則執(zhí)行其對(duì)應(yīng)的語(yǔ)句。然后跳到整的語(yǔ)句。然后跳到整個(gè)個(gè)if語(yǔ)句之外繼續(xù)執(zhí)行語(yǔ)句之外繼續(xù)執(zhí)行程序。程序。 如果所有的表如果所有的表達(dá)式均為假,則執(zhí)行達(dá)式均為假,則執(zhí)行語(yǔ)句語(yǔ)句n

7、。然后繼續(xù)執(zhí)行。然后繼續(xù)執(zhí)行后續(xù)程序。后續(xù)程序。后面不能后面不能加;加;上面的語(yǔ)句為以下三種格式:上面的語(yǔ)句為以下三種格式:1、空語(yǔ)句、空語(yǔ)句2、一個(gè)語(yǔ)句(不引起轉(zhuǎn)移)、一個(gè)語(yǔ)句(不引起轉(zhuǎn)移)3、前后加大括號(hào)的語(yǔ)句(復(fù)合語(yǔ)句),、前后加大括號(hào)的語(yǔ)句(復(fù)合語(yǔ)句),也叫程序段,如:也叫程序段,如:int a; float b; a=3; b=7.0; 不能寫(xiě)成不能寫(xiě)成 #includestdio.h#includestdio.h void main() void main() char c; char c; c=getchar(); c=getchar(); if(c32) if(c=0&

8、c=0&c=a&c=a&c=a&c=a&cb) a+;b+; else a=0;b=10; if(ab) a+;b+;; else a=0;b=10;;不能寫(xiě)成不能寫(xiě)成 在條件語(yǔ)句中,只執(zhí)行單個(gè)的賦值語(yǔ)句時(shí),可使用在條件語(yǔ)句中,只執(zhí)行單個(gè)的賦值語(yǔ)句時(shí),可使用條件表達(dá)式來(lái)實(shí)現(xiàn)。條件表達(dá)式來(lái)實(shí)現(xiàn)。 條件運(yùn)算符為條件運(yùn)算符為和和,它是一個(gè),它是一個(gè),即有,即有三個(gè)參與運(yùn)算的量。三個(gè)參與運(yùn)算的量。條件表達(dá)式的一般形式為:條件表達(dá)式的一般形式為: 如果表達(dá)式如果表達(dá)式1的值為真,則以表達(dá)式的值為真,則以表達(dá)式2 的值作為條件表達(dá)式的值,否則以表達(dá)式的值作為條件表達(dá)

9、式的值,否則以表達(dá)式2的值作的值作為整個(gè)條件表達(dá)式的值。為整個(gè)條件表達(dá)式的值。例如條件語(yǔ)句:例如條件語(yǔ)句: 可用條件表達(dá)式寫(xiě)為:可用條件表達(dá)式寫(xiě)為: 執(zhí)行該語(yǔ)句的語(yǔ)義是:執(zhí)行該語(yǔ)句的語(yǔ)義是:如如ab為真,則把為真,則把a(bǔ)賦予賦予max,如如ab為假,則把為假,則把b 賦予賦予max。使用條件表達(dá)式時(shí),還應(yīng)使用條件表達(dá)式時(shí),還應(yīng)以下幾點(diǎn):以下幾點(diǎn):1)條件運(yùn)算符的運(yùn)算優(yōu)先級(jí)低于關(guān)系運(yùn)算符和)條件運(yùn)算符的運(yùn)算優(yōu)先級(jí)低于關(guān)系運(yùn)算符和 算術(shù)運(yùn)算符,但高于賦值符。算術(shù)運(yùn)算符,但高于賦值符。 因此:因此: 可以去掉括號(hào)而寫(xiě)為可以去掉括號(hào)而寫(xiě)為 2)條件運(yùn)算符)條件運(yùn)算符是是。3)條件運(yùn)算符的結(jié)合方向是)條

10、件運(yùn)算符的結(jié)合方向是。 例如:例如: 應(yīng)理解為應(yīng)理解為 這也就是條件表達(dá)式嵌套的情形,即其中的這也就是條件表達(dá)式嵌套的情形,即其中的表達(dá)式表達(dá)式3又是一個(gè)條件表達(dá)式。又是一個(gè)條件表達(dá)式。例例6:計(jì)算:計(jì)算方法一:方法一:void main( ) float x,y; scanf (”%f ”,&x); if (x3) y=x*x+2; else y=3*x+7*x*x; printf(”y=%fn”,y);例例7:從鍵盤(pán)輸入任意的兩個(gè)實(shí)數(shù),按從小到大順序:從鍵盤(pán)輸入任意的兩個(gè)實(shí)數(shù),按從小到大順序輸出這兩個(gè)數(shù),請(qǐng)編程實(shí)現(xiàn)。輸出這兩個(gè)數(shù),請(qǐng)編程實(shí)現(xiàn)。void main( ) float a

11、,b; scanf (”%f%f ”,&a,&b); if (ab) a=a+b;b=a-b;a=a-b; printf(”%f,%fn”,a,b);可用語(yǔ)句可用語(yǔ)句代替代替a=a+b;b=a-b;a=a-bt=a;a=b;b=t例例8:p105 5.5 計(jì)算計(jì)算方法一:方法一:main( ) float x,y; scanf (”%f ”,&x); if (x1) y=x; else if ( x10 ) y=2*x-1; else y=3*x-11; printf(”y=%fn”,y);)10(113)101 (12) 1(xxxxxxy方法二:方法二:void m

12、ain( ) float x,y; scanf (”%f ”,&x); if (x1) y=x; else if ( x10 ) y=2*x-1; else y=3*x-11; printf(”y=%fn”,y);)10(113)101 (12) 1(xxxxxxy 、方法三:方法三:if (x10) if x1 y=x; else y=2*x-1; else y=3*x-11; 后不能加后不能加 和和 可一起省略可一起省略 若上面分段函數(shù)改為若上面分段函數(shù)改為則程序改為則程序改為void main( ) float x,y; scanf (”%f ”,&x); else if ( x1) y=x; else if ( x10 ) y=2*x-1; else y=3*x-11; printf(”y=%fn”,y);)2010(113)101 (1

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論