資源描述:
《循環(huán)結構程序設計ppt課件.ppt》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、第五章循環(huán)結構程序設計本章要點循環(huán)的基本概念不同形式的循環(huán)控制多重循環(huán)問題5.1程序中需要用循環(huán)結構5.2用while語句和do-while語句實現循環(huán)5.3用for語句實現循環(huán)5.4循環(huán)的嵌套5.5用break語句和continue語句改變循環(huán)狀態(tài)5.6幾種循環(huán)的比較5.7程序舉例5.8提高部分主要內容5.1程序中需要用循環(huán)結構什么是循環(huán)?為什么要使用循環(huán)?問題1:問題2:求學生平均成績分數相加后除以課數在許多問題中需要用到循環(huán)控制。循環(huán)結構就是用來處理需要重復處理的問題的,所以又稱重復結構。它和順序結構、選擇結構共同作為各種復雜程序的基本構造單元。循環(huán)分為兩種:無休止循環(huán)和有終止循環(huán)構
2、成有效循環(huán)的條件:循環(huán)體和循環(huán)結束條件5.2用while語句和do-while語句實現循環(huán)5.2.1用while語句實現循環(huán)while語句用來實現“當型”循環(huán)結構一般形式:while(表達式)語句當表達式為非0值時,執(zhí)行while語句中的內嵌語句。其特點是:先判斷表達式,后執(zhí)行循環(huán)體,即內嵌語句。例題5.1求1+2+3+…+100的和解題思路(1)開始時使sum的值為0,被加數i第一次取值為1。開始進入循環(huán)結構。(2)判別“i≤100”條件是否滿足,由于i小于100,因此“i≤100”的值為真。所以應當執(zhí)行其下面矩形框中的操作。(3)執(zhí)行sum=sum+i,此時sum的值變?yōu)?了,然后使i
3、的值加1,i的值變?yōu)?了,這是為下一次加2作準備。流程返回菱形框。(4)再次檢查“i≤100”條件是否滿足,由于i的值為2,小于100,因此“i≤100”的值仍為真,所以應執(zhí)行其下面矩形框中的操作。(5)執(zhí)行sum=sum+i,由于sum的值已變?yōu)?,i的值已變?yōu)?,因此執(zhí)行sum=sum+i后sum的值變?yōu)?。再使i的值加1,i的值變?yōu)?。流程再返回菱形框。(6)再次檢查“i≤100”條件是否滿足……,如此反復執(zhí)行矩形框中的操作,直到i的值變成了100,把i加到sum中,然后i又加1變成101了。當再次返回菱形框檢查“i≤100”條件時,由于I已是101,大于100,“i≤100”的值為
4、假,不再執(zhí)行矩形框中的操作,循環(huán)結構結束。5.2用while語句和do-while語句實現循環(huán)#includevoidmain(){inti,sum=0;/*sum是用來存放累加和的變量*//*初值為0*/i=1;while(i<=100)/*當I小于或等于100時*//*執(zhí)行下面花括號中的復合語句*/{sum=sum+i;/*將i的當前值累加到變量sum中*/i++;/*使i的值加1*/}printf(″%d″,sum);}說明:(1)循環(huán)體如果包含一個以上的語句,應該用花括號括起來,以復合語句形式出現.(2)在循環(huán)體中應有使循環(huán)趨向于結束
5、的語句。運行結果:5050編寫程序5.2用while語句和do-while語句實現循環(huán)5.2用while語句和do-while語句實現循環(huán)5.2.2用do-while語句實現循環(huán)do-while語句的特點:先執(zhí)行循環(huán)體,然后判斷循環(huán)條件是否成立。執(zhí)行過程:先執(zhí)行一次指定的循環(huán)體語句,然后判別“表達式”,當表達式的值為非0(“真”)時,返回重新執(zhí)行循環(huán)體語句,如此反復,直到表達式的值等于0(“假”)為止,此時循環(huán)結束。while語句和do-while語句的關系:同一個問題既可以用while循環(huán)處理,也可以用do-while循環(huán)來處理。二者是可以互相轉換的。一般形式:do循環(huán)體語句while(
6、表達式);例題5.2求1+2+3+…+100的和#includevoidmain(){inti,sum=0;i=1;do/*在循環(huán)開始時不檢查條件,先執(zhí)行一次循環(huán)體*/{sum=sum+i;i++;}while(i<=100);printf("%d″,sum);}運行結果:5050說明:可以看到,結果和例5.1完全相同。編寫程序5.2用while語句和do-while語句實現循環(huán)例題5.3募集慈善基金10000元,有若干人捐款,每輸入一個人的捐款數后,計算機就輸出當時的捐款總和。當某一次輸入捐款數后,總和達到或超過10000元時,即宣告結束,輸出最
7、后的累加值。解題思路解此題的思路是設計一個循環(huán)結構,在其中輸入捐款數,求出累加值,然后檢查此時的累加值是否達到或超過預定值,如果達到了,就結束循環(huán)操作。5.2用while語句和do-while語句實現循環(huán)#includevoidmain(){floatamount,sum=0;/*變量sum用來存放累加和*/do{scanf("%f",&amount);/*輸入一個捐款金額*/sum=sum+am