版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、5.1 概述 C語言可實(shí)現(xiàn)循環(huán)的語句: 用goto 和 if 構(gòu)成循環(huán) while 語句 do while 語句 for 語句 5.2 goto語句及用goto構(gòu)成循環(huán) 無條件轉(zhuǎn)向goto語句一般格式:,goto 語句標(biāo)號(hào);,第五章 循環(huán)控制,說明: 語句標(biāo)號(hào)用標(biāo)識(shí)符表示,不能用整數(shù) 結(jié)構(gòu)化程序設(shè)計(jì)限制使用goto語句,例 5.1 用if 和goto語句構(gòu)成循環(huán),求,main() int i,sum=0; i=1; loop: if(i=100) sum+=i; i+; goto loop; printf(%d,sum); ,sum=0+1 sum=1+2=3 sum=3+3=6 sum=6+
2、4 sum=4950+100=5050,用途: 與if語句一起構(gòu)成循環(huán)結(jié)構(gòu) 從循環(huán)體中跳轉(zhuǎn)到循環(huán)體外,while語句 一般形式:,while(表達(dá)式) 循環(huán)體語句;,執(zhí)行流程:,例5.2 用while循環(huán)求,#include main() int i,sum=0; i=1; while(i=100) sum=sum+i; i+; printf(%d,sum); ,特點(diǎn):先判斷表達(dá)式,后執(zhí)行循環(huán)體 說明: 循環(huán)變量應(yīng)有一個(gè)初值 循環(huán)體有可能一次也不執(zhí)行 循環(huán)體可為任意類型語句 循環(huán)體如果包含一個(gè)以上的語句,應(yīng)用花括號(hào)括起來,以復(fù)合語句的形式出現(xiàn),否則,while語句的范圍只到while后第一個(gè)分
3、號(hào)處 循環(huán)體中應(yīng)有使循環(huán)趨向于結(jié)束的語句 如本例中的i+語句,dowhile語句 一般形式:,do 循環(huán)體語句; while(表達(dá)式);,執(zhí)行流程:,例5.3 用dowhile循環(huán)求,#include main() int i,sum=0; i=1; do sum+=i; i+; while(i=100); printf(%d,sum); ,特點(diǎn):先執(zhí)行循環(huán)體,后判斷表達(dá)式 說明: 至少執(zhí)行一次循環(huán)體 dowhile可轉(zhuǎn)化成while結(jié)構(gòu),例 5.4 while和dowhile比較,main() int i,sum=0; scanf(%d, ,main() int i,sum=0; scanf
4、(%d, ,for語句 一般形式:,for(表達(dá)式1 ; 表達(dá)式2 ;表達(dá)式3) 循環(huán)體語句;,執(zhí)行流程:,for語句一般應(yīng)用形式:,for(循環(huán)變量賦初值;循環(huán)條件;循環(huán)變量增值) 循環(huán)體語句; ,說明: for語句可以轉(zhuǎn)換成while結(jié)構(gòu) for語句中表達(dá)式1,表達(dá)式2 ,表達(dá)式3 類型任意,都可省略,但分號(hào);不可省,表達(dá)式2 省略時(shí),不判斷循環(huán)條件,也就是認(rèn)為表達(dá)式2始終為真 三個(gè)表達(dá)式可都省略: for(; ;),表達(dá)式1; while(表達(dá)式2) 循環(huán)體語句; 表達(dá)式3; ,for (i=1; ;i+) sum=sum+i;,i=1; for (;i=100 ;i+) sum=sum
5、+i;,for ( i=1;i=100 ;) sum=sum+i; i+;,i=1; for (;i=100 ;) sum=sum+i; i +,例_2:#include main( ) int i; for(i=0;i10;i+) putchar(a+i); ,運(yùn)行結(jié)果:abcdefghij,例_3:#include main( ) int i=0; for(;i10;i+) putchar(a+i); ,例_4:#include main( ) int i=0; for(;i10;) putchar(a+(i+); ,例_6: main() int i,j,k; for(i=0,j=100
6、;i=j;i+,j-) k+=i*j; printf(%d+%d=%dn,i,j,k);,表達(dá)式1,3也可以是逗號(hào)表達(dá)式,例_5: main() int i,j,sum; for(sum=0,i=1;i=100;i+) sum=sum+i; printf(%dn,sum);,例_8:#include main() char c; for(;(c=getchar()!=n;) printf(%c ,c); ,例_7:#include main() int i,c; for(i=0;(c=getchar()!=n;i+=c); printf(%d ,i); ,表達(dá)式2可以是關(guān)系或邏輯表達(dá)式,也可以
7、是其它類型的表達(dá)式,只要其值非0,就執(zhí)行循環(huán)體,循環(huán)的嵌套 三種循環(huán)可互相嵌套,層數(shù)不限 外層循環(huán)可包含兩個(gè)以上內(nèi)循環(huán) 嵌套循環(huán)的執(zhí)行流程,(1) while() while() . ,(2) do do while( ); . while( );,(3) while() do while( ); . ,例 循環(huán)嵌套,輸出九九表,例_9:#include main() int i,j; printf(“ ”); for(i=1;i10;i+) printf(%4d,i); printf(n-n); for(i=1;i10;i+) printf(“%d”,i); for(j=1;j10;j+)
8、printf(%4d,i*j); printf(“n”); ,4.5 輔助控制語句 break語句 功能:在循環(huán)語句和switch語句中,終止并跳出循環(huán)體或跳出switch結(jié)構(gòu) 說明: break只能終止并跳出最近一層的結(jié)構(gòu) break不能用于循環(huán)語句和switch語句之外的任何其它語句之中 If和goto構(gòu)成的循環(huán)語句中不能用break語句,例_10:輸出圓面積,面積大于100時(shí)停止,#define PI 3.14159 main() int r; float area; for(r=1;r100) break; printf(r=%d,area=%.2fn,r,area); ,例_11:小
9、寫字母轉(zhuǎn)換成大寫字母,直至輸入非字母字符,#include main() int i,j; char c; while(1) c=getchar(); if(c=a ,continue語句 功能:結(jié)束本次循環(huán),跳過循環(huán)體中尚未執(zhí)行的語句,進(jìn)行下一次是否執(zhí)行循環(huán)體的判斷 僅用于循環(huán)語句中,例_12 求輸入的十個(gè)整數(shù)中正數(shù)的個(gè)數(shù)及其平均值,#include main() int i,num=0,a; float sum=0; for(i=0;i10;i+) scanf(%d, ,例5.5 把100200之間的不能被3整除的數(shù)輸出,main() int n; for(n=100;n=200;n+)
10、if(n%3= =0) continue; printf(%dn,n); ,程序舉例,分子:1,-1,1,-1 分母:1,3,5,7,.,#include main() int s; float n,t,pi; t=1; pi=0; n=1.0; s=1; while(fabs(t)=1e-6) pi=pi+t; n=n+2; s=-s; t=s/n; pi=pi*4; printf(pi=%10.6fn,pi); ,例5.7 求Fibonacci數(shù)列:1,1,2,3,5,8,的前40個(gè)數(shù),main() long int f1,f2; int i; f1=1;f2=1; for(i=1;i=20;i+) printf(“%12ld%12ld”,f1,f2); if(n%2= =0) printf(“n”); f1=f1+f2; f2=f2+f1; ,例5.8 判斷m是否素?cái)?shù),#include main() int m,i,k,n=0; for(m=101;m=k+1) printf(%d ,m);n=n+1; if(n
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年1月廣東廣州市天河區(qū)美好居幼兒園編外聘用制專任教師招聘1人考試備考試題及答案解析
- 2026新疆昆東經(jīng)開區(qū)管委會(huì)招聘19人考試備考試題及答案解析
- 2026青海海東市第二人民醫(yī)院校園引才招聘10人考試參考題庫及答案解析
- 2026湖南師大附中雙語實(shí)驗(yàn)學(xué)校(南校區(qū))教師招聘考試備考題庫及答案解析
- 2026福建廈門市集美區(qū)新亭幼兒園非在編教職工招聘1人考試參考試題及答案解析
- 2026中煤陜西能源化工集團(tuán)有限公司面向社會(huì)招聘54人考試參考題庫及答案解析
- 2026年西安慶華醫(yī)院招聘(9人)考試參考題庫及答案解析
- 2026上海大學(xué)招聘崗位210人(第一批)考試參考試題及答案解析
- 高級(jí)護(hù)理查房:姑息治療與安寧療護(hù)
- 2026年河南實(shí)達(dá)國際人力資源合作有限公司關(guān)于招聘公共安全服務(wù)人員備考題庫參考答案詳解
- 整體護(hù)理病歷課件
- 算法歧視法律規(guī)制-洞察及研究
- 《質(zhì)量比較儀校準(zhǔn)規(guī)范》
- 去極端化宣傳課件
- 2025至2030中國智能VR手術(shù)眼鏡市場(chǎng)發(fā)展現(xiàn)狀及未來前景預(yù)測(cè)分析報(bào)告
- 2025春季學(xué)期國開電大本科《人文英語4》一平臺(tái)機(jī)考真題及答案(第八套)
- 2025-2030中國房地產(chǎn)與房地產(chǎn)軟件行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略研究報(bào)告
- 委托貸款購車協(xié)議書
- 婚后子女撫養(yǎng)協(xié)議書
- R-Breaker交易系統(tǒng)策略(TB版)
- 光伏勞務(wù)居間合同范例
評(píng)論
0/150
提交評(píng)論