版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 n4.1 程序的邏輯結(jié)構(gòu)程序的邏輯結(jié)構(gòu) n4.2 if語句語句 n4.3 switch語句語句 n4.4 goto語句語句 n4.5 分支結(jié)構(gòu)應(yīng)用舉例分支結(jié)構(gòu)應(yīng)用舉例 開始 輸入成績 計算平均成績 輸出平均成績 結(jié)束 開始 輸入數(shù)據(jù) 計算平均成績ave ave90 輸出:要加油??!輸出:優(yōu)等生 結(jié)束 yesno 開 始 1 c o u n t 0 r e s u l t 輸 入 學(xué) 生 數(shù) n c o u n t n 輸 入 成 績 計 算 平 均 成 績 a v e a v e 9 0 r e s u l t+ 1 r e s u l t c o u n t + 1 c o u n t 輸
2、 出 c o u n t 結(jié) 束 真 假 真 假 傳統(tǒng)流程圖傳統(tǒng)流程圖 N-S圖圖 傳統(tǒng)流程圖傳統(tǒng)流程圖 N-S圖圖 傳統(tǒng)流程圖傳統(tǒng)流程圖 N-S圖圖 n4.2.1 if語句的一般形式語句的一般形式 n4.2.2 if語句的簡單形式語句的簡單形式 n4.2.3 if語句的嵌套結(jié)構(gòu)語句的嵌套結(jié)構(gòu) n4.2.4 if-else if結(jié)構(gòu)結(jié)構(gòu) n結(jié)構(gòu)結(jié)構(gòu) if(表達式表達式) 語句組語句組1 else 語句組語句組2 n其執(zhí)行過程其執(zhí)行過程 如果表達式的值為非如果表達式的值為非0, 則執(zhí)則執(zhí) 行行“語句組語句組1”,然后執(zhí)行緊然后執(zhí)行緊 接接“語句組語句組2”之后的語句;之后的語句; 否則,跳過否則
3、,跳過語句組語句組1而執(zhí)而執(zhí) 行行語句組語句組2,然后繼續(xù)向,然后繼續(xù)向 下執(zhí)行。下執(zhí)行。 例例4-1 輸入一個學(xué)生的兩門課的成績,若平均成績不低于輸入一個學(xué)生的兩門課的成績,若平均成績不低于90分,則分,則 顯示顯示“優(yōu)等生優(yōu)等生”,否則顯示,否則顯示“要加油啊!要加油?。 ?。 /* program e4-1.c */ #include void main() int a1,a2,ave; printf(輸入兩門課的成績,數(shù)據(jù)之間用輸入兩門課的成績,數(shù)據(jù)之間用“,”分隔:分隔:); scanf(%d,%d, ave=(a1+a2)/2; if(ave=90) printf(優(yōu)等生優(yōu)等生!n)
4、; else printf(要加油啊要加油啊!n); 計算分段函數(shù)的值。計算分段函數(shù)的值。 0)(x 25x 0)(x 25x y n 結(jié)構(gòu)結(jié)構(gòu) if(表達式表達式) 語句組語句組 n 執(zhí)行過程執(zhí)行過程 若表達式的值非若表達式的值非0(即真)(即真), 則執(zhí)行則執(zhí)行 語句組語句組,然后繼續(xù)執(zhí)行,然后繼續(xù)執(zhí)行if語句的下語句的下 一個語句;否則,不執(zhí)行一個語句;否則,不執(zhí)行語句組語句組, 而直接執(zhí)行而直接執(zhí)行語句組語句組之下的語句,之下的語句, 即即if語句的下一個語句。簡言之,該語句的下一個語句。簡言之,該 if語句的功能就是根據(jù)條件(表達式語句的功能就是根據(jù)條件(表達式 的值),決定是否執(zhí)行
5、的值),決定是否執(zhí)行語句組語句組。 例例4-3 輸入一個整數(shù)輸入一個整數(shù)x,若是偶數(shù),則輸出它。,若是偶數(shù),則輸出它。 /* program e4-3.c */ #include void main() int x; printf(Input x: ); scanf(%d, if(x%2=0) printf(%dn,x); 求兩個整數(shù)的最大數(shù)。求兩個整數(shù)的最大數(shù)。 開始;開始; 設(shè)兩個數(shù)為設(shè)兩個數(shù)為x,y,且用,且用max表示大數(shù);表示大數(shù); 輸入輸入x,y的數(shù)值;的數(shù)值; 設(shè)設(shè)x是大數(shù):是大數(shù):max=x; 判斷判斷maxy的正確性,若正確,則的正確性,若正確,則y是是 大數(shù):大數(shù):max=
6、y; 輸出輸出max的值;的值; 結(jié)束。結(jié)束。 /* program e4-4.c */ #include void main() int x,y,max; printf(Input x,y: ); scanf(%d,%d, max=x; if(max500時輸出時輸出y,否則輸出否則輸出500; 若若x0,則輸出則輸出x。 /* program e4-5.c */ #include void main() float x,y; printf(Input a real number: ); scanf(%f, if(x=0.0) y=x*x; if(y500.0) printf(%fn,y);
7、 else printf(%fn,500.0); else printf(%fn,x); 嵌套的嵌套的 if 語句語句 外外 層層 if語句語句 n例例4-6 計算分段函數(shù)值計算分段函數(shù)值 0)(x 265x. 1 0)(x 36 0)(x 85x y /* program e4-6.c */ #include void main() float x,y; printf(Input: ); scanf(%f, if(x0) y=5*x+8; else if(x=0) y=36; else y=1.5*x-26; printf(y=%fn,y); n一般結(jié)構(gòu)一般結(jié)構(gòu) if(表達式表達式1) 語句
8、組語句組1 else if(表達式表達式2) 語句組語句組2 else if(表達式表達式3) 語句組語句組3 . . . else if(表達式表達式n) 語句組語句組n else 語句組語句組n+1 n 執(zhí)行過程執(zhí)行過程 從上到下逐個對條件進行判斷從上到下逐個對條件進行判斷, 一旦發(fā)現(xiàn)條件一旦發(fā)現(xiàn)條件 滿足就執(zhí)行與它有關(guān)的語句組,其下的所有條滿足就執(zhí)行與它有關(guān)的語句組,其下的所有條 件都不再判斷,當(dāng)然它們的語句組也不被執(zhí)行件都不再判斷,當(dāng)然它們的語句組也不被執(zhí)行 ;當(dāng)任何一個條件都不滿足時,執(zhí)行最后一個;當(dāng)任何一個條件都不滿足時,執(zhí)行最后一個 語句組語句組n+1。 n表達式:常量、變量、運
9、算符、函數(shù)、()組表達式:常量、變量、運算符、函數(shù)、()組 成;成; uIf中的表達式常見的是關(guān)系表達式或邏輯表中的表達式常見的是關(guān)系表達式或邏輯表 達式達式 uIf中的表達式也可以是:常量、變量或其他中的表達式也可以是:常量、變量或其他 類型表達式類型表達式 n用來劃分程序?qū)哟?,配對使用??梢杂每s進用來劃分程序?qū)哟?,配對使用??梢杂每s進 來配合。但是縮進不能代替來配合。但是縮進不能代替。 n每一個分支執(zhí)行后都退出分支結(jié)構(gòu)繼續(xù)向下執(zhí)每一個分支執(zhí)行后都退出分支結(jié)構(gòu)繼續(xù)向下執(zhí) 行,行, n分支結(jié)構(gòu)內(nèi)部如果沒有其他分支或循環(huán)語句的分支結(jié)構(gòu)內(nèi)部如果沒有其他分支或循環(huán)語句的 話順序執(zhí)行話順序執(zhí)行 n執(zhí)行
10、過程執(zhí)行過程 首先計算首先計算switch后面表達后面表達 式的值,然后與第一個式的值,然后與第一個 case的的“常量常量”進行比較進行比較 ,若不相等,則跳過其下,若不相等,則跳過其下 的語句組,再與下一個的語句組,再與下一個 case的的“常量常量”進行比較進行比較 ;若與某一個;若與某一個case的的“常常 量量”相等,則從其下的語相等,則從其下的語 句組開始,依次向下執(zhí)行句組開始,依次向下執(zhí)行 各語句組的語句,直至遇各語句組的語句,直至遇 到一個強制中斷語句到一個強制中斷語句break 或執(zhí)行完最后一個語句組或執(zhí)行完最后一個語句組 語句為止。當(dāng)所有語句為止。當(dāng)所有case都都 不符合
11、要求時,執(zhí)行不符合要求時,執(zhí)行 default下的語句組語句。下的語句組語句。 一般格式中的一般格式中的“default:” 及其語句組允許缺省。及其語句組允許缺省。 n4.5.1 閏年問題閏年問題 n4.5.2 判斷等邊三角形判斷等邊三角形 n4.5.3 求解一元二次方程求解一元二次方程 n4.5.4 學(xué)生成績分等顯示學(xué)生成績分等顯示 2實現(xiàn)程序?qū)崿F(xiàn)程序 /* program e4-10.c */ #include void main() int year; printf(Input year: ); scanf(%d, if(year%400=0|year%4=0 else printf(
12、%d is not a leap year.n,year); 2實現(xiàn)程序?qū)崿F(xiàn)程序 /* program e4-11.c */ #include void main() int a,b,c; loop: printf(a,b,c: ); scanf(%d,%d,%d, if(a=0|b=0|c=0|a+bc|a+cb|b+ca) goto loop; if(a=b else printf(no equilateral trianglen); 0cbxax 2 若有實根,則計算并輸出實根若有實根,則計算并輸出實根 程序的輸入量為方程的系數(shù)程序的輸入量為方程的系數(shù)a、b、c。 2a 4acbb x
13、2 1,2 程序中要使用數(shù)學(xué)函數(shù)程序中要使用數(shù)學(xué)函數(shù)sqrt(),要注意打開,要注意打開math.h文件。文件。 /* program e4-12.c */ #include #include void main() float a,b,c; float x1,x2,d; printf(Input a,b,c: ); scanf(%f,%f,%f, d=b*b-4*a*c; if(d=0) x1=(-b+sqrt(d)/(2*a); x2=(-b-sqrt(d)/(2*a); printf(x1=%f,x2=%fn,x1,x2); else printf(no real root.n); /
14、/* * program e4-13.c program e4-13.c * */ / #include#include void main()void main() int a,b; int a,b; int ave; int ave; repeat: repeat: printf(Data(a,b): ); printf(Data(a,b): ); scanf(%d,%d, scanf(%d,%d, if(a0|b0) if(a0|b0) goto repeat; goto repeat; ave=(a+b)/2; ave=(a+b)/2; switch(ave/10) switch(ave/10) case 10: case 10: case 9: case 9: printf(Result: excellencen); break; printf(Result: excellencen); break; case 8: case 8: printf(Result: all rightn); break; printf(Result: all rightn);
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 磁頭清洗裝置項目運營指導(dǎo)方案
- 膠面增濕器辦公用品項目營銷計劃書
- 掃雪機的修理或維護行業(yè)市場調(diào)研分析報告
- 傷口敷料產(chǎn)品供應(yīng)鏈分析
- 臺球桿產(chǎn)品供應(yīng)鏈分析
- 航空器用機翼項目運營指導(dǎo)方案
- 國際電話服務(wù)行業(yè)相關(guān)項目經(jīng)營管理報告
- 卡車露營車產(chǎn)品供應(yīng)鏈分析
- O2O服務(wù)行業(yè)營銷策略方案
- 家用籃產(chǎn)業(yè)鏈招商引資的調(diào)研報告
- 汽車轉(zhuǎn)向節(jié)機加工工藝及鉆銑夾具設(shè)計
- 《古籍版本學(xué)》讀書筆記
- 華為公司英語介紹ppt課件
- 人教版小學(xué)三年級上冊品德與社會《規(guī)則在哪里》
- 設(shè)備Cmk值檢測評定報告軟件
- 無人駕駛汽車發(fā)展歷史原理技術(shù)發(fā)展前景專題資料PPT課件
- 錨桿框架梁護坡施工方案
- 小學(xué)語文二年級上冊單元整合教案——暢所“寓言”
- 同步器設(shè)計手冊
- 部編版二年級道德與法治上全冊教學(xué)反思(詳細)
- 發(fā)展心理學(xué)思維導(dǎo)圖
評論
0/150
提交評論