




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、共 34 頁(yè) 第 1 1 頁(yè)共 34 頁(yè) 第 2 2 頁(yè)本章要點(diǎn):本章要點(diǎn): 正確使用邏輯表達(dá)式正確使用邏輯表達(dá)式 掌握用掌握用ifif語(yǔ)句和語(yǔ)句和switchswitch語(yǔ)句實(shí)現(xiàn)選擇結(jié)構(gòu)語(yǔ)句實(shí)現(xiàn)選擇結(jié)構(gòu) 掌握條件運(yùn)算符的使用掌握條件運(yùn)算符的使用共 34 頁(yè) 第 3 3 頁(yè)4.4. 關(guān)系運(yùn)算符和關(guān)系表達(dá)式關(guān)系運(yùn)算符和關(guān)系表達(dá)式.1.1 .1.1 關(guān)系運(yùn)算符關(guān)系運(yùn)算符 1.1.關(guān)系運(yùn)算符關(guān)系運(yùn)算符 關(guān)系運(yùn)算是進(jìn)行比較大小的運(yùn)算,并產(chǎn)生運(yùn)算結(jié)果關(guān)系運(yùn)算是進(jìn)行比較大小的運(yùn)算,并產(chǎn)生運(yùn)算結(jié)果1 1(真)或(真)或 0 0(假)。(假)。語(yǔ)言中的關(guān)系運(yùn)算符有種語(yǔ)言中的關(guān)系運(yùn)算符有種: : 、!、!優(yōu)先次
2、序:前種同級(jí),高于后種(后種同級(jí))優(yōu)先次序:前種同級(jí),高于后種(后種同級(jí))關(guān)系運(yùn)算符的結(jié)合性為從左到右;關(guān)系運(yùn)算符的結(jié)合性為從左到右; 算術(shù)運(yùn)算符算術(shù)運(yùn)算符 (高高)關(guān)系運(yùn)算符關(guān)系運(yùn)算符賦值運(yùn)算符賦值運(yùn)算符 (低低)如:如:32 ab)(bb)(bc) 、ab ay xy 、s+fds+fd 關(guān)系表達(dá)式的值為邏輯值關(guān)系表達(dá)式的值為邏輯值,“,“真真”或或“假假”. . 注意注意: : 語(yǔ)言沒有邏輯型數(shù)據(jù),語(yǔ)言沒有邏輯型數(shù)據(jù),關(guān)系表達(dá)式關(guān)系表達(dá)式的真、假的真、假 是以數(shù)值是以數(shù)值“”代表代表“真真”,以以“”代表代表“假假”。 例例 :設(shè):設(shè) a=3, b=2, c=1 a=3, b=2, c=
3、1 ,求下列表達(dá)式的值?,求下列表達(dá)式的值? cb; cb; (a-b)=1; (a-b)=1; b+cb+ca; bc; (f=abc; (自左至右自左至右 ) )共 34 頁(yè) 第 5 5 頁(yè)1.1. 設(shè)有變量定義設(shè)有變量定義 intint z; z; 分析分析z%2=0 z%2=0 的值?的值? 如果如果z z為偶數(shù),則為偶數(shù),則 z%2=0z%2=0的值為的值為1 1; 否則否則z z為奇數(shù),則為奇數(shù),則 z%2=0z%2=0的值為的值為0 0; 因此,因此,z%2=0z%2=0是斷言是斷言“z z是偶數(shù)是偶數(shù)”的的c c語(yǔ)言判斷式。語(yǔ)言判斷式。2. X2. X與與y y的個(gè)位數(shù)字相同的
4、個(gè)位數(shù)字相同 x%10=y%10 x%10=y%10 如何判斷十位數(shù)上數(shù)字相同如何判斷十位數(shù)上數(shù)字相同? ?共 34 頁(yè) 第 6 6 頁(yè)4.2.1 4.2.1 邏輯運(yùn)算符邏輯運(yùn)算符 C C語(yǔ)言提供三種邏輯運(yùn)算符:語(yǔ)言提供三種邏輯運(yùn)算符: & (& (邏輯與邏輯與) ) 、 | (| (邏輯或邏輯或) ) 、! (! (邏輯非邏輯非) )說(shuō)明說(shuō)明: :(1 1)“&”&”和和“| ”| ”是是“雙目(元)運(yùn)算符雙目(元)運(yùn)算符”, ,它要它要求有兩個(gè)操作數(shù)。求有兩個(gè)操作數(shù)。(2 2)“! ”! ”是是“單目(元)運(yùn)算符單目(元)運(yùn)算符”,只要求有一個(gè),只要求有一個(gè)
5、運(yùn)算量。運(yùn)算量。(3 3)優(yōu)先級(jí)次序:)優(yōu)先級(jí)次序:! & | ! & | 4.24.2 邏輯運(yùn)算符和邏輯運(yùn)算符和邏輯表達(dá)式邏輯表達(dá)式 a&b a&b a a、b b均為真均為真, 則則a&ba&b為為1 1(真)。(真)。 a|ba|b a a、b b之一為真之一為真,則,則a|ba|b為為1 1(真)。(真)。 !a !a 若若a a為真為真, ,則則!a!a為假。為假。 共 34 頁(yè) 第 7 7 頁(yè)?。ǚ牵。ǚ牵?(高高)算術(shù)運(yùn)算符算術(shù)運(yùn)算符 關(guān)系運(yùn)算符關(guān)系運(yùn)算符& 和和 |賦值運(yùn)算符賦值運(yùn)算符 (低低)例例a+bn+3 a=53
6、4(a+b)(n+3)共 34 頁(yè) 第 8 8 頁(yè)4.2.2 4.2.2 邏輯表達(dá)式邏輯表達(dá)式用邏輯運(yùn)算符將關(guān)系表達(dá)式或邏輯量連接起來(lái)的式子用邏輯運(yùn)算符將關(guān)系表達(dá)式或邏輯量連接起來(lái)的式子. .注意:注意: 規(guī)定:判斷一個(gè)邏輯量為規(guī)定:判斷一個(gè)邏輯量為“真、假真、假”的方法:的方法:“非非” ” 代表代表“真真”, “ “”代表代表“假假” 例例 :寫出:寫出1x101x1&x10 1x1&x10 1x3 & 2 | 83 & 2 | 84!0 !0 值為:值為:“? ?” ” b&d b&d 值為:值為:“? ? ” ” 例例(m=ab)&
7、;(n=c-d(m=ab) x=a;if (ab) x=a;1. 單選擇單選擇if語(yǔ)句語(yǔ)句 語(yǔ)句語(yǔ)句零零條件條件非零非零條件條件可以是關(guān)系式或邏輯式可以是關(guān)系式或邏輯式4.3 選擇語(yǔ)句選擇語(yǔ)句4.3.1 if 語(yǔ)句語(yǔ)句共 34 頁(yè) 第 1212 頁(yè)2. 雙選擇雙選擇if語(yǔ)句語(yǔ)句語(yǔ)句格式語(yǔ)句格式: :if (if (條件條件) ) 語(yǔ)句組語(yǔ)句組1; 1; else else 語(yǔ)句組語(yǔ)句組2;2;功能功能:當(dāng)條件為非零時(shí)執(zhí)行當(dāng)條件為非零時(shí)執(zhí)行語(yǔ)句組語(yǔ)句組1否則執(zhí)行否則執(zhí)行語(yǔ)句組語(yǔ)句組2。APB非零非零零零共 34 頁(yè) 第 1313 頁(yè)if printf(“及格及格n”);else printf(“
8、不及格不及格n”);main() int a; scanf(“%d”,&a); if (a60) printf(“%dn”,a); 輸出不及格的成績(jī)輸出不及格的成績(jī)共 34 頁(yè) 第 1414 頁(yè)#include main( ) int a,b,max; printf(Input a and b=); scanf(%d%d,&a, &b); /* input number a and b*/ if ( ab ) max=a; /*如果如果ab,則將則將a=max */ else max=b; /* 否則,否則, b=max */ printf(The max of a a
9、nd b is : %dn, max);ab?max=bmax=aYN求求a a和和b b兩數(shù)中較大的一個(gè)兩數(shù)中較大的一個(gè)共 34 頁(yè) 第 1515 頁(yè) 說(shuō)出下列程序的輸出結(jié)果:說(shuō)出下列程序的輸出結(jié)果:main()main() int int a; a; scanf(%d,&a scanf(%d,&a);); if (a50) printf(%d,a if (a50) printf(%d,a);); if (a40) printf(%d,a if (a40) printf(%d,a);); if (a30) printf(%d,a if (a30) printf(%d,a);)
10、; 程序運(yùn)行程序運(yùn)行: : 輸入輸入5858, 輸出輸出? ? 輸入輸入3030, 輸出?輸出?共 34 頁(yè) 第 1616 頁(yè)有關(guān)有關(guān)if語(yǔ)句的說(shuō)明語(yǔ)句的說(shuō)明l 條件后面不加分號(hào)條件后面不加分號(hào)l 語(yǔ)句之后有分號(hào)語(yǔ)句之后有分號(hào)l else不是語(yǔ)句,不能單獨(dú)使用不是語(yǔ)句,不能單獨(dú)使用l 當(dāng)當(dāng)if后有多個(gè)執(zhí)行語(yǔ)句時(shí),必須用后有多個(gè)執(zhí)行語(yǔ)句時(shí),必須用 將多將多 個(gè)語(yǔ)句括起來(lái),構(gòu)成一個(gè)復(fù)合語(yǔ)句,而個(gè)語(yǔ)句括起來(lái),構(gòu)成一個(gè)復(fù)合語(yǔ)句,而 之外不必有分號(hào)。之外不必有分號(hào)。共 34 頁(yè) 第 1717 頁(yè)4.3.2 if語(yǔ)句的嵌套語(yǔ)句的嵌套格式:格式:if(表達(dá)式)(表達(dá)式) if( 表達(dá)式表達(dá)式1) 語(yǔ)句語(yǔ)句1
11、1; else 語(yǔ)句語(yǔ)句12; else if (表達(dá)式表達(dá)式2) 語(yǔ)句語(yǔ)句21; else 語(yǔ)句語(yǔ)句22;在在ifif語(yǔ)句的語(yǔ)句的“語(yǔ)句語(yǔ)句1”1”或或“語(yǔ)句語(yǔ)句2”2”中又包含著中又包含著ifif語(yǔ)句語(yǔ)句判斷表達(dá)式的值,若為非判斷表達(dá)式的值,若為非0,再判斷,再判斷表達(dá)式表達(dá)式1的的值,非值,非0執(zhí)行語(yǔ)句執(zhí)行語(yǔ)句11,否則執(zhí)行語(yǔ)句,否則執(zhí)行語(yǔ)句12若表達(dá)式的值為若表達(dá)式的值為0,再判斷,再判斷表達(dá)式表達(dá)式2的值,非的值,非0執(zhí)行語(yǔ)句執(zhí)行語(yǔ)句21,否則執(zhí)行語(yǔ)句,否則執(zhí)行語(yǔ)句22功能功能:外if內(nèi)嵌if共 34 頁(yè) 第 1818 頁(yè)下列程序段表示的數(shù)學(xué)式下列程序段表示的數(shù)學(xué)式? ? y y=-
12、1;=-1; if (x!=0) if (x!=0) if (x0) y=2 if (x0) y=2* *sin(xsin(x) ); ; else y=0; else y=0; 程序段表示的數(shù)學(xué)式程序段表示的數(shù)學(xué)式1:1: 0 ( 0 (x0) x0) 2sinx (x0)討論討論: :給第二個(gè)給第二個(gè)ifif行加行加 后表示的數(shù)學(xué)式?后表示的數(shù)學(xué)式? 程序段表示的數(shù)學(xué)式程序段表示的數(shù)學(xué)式2:2: -1 ( -1 (x0) x0) 2sinx (x0)數(shù)學(xué)式數(shù)學(xué)式1 1程序可表示為程序可表示為: :Y=-1;Y=-1;if (x!=0)if (x!=0) if (x0) y=2if (x0)
13、 y=2* *sin(xsin(x);); else y=0; else y=0; 思考強(qiáng)調(diào)強(qiáng)調(diào):ifif和和elseelse可成對(duì)出現(xiàn),也可成對(duì)出現(xiàn),也可不成對(duì)出現(xiàn),每個(gè)可不成對(duì)出現(xiàn),每個(gè)elseelse都與距都與距其最近的其最近的ifif配對(duì)。配對(duì)。共 34 頁(yè) 第 1919 頁(yè) if 語(yǔ)句的常用格式:語(yǔ)句的常用格式: if(表達(dá)式表達(dá)式1) 語(yǔ)句語(yǔ)句 1 else if(表達(dá)式表達(dá)式2) 語(yǔ)句語(yǔ)句 2 else if(表達(dá)式表達(dá)式3) 語(yǔ)句語(yǔ)句 3 else if(表達(dá)式表達(dá)式m) 語(yǔ)句語(yǔ)句 m else 語(yǔ)句語(yǔ)句 n僅執(zhí)行表達(dá)式為真的僅執(zhí)行表達(dá)式為真的else if后的內(nèi)嵌語(yǔ)句后的內(nèi)嵌
14、語(yǔ)句,若所有的若所有的表達(dá)式值都為表達(dá)式值都為0,則執(zhí)行最后一個(gè)則執(zhí)行最后一個(gè)else后的內(nèi)嵌語(yǔ)句后的內(nèi)嵌語(yǔ)句.共 34 頁(yè) 第 2020 頁(yè) 已知已知 編一個(gè)程序,輸入一個(gè)編一個(gè)程序,輸入一個(gè)x x的值,輸出的值,輸出y y值。值。010001)(xxxxy程序?yàn)椋?main( ) int x, y; scanf(“%d”,&x); if(x0) y=-1; else if(x= 0) y=0; else y=1; printf(“x=%d, y=%dn”, x, y); 共 34 頁(yè) 第 2121 頁(yè)switchswitch語(yǔ)語(yǔ)句句 該語(yǔ)句為開關(guān)語(yǔ)句,適合解決多分支的情況。該語(yǔ)句為
15、開關(guān)語(yǔ)句,適合解決多分支的情況。格式:格式:switch(switch(表達(dá)式)表達(dá)式) case case 常量表達(dá)式:語(yǔ)句常量表達(dá)式:語(yǔ)句序列序列; ; case case 常量表達(dá)式:語(yǔ)句常量表達(dá)式:語(yǔ)句序列序列; ; case case 常量表達(dá)式常量表達(dá)式n n: 語(yǔ)句序列語(yǔ)句序列n;n; default default :語(yǔ)句序列:語(yǔ)句序列n+1;n+1; 說(shuō)明說(shuō)明:執(zhí)行順序如下:執(zhí)行順序如下:4.3.2 switch 語(yǔ)句語(yǔ)句問(wèn)題問(wèn)題: 為什么引出為什么引出switch語(yǔ)句?語(yǔ)句?可以是一條語(yǔ)句,也可可以是一條語(yǔ)句,也可以是多條語(yǔ)句。多條語(yǔ)以是多條語(yǔ)句。多條語(yǔ)句不必用括號(hào)括起來(lái)。
16、句不必用括號(hào)括起來(lái)。起語(yǔ)句標(biāo)號(hào)的作用,不進(jìn)行條起語(yǔ)句標(biāo)號(hào)的作用,不進(jìn)行條件判斷,在執(zhí)行完某個(gè)件判斷,在執(zhí)行完某個(gè) case后的語(yǔ)句序列后,將自動(dòng)轉(zhuǎn)移后的語(yǔ)句序列后,將自動(dòng)轉(zhuǎn)移到下一個(gè)到下一個(gè)case繼續(xù)執(zhí)行。繼續(xù)執(zhí)行??梢允钦?、可以是整型、字符型。字符型。共 34 頁(yè) 第 2222 頁(yè) a. a. 計(jì)算表達(dá)式的值;計(jì)算表達(dá)式的值; b. b. 找到與表達(dá)式的值相同的找到與表達(dá)式的值相同的casecase常量表達(dá)式,執(zhí)行該常量表達(dá)式,執(zhí)行該casecase后邊的語(yǔ)句序列,之后后邊的語(yǔ)句序列,之后依次往下執(zhí)行語(yǔ)句塊依次往下執(zhí)行語(yǔ)句塊。表達(dá)式語(yǔ)句序列1語(yǔ)句序列2語(yǔ)句序列n語(yǔ)句序列n+1 共 34
17、頁(yè) 第 2323 頁(yè)每個(gè)語(yǔ)句序列的最后一條語(yǔ)句后增加每個(gè)語(yǔ)句序列的最后一條語(yǔ)句后增加break語(yǔ)句,執(zhí)行流程為:語(yǔ)句,執(zhí)行流程為:表達(dá)式語(yǔ)句序列1語(yǔ)句序列n語(yǔ)句序列n+1語(yǔ)句序列2共 34 頁(yè) 第 2424 頁(yè) 根據(jù)考試成績(jī)的等級(jí)打印出百分制分?jǐn)?shù)段。根據(jù)考試成績(jī)的等級(jí)打印出百分制分?jǐn)?shù)段。采用多分支情況程序段:采用多分支情況程序段: switch( grade ) case A : printf(“85100n”) ; break; case B : printf(“7084n”); break; case C: printf(“6069n”); break; case D :printf(“6
18、0n”); break; default : printf(“error ”); 若若 grade= A時(shí),輸出結(jié)果為時(shí),輸出結(jié)果為? 當(dāng)當(dāng) grade= B時(shí),輸出結(jié)果為?時(shí),輸出結(jié)果為?共 34 頁(yè) 第 2525 頁(yè)流程圖為:流程圖為: grade輸出 “85100”輸出 “b ? a : bmax=ab ? a : b 若若 a=3, b=2, a=3, b=2, 則則 max=?max=?說(shuō)明說(shuō)明: (1) (1) 條件運(yùn)算符優(yōu)于賦值運(yùn)算符條件運(yùn)算符優(yōu)于賦值運(yùn)算符。 (2) (2) 條件運(yùn)算符的結(jié)合方向?yàn)闂l件運(yùn)算符的結(jié)合方向?yàn)椤白宰杂蚁蛴蚁蜃笞蟆薄?如:當(dāng)如:當(dāng)a=1,b=2,c=3, d=4 a=1,b=2,c=3, d=4 時(shí),時(shí),表達(dá)式表達(dá)式 ab ? a : cd ? c : d , ab ? a : cd ? c : d , 值為:值為:? ? 如:如: 若若 x=1,y=0,a=3,b=-3x=1,y=0,a=3,b=-3 表達(dá)式表達(dá)式 (yx?a:b)&a+b (yx?a:b)&a+b 值為:值為:? 404.4 條件運(yùn)算符條件運(yùn)算符共 34 頁(yè) 第 2929 頁(yè)(3) 條件表達(dá)式中的表達(dá)式的類型可以與表達(dá)式條件表達(dá)式中的表達(dá)式的類型可以與表達(dá)式和表達(dá)式的類型不同。條件表達(dá)式值的類和表達(dá)式的類型不同。條件表達(dá)式值的類型為
溫馨提示
- 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ù)覽,若沒有圖紙預(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年廣東省中考模擬歷史試題(原卷版+解析版)
- 當(dāng)前世界經(jīng)濟(jì)形勢(shì)1468792390
- 九年紀(jì)上語(yǔ)文知識(shí)點(diǎn)梳理
- 2025年黨員領(lǐng)導(dǎo)干部廉政法規(guī)知識(shí)考試題庫(kù)及答案(共130題)
- 體育體測(cè)檢討書
- FAMILYDAY員工家庭日活動(dòng)
- 醫(yī)藥航空運(yùn)輸服務(wù)協(xié)議
- 氫能項(xiàng)目可行性研究報(bào)告
- 項(xiàng)目監(jiān)控工程
- 聰明屋智能家居系統(tǒng)
- 2025年合肥共達(dá)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)附答案
- 2025美國(guó)急性冠脈綜合征(ACS)患者管理指南解讀課件
- 足球迷互動(dòng)活動(dòng)策劃與執(zhí)行策略
- 2025年寧夏工商職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)帶答案
- ESC+2024+心房顫動(dòng)(房顫)管理指南解讀
- 2019地質(zhì)災(zāi)害防治工程工程量清單計(jì)價(jià)規(guī)范
- 2022-2024年江蘇中考英語(yǔ)試題匯編:任務(wù)型閱讀填空和閱讀回答問(wèn)題(教師)
- 游戲跨文化傳播-洞察分析
- 河北石家莊市市屬國(guó)有企業(yè)招聘筆試沖刺題2025
- 2025-2030年中國(guó)鐵合金冶煉行業(yè)競(jìng)爭(zhēng)格局展望及投資策略分析報(bào)告
-
評(píng)論
0/150
提交評(píng)論