




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、會計學(xué)1全國計算機全國計算機C語言程序設(shè)計講解語言程序設(shè)計講解if語句語句條件運算符和條件表達(dá)式條件運算符和條件表達(dá)式switch語句語句程序舉例程序舉例第1頁/共33頁vifif語句的三種形式語句的三種形式l 形式一形式一: 格式:格式:if (if (表達(dá)式表達(dá)式) ) 語句語句; ;表達(dá)式表達(dá)式語句語句非非0 真真=0l形式二:形式二:格式:格式:if (if (表達(dá)式表達(dá)式) ) 語句語句1; 1; else else 語句語句2;2;表達(dá)式表達(dá)式語句語句1語句語句2非非0=0第2頁/共33頁l形式三:形式三: 格式:格式:if ( 表達(dá)式表達(dá)式1 ) 語句語句1; else if (
2、表達(dá)式表達(dá)式2 ) 語句語句2; else if (表達(dá)式表達(dá)式3 ) 語句語句3; . else 語句語句n; 第3頁/共33頁l說明:說明:ifif后面的表達(dá)式類型任意后面的表達(dá)式類型任意elseelse不是一條獨立的語句不是一條獨立的語句, ,它只是它只是ifif語句的一部分語句的一部分 if(x) if(x!=0) if(!x) if(x=0)語句可以是復(fù)合語句語句可以是復(fù)合語句用用 內(nèi)嵌結(jié)構(gòu)中,內(nèi)嵌結(jié)構(gòu)中,else總是與前面最近的且未曾配對的總是與前面最近的且未曾配對的ifif語句語句配對組成一對配對組成一對if-else語句語句如:如:if(a=b&x=y) printf(“a=b
3、,x=y”); if(3) printf(“OK”); if(a) printf(“%d”,a);例例 考慮下面程序的輸出結(jié)果考慮下面程序的輸出結(jié)果: #include main() int x,y; scanf(“%d,%d”,&x,&y); if(xy) x-; y-; else x+; y+; printf(“%d,%dn”,x,y);Compile Error!編譯出錯編譯出錯第4頁/共33頁#include main() int x,y; printf(“請輸入一個整數(shù):); scanf(%d,&x); y=x; if(y0) y= -y; printf(“n整數(shù):%d 的絕對值為:
4、%dn,x,y);例例: : 求一個數(shù)的絕對值求一個數(shù)的絕對值請輸入一個整數(shù): -12整數(shù): -12 的絕對值為:12/*變量定義*/*語句提示*/*鍵盤輸入一個數(shù)值*/第5頁/共33頁/*ch4_2.c*/#include main() int a,b; /*變量定義*/ printf(Enter integer a:); /*語句提示*/ scanf(%d,&a); /*鍵盤輸入一個數(shù)值*/ printf(Enter integer b:); /*語句提示*/ scanf(%d,&b); /*鍵盤輸入一個數(shù)值*/ if(a=b) printf(a=bn); else printf(a!=b
5、n);例例 輸入兩個數(shù)并判斷兩數(shù)是否相等輸入兩個數(shù)并判斷兩數(shù)是否相等運行:Enter integer a:12 Enter integer b:12 a=b 運行:Enter integer a:12 Enter integer b:9 a!=b 第6頁/共33頁#include main() int g; / /* *變量定義變量定義* */ / printf(Enter g:); / /* *語句提示語句提示* */ / scanf(“%d”,&g); / /* *從鍵盤輸入一個成績從鍵盤輸入一個成績*/ printf(“g=%d:”,g); / /* *輸出成績輸出成績* */ / if
6、(g=90) printf(“An); else if(g=80) printf(“Bn); else if(g=70) printf(“Cn); else if(g=60) printf(“Dn); else printf(“En);例例 根據(jù)輸入的學(xué)生成績給出相應(yīng)的等級根據(jù)輸入的學(xué)生成績給出相應(yīng)的等級第7頁/共33頁例例 考慮下面程序輸出結(jié)果考慮下面程序輸出結(jié)果: : main() int x=100,a=10,b=20; int v1=5,v2=0; if(a賦值運算符逗號運算符求值規(guī)則:求值規(guī)則:先求的值,若其值為“真”,求出的值作為整個條件表達(dá)式的值;若其值為“假”,求出的值作為整個
7、條件表達(dá)式的值。表達(dá)式表達(dá)式1 1、表達(dá)式、表達(dá)式2 2、表達(dá)式、表達(dá)式3 3類型可不同,類型可不同,表達(dá)式值取表達(dá)式值取較高類型較高類型ab?a:cd?c:d ab?a:(cd?c:d)例:int a=2; float b=5.2; 表達(dá)式(!a?2*b:b)的結(jié)果是5.2例例: xy?1:1.5 /*xy ,值為值為1.0; xy ,值為值為1.5*/第9頁/共33頁switch( 表達(dá)式) case E1 : 語句組 1; case E2 : 語句組 2; . case En : 語句組 n; default: 語句組 ; 一般形式:一般形式: 執(zhí)行過程:執(zhí)行過程:一、計算表達(dá)式一、計算
8、表達(dá)式二、找二、找casecase三、從找到的三、從找到的casecase開始,往下全部執(zhí)行開始,往下全部執(zhí)行四、若沒找到四、若沒找到casecase,則從,則從defaultdefault開始往下全部執(zhí)行,開始往下全部執(zhí)行, 若沒若沒default default 則結(jié)束則結(jié)束switchswitch語句。語句。第10頁/共33頁例 switch(score) case 5: printf(“Very good!”); case 4: printf(“Good!”); default : printf(“data error!”); case 3: case 2: printf(“Pass!
9、”); case 1: printf(“Fail!”);break;break;break;break;break;字符型或整型字符型或整型沒沒有分有分號號整型整型/ /字符型字符型常量常量互不相同互不相同,必,必須須有有冒冒號號必必須須有空格有空格1 12 23 34 45 5運行結(jié)果:score為5時,輸出: Very good! Good! data error! Pass! Fail! 運行結(jié)果:score為3時,輸出:Pass! Fail!運行結(jié)果:score為0時,輸出:data error! Pass! Fail!運行結(jié)果:score為5時,輸出:Very good!運行結(jié)果:s
10、core為3時,輸出:Pass!運行結(jié)果:score為0時,輸出:data error!第11頁/共33頁例 void main() int x=1,y=0,a=0,b=0; switch(x) case 1: switch(y) case 0: a+; break; case 1: b+; break; case 2: a+;b+; break; case 3: a+;b+; printf(“a=%d,b=%d”,a,b); 運行結(jié)果:a=2,b=1第12頁/共33頁第13頁/共33頁whilewhile語句語句do-whiledo-while語句語句forfor循環(huán)語句循環(huán)語句循環(huán)嵌套語句
11、循環(huán)嵌套語句輔助控制語句輔助控制語句標(biāo)號語句和標(biāo)號語句和gotogoto語句語句第14頁/共33頁v一般形式:while( (表達(dá)式表達(dá)式) ) 循環(huán)體語句;循環(huán)體語句;v執(zhí)行流程:表達(dá)式循環(huán)體假(0)真(非0)while第一節(jié)第一節(jié) while 語句語句第15頁/共33頁特點特點:先判斷表達(dá)式,后執(zhí)行循環(huán)體:先判斷表達(dá)式,后執(zhí)行循環(huán)體說明說明: 循環(huán)體有可能一次也不執(zhí)行循環(huán)體有可能一次也不執(zhí)行。 循環(huán)體循環(huán)體只能是一條語句,只能是一條語句,如果包含一如果包含一條條以上的語句以上的語句,應(yīng)該用應(yīng)該用。 循環(huán)體中一般有循環(huán)體中一般有使循環(huán)趨向結(jié)束的語使循環(huán)趨向結(jié)束的語句句, 不可無限循環(huán),如不可
12、無限循環(huán),如 k=0; while(k10) printf(“*”); k+; 程序?qū)⒅貜?fù)執(zhí)行輸出語句程序?qū)⒅貜?fù)執(zhí)行輸出語句printf,輸,輸出出1010個個* *號。號。 第一節(jié)第一節(jié) while 語句語句第16頁/共33頁#include main() int a; a=1; if(a=10) a+ ; printf(“a=%dn”,a);區(qū)分區(qū)分ifif語句和語句和whilewhile語句語句. .#include main() int a; a=1; while(a=10) a+ ; printf(“a=%dn”,a);第17頁/共33頁v一般形式一般形式:do 循環(huán)體語句; whi
13、le(表達(dá)式);v執(zhí)行流執(zhí)行流程程:do循環(huán)體表達(dá)式假(0)真(非0)while第二節(jié)第二節(jié) do-while 語句語句分號不能少!分號不能少!第18頁/共33頁v特點特點:先執(zhí)行循環(huán)體,后判斷表達(dá)式v說明說明:l至少執(zhí)行一次循環(huán)體#include main() int a; scanf(“%d”,&a); do a+ ; while(a=10); printf(“a=%dn”,a);#include main() int a; scanf(“%d”,&a); while(a=10) a+ ; printf(“a=%dn”,a);結(jié)論:當(dāng)while后面的表達(dá)式的值為“真”時,兩種循環(huán)得到的結(jié)果
14、相同。否則,兩者結(jié)果不相同。while 和和do-while的比較的比較第19頁/共33頁v一般形一般形式:式:for(表達(dá)式1 ; 表達(dá)式2 ; 表達(dá)式3) 循環(huán)體語句;v執(zhí)行流程執(zhí)行流程:表達(dá)式2循環(huán)體假(0)真(非0)for表達(dá)式1表達(dá)式3第三節(jié)第三節(jié) for 語句語句第20頁/共33頁v說明:說明:for語句中表達(dá)式1, 表達(dá)式2 ,表達(dá)式3 類型任意, 都可省略,但他們之間分號;不可省無限循環(huán):for( ; ; )for語句可以轉(zhuǎn)換成while結(jié)構(gòu)表達(dá)式1;while(表達(dá)式2)循環(huán)體語句;表達(dá)式3;for(循環(huán)變量賦初值;循環(huán)條件;循環(huán)變量增值)循環(huán)體語句;vfor語句一般應(yīng)用形式
15、語句一般應(yīng)用形式:第21頁/共33頁例:#include main( ) int i; for(i=0;i10;i+) printf(“%d”,i); 例:#include main( ) int i=0; for(;i10;) printf(“%d”,i+); 只要在進入循環(huán)之前將控制變量定義并賦初值,并在循環(huán)體中將控制變量的值進行改變即可。循環(huán)條件不可少!循環(huán)條件不可少!分號不可少分號不可少第22頁/共33頁#includemain() int i,j,k; for(i=0,j=100;i=j;i+,j-) k=i+j; printf(%d+%d=%dn,i,j,k); 例例表達(dá)式表達(dá)式1
16、 1和表達(dá)式和表達(dá)式3 3可以是簡單表達(dá)式,可以是簡單表達(dá)式,也可以是逗號表達(dá)式也可以是逗號表達(dá)式第23頁/共33頁例例 分別用分別用while 、do-while 和和 for 循環(huán)求循環(huán)求 1001nn#include main()int i,sum=0; i=1; while(i=100) sum+=i; i+; printf(%d,sum);#include main()int i,sum=0; i=1; do sum+=i; i+; while(i=100); printf(%d,sum);#include main()int i,sum=0; for(i=1;i=100;i+) s
17、um+=i; printf(%d,sum);第24頁/共33頁v三種循環(huán)可互相嵌套,層數(shù)不限v外層循環(huán)可包含兩個以上內(nèi)循環(huán),但不能相互交叉(1) while() while() . (2) do do while( ); . while( );(3) while() do while( ); . (4) for( ; ;) do while(); while() .內(nèi)循環(huán)外循環(huán)內(nèi)循環(huán)第四節(jié)第四節(jié) 循環(huán)嵌套循環(huán)嵌套語句語句第25頁/共33頁C第26頁/共33頁第五節(jié)第五節(jié) 輔助控制輔助控制語句語句break語句語句 功能:功能:在在循環(huán)語句循環(huán)語句和和switch語句中語句中, ,終止并跳出終止
18、并跳出循循 環(huán)體,即提前結(jié)束循環(huán),接著執(zhí)行循環(huán)下環(huán)體,即提前結(jié)束循環(huán),接著執(zhí)行循環(huán)下面面 的語句。的語句。 說明:說明: break只能只能終止并跳出終止并跳出最近一層最近一層的結(jié)構(gòu)的結(jié)構(gòu) break只能用于循環(huán)語句和只能用于循環(huán)語句和switchswitch語句語句第27頁/共33頁例例 break舉例:舉例: main() int s=0,i; for(i=1;i=5;i+) if(i%2=0) break; s=s+i; printf(“%d,%d”,s,i); 結(jié)果: 1,2第28頁/共33頁continue語句語句功能:結(jié)束本次循環(huán),跳過循環(huán)體中尚未 執(zhí)行的語句,進行下一次是否執(zhí)行 循環(huán)體的判斷僅用于循環(huán)語句中第29頁/共33頁例例 continue舉例:舉例: m
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 五金店新零售模式探索與實施策略考核試卷
- 工程設(shè)計規(guī)范與標(biāo)準(zhǔn)考核試卷
- 機織運動服裝在運動康復(fù)中的角色考核試卷
- 技術(shù)服務(wù)多元化戰(zhàn)略與市場拓展考核試卷
- 服裝行業(yè)大數(shù)據(jù)分析應(yīng)用考核試卷
- 戶外登山鞋租賃與保養(yǎng)常識考核試卷
- 中小學(xué)生手衛(wèi)生課件
- 施工電梯備案合同范本
- 勞務(wù)永久合同范本
- 寵物購買意向合同范本
- 注冊安全工程師安全生產(chǎn)技術(shù)培訓(xùn)講義課件
- 美發(fā)店承包合同范本(2篇)
- 2023年蘇州健雄職業(yè)技術(shù)學(xué)院單招考試面試題庫及答案解析
- 公司組織架構(gòu)圖(可編輯模版)
- 人教版六年級科學(xué)下冊教案全冊
- TCITSA 24-2022 基于ETC的高速公路自由流收費技術(shù)規(guī)范
- 叉車裝卸區(qū)域安全風(fēng)險告知牌
- 2022屆江蘇省南京師范大學(xué)附屬中學(xué)高三(下)考前最后一模物理試題(解析版)
- 《普通生物學(xué)教案》word版
- 貴州省就業(yè)失業(yè)登記表
- 預(yù)防電信詐騙網(wǎng)絡(luò)詐騙講座PPT幻燈片課件
評論
0/150
提交評論