第四章選擇結(jié)構(gòu)程序設(shè)計_第1頁
第四章選擇結(jié)構(gòu)程序設(shè)計_第2頁
第四章選擇結(jié)構(gòu)程序設(shè)計_第3頁
第四章選擇結(jié)構(gòu)程序設(shè)計_第4頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1.1忠信篤行忠信篤行 自強不息自強不息第四章第四章 選擇結(jié)構(gòu)程序設(shè)計選擇結(jié)構(gòu)程序設(shè)計重點、難點重點、難點1. If 、ifelse 和和switch語句的格式和功能。語句的格式和功能。2. 三條選擇語句和三種選擇結(jié)構(gòu)的程序設(shè)計三條選擇語句和三種選擇結(jié)構(gòu)的程序設(shè)計. . .1.2忠信篤行忠信篤行 自強不息自強不息4.1 if 語句語句1、if語句的三種形式:單分支選擇語句的三種形式:單分支選擇if語句、雙分支選擇語句、雙分支選擇if語句、多分支選擇語句、多分支選擇if語句。語句。1)單分支選擇)單分支選擇if語句語句 語句形式:語句形式: if (表達式)表達式) 語句;語句; 例:例:if(

2、xy)printf(“%d”,x);. . .1.3忠信篤行忠信篤行 自強不息自強不息 語句流程圖語句流程圖表達式語句真(非0)假(0). . .1.4忠信篤行忠信篤行 自強不息自強不息例5.1:從鍵盤輸入兩個整數(shù)a和b,如果a大于b則交換兩數(shù),否則不交換,最后輸出兩個數(shù)。#include main()int a,b,t; scanf(%d,%d,&a,&b); if(ab) t=a;a=b;b=t; printf(a=%d,b=%dn,a,b);輸入a,bab交換a、b輸出結(jié)束真假. . .1.5忠信篤行忠信篤行 自強不息自強不息注意:注意: (1)if語句自動結(jié)合一個語句,

3、當滿足條件需要執(zhí)行多個語句時,應(yīng)用一對大括號將需要執(zhí)行的多個語句括起,形成一個復(fù)合語句。 ( 2)if語句中表達式形式很靈活,可以是常量、變量、任何類型表達式、函數(shù)、指針等。只要表達式的值為非零值,條件就為真,反之條件為假。 . . .1.6忠信篤行忠信篤行 自強不息自強不息2.雙分支選擇雙分支選擇if語句語句語句形式:語句形式:if (表達式)語句表達式)語句1; else 語句語句2 ; 例:例:If(xy) printf(“%d”,x); else printf(“%d”,y);語句執(zhí)行流程: 表達式語句1真(非0)假(0)語句2. . .1.7忠信篤行忠信篤行 自強不息自強不息注意:i

4、f和else語句之間只能有一個語句,當if-else之間的語句不只一句時,應(yīng)用一對將語句括起。 例:if(ab) a+;b+; else a=0;b=10;3、if 語句的缺省形式:if () 其執(zhí)行過程時:如果的值不為零,執(zhí)行,否則什么也不執(zhí)行,跳到if語句的下面,繼續(xù)執(zhí)行程序中的其它語句。. . .1.8忠信篤行忠信篤行 自強不息自強不息例:輸入兩個整數(shù),輸出其中較大的數(shù)。#include #include main()int x,y,max; scanf(%d,%d,&x,&y); if(xy) max=x; else max=y; printf(max=%dn,max)

5、; 輸入x,yxymax=x輸出最大值結(jié)束真假max=y. . .1.9忠信篤行忠信篤行 自強不息自強不息4、多分支選擇、多分支選擇if語句語句 語句形式:語句形式: if (表達式表達式1)語句)語句1; else if (表達式表達式2)語句)語句2; else if (表達式表達式n)語句)語句n; else 語句語句n+1;. . .1.10忠信篤行忠信篤行 自強不息自強不息語句執(zhí)行流程: 表達式1語句1語句2表達式2真(非0)表達式2語句n語句n+1假(0)假(0)假(0)真(非0). . .1.11忠信篤行忠信篤行 自強不息自強不息例:計算分段函數(shù)。假輸入xX=1真X10y=3/(

6、x-10)y=2xy=x+5假真x5x1y2x1x103x10 x10 . . .1.12忠信篤行忠信篤行 自強不息自強不息#include main()float x,y; printf(enter x:); scanf( %f ,&x);if(x=10)printf(not define x.n); else if (x=1) y=x+5; else if(x=60n);break; default:printf(grade60);. . .1.21忠信篤行忠信篤行 自強不息自強不息 選擇結(jié)構(gòu)程序設(shè)計舉例 例:將任意三個整數(shù)按從大到小的順序輸出。#include stdio.hma

7、in()int x,y,z,t;scanf(%d,%d,%d,&x,&y,&z);if(xy) t=x;x=y;y=t; /*交換x,y的值*/if(xz) t=x;x=z;z=t; /*交換x,z的值*/if(yz) t=y;y=z;z=t; /*交換y,z的值*/printf(%d,%d,%dn,x,y,z); . . .1.22忠信篤行忠信篤行 自強不息自強不息例:給一個不多于4位的正整數(shù),求出它是幾位數(shù),逆序打印出各位數(shù)字。 #include stdio.hmain()int x,a,b,c,d; /*a,b,c,d代表千、百、十、個位*/scanf(%d,&a

8、mp;x);a=x/1000;b=x%1000/100;c=x%100/10;d=x%10; /*分解出千位、百位、十位、個位*/if(a!=0) printf(4:%d%d%d%dn,d,c,b,a);else if(b!=0) printf(3:%d%d%dn,d,c,b);else if(c!=0) printf(2:%d%dn,d,c);else if(d!=0) printf(1:%dn,d);. . .1.23忠信篤行忠信篤行 自強不息自強不息本章小結(jié)本章小結(jié) 選擇結(jié)構(gòu)分為單分支、雙分支和多選擇結(jié)構(gòu)分為單分支、雙分支和多分支三種情況。一般,采用分支三種情況。一般,采用if語句實現(xiàn)語句實現(xiàn)簡單分支結(jié)構(gòu)程序,用簡單分支結(jié)構(gòu)程序,用switch和和break語語句實現(xiàn)多分支結(jié)構(gòu)程序。雖然用嵌套句實現(xiàn)多分支結(jié)構(gòu)程序。雖然用嵌套if語句也能實現(xiàn)多分支結(jié)構(gòu)程序,但有時語句也能實現(xiàn)多分支結(jié)構(gòu)程序,但有時用用switch和和break語句實現(xiàn)的多分支結(jié)構(gòu)語句實現(xiàn)的多分支結(jié)構(gòu),使程序更簡潔明了,使程序更簡潔明了. . .1.24

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論