




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第5.2章循環結構程序設計主講教師:賀愛香理論知識概述1while語句2do-while語句3for語句4break和continue語句6循環嵌套5goto語句7while語句和Dowhile語句(復習)表達式循環體假真一般形式
while(表達式)循環體語句一般形式
do
{
循環體語句
}
while(條件表達式);循環體表達式假真for語句(最靈活、功能最強)一般形式
for(表達式1;表達式2;表達式3)
循環體語句循環控制變量的初始值循環的條件表達式改變循環變量的表達式應用形式
for(循環控制變量賦初值;循環控制變量<=終值;循環控制變量增值){
循環體語句
}執行過程表達式2循環體語句假真計算表達式1計算表達式3非00s=0;i=1;i<=100s=s+i;i=i+1;/*解決方案三*/voidmain(){ints=0,i;for(i=1;i<=100;i++) s=s+i;
printf("s=1+2+……+100=%d\n",s);}①表達式1可以省略,此時變量賦初值語句放在for循環的前面,注意省略表達式1時其后分號不能省略,如:i=1;for(;i<=100;i++)s=s+i;②當省略表達式2的時候,相當于循環控制條件始終為真,即不判斷循環條件,循環無終止地執行下去,如:for(i=1;;i++)s=s+i;③表達式3也可以省略,但此時循環體語句中應該包含使循環趨向于結束的語句,如:for(i=1;i<=100;){s=s+i;i++;}注意事項④當同時省略表達式1和表達式3,則與while循環完全等價,如:i=1;for(;i<=100;){s=s+i;i=i+1;}相當于i=1;while(i<=100){s=s+i;i=i+1;}⑤當三個表達式都省略的時候,表示既不賦初值,也不判斷循環條件,也不做循環變量的增減,循環會無終止地執行下去,如:for(;;)語句相當于while(1)語句注意事項⑥表達式1既可以是一個簡單的表達式,也可以是逗號表達式,此時按照逗號表達式的求值順序逐個求值,如:for(s=0,i=1;i<=100;i++)s=s+i;⑦循環體語句也可以為空,但至少要保留一個分號,如:for(;;);分號表示空語句,不實現任何操作。注意事項有如下程序段:inti,sum=0;for(i=1;i<6;i++)sum+=i;printf(“%d\n”,sum);該程序段的執行結果是()。1514不確定0ABCD提交單選題1分有如下程序段:inti,sum=0;for(i=1;i<=3;sum++)sum+=i;printf(“%d\n”,sum);該程序段的執行結果是()。63死循環0ABCD提交單選題1分以下循環體的執行次數是()。inti,j;for(i=0,j=1;i<=j+1;i+=2,j--)printf(“%d\n”,i);3210ABCD提交單選題1分for語句同while語句,也是先判斷,后執行for語句可以轉換成while結構for(表達式1;表達式2;表達式3){循環體語句;}表達式1;while(表達式2){循環體語句;表達式3;}【例】用三種循環格式實現:
#include<stdio.h>main(){inti,sum=0;
for(i=1;i<=100;i++)sum=sum+i;printf("%d",sum);}#include<stdio.h>main(){inti,sum=0;i=1;
while(i<=100){sum=sum+i;i++;}printf("%d",sum);}#include<stdio.h>main(){inti,sum=0;i=1;
do
{sum=sum+i;i++;}while(i<=100);printf("%d",sum);}若i的初始值為101呢?結論:當循環變量的初始值不滿足循環條件時,for和while的循環體一次也不執行,但do……while的循環體會被執行一次。一、思路分析:采用逆向思維,從后往前推斷,發現其中有相同的地方,即出現遞推公式,可以采用遞歸方法。令X10=1,容易看出X9=2(X10+1),簡化一下X9=2X10+2X8=2X9+2…..Xn=2Xn+1+2//方法一:#include<stdio.h>intmain(){intday=9,x1=0,x2=1;while(day>0){x1=(x2+1)*2;x2=x1;day--;}printf("Thefirstdayofpickingpeachesnumberis:%d\n",x1);}//方法二:#include<stdio.h>intmain(){intday=9,x1=0,x2=1;for(;day>0;day--){x1=(x2+1)*2;x2=x1;}printf("Thefirstdayofpickingpeachesnumberis:%d\n",x1);}循環的嵌套三種循環可互相嵌套,層數不限1)while(){……while(){……}…...}(2)do{……do{……}while();…...}while();(4)for(;
;){……do{……}while();……while(){……}…...}(3)while(){……do{……}while();…….}說明外層循環可包含兩個以上內循環請寫出程序運行結果#include“stdio.h”main(){intk=1,j;while(k<=5){j=1;do{printf("*");j++;}while(j<=k);printf("\n");k++;}}***************運行結果內層循環體的執行?次1+2+3+4+5=15閱讀下述程序段,判斷各層循環體的范圍;判斷各層循環體執行的次數。①n=6;m=5;for(i=0;i<n;i++){for(j=0;j<m;j++)printf(“%d*%d=%2d”,i,j,i*j);printf(“\n”,);}/*內循環體的運行次數:n*m=6*5=30次*//*外循環體的運行次數:6次*/*************************打印如下圖形:#include<stdio.h>voidmain(){ inti,j,k; for(i=1;i<=4;i++)//控制行 { for(j=1;j<=2*i-1;j++)//控制列
p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高三英語試題
- 財務管理中的道德與倫理考量試題及答案
- 探討社會學中的數據分析方法試題及答案
- 初級會計熱點話題試題及答案分析
- 合伙承包施工協議書
- 新穎備考2025年財務管理考試試題與答案
- 合伙經營租賃協議書
- 醫院設備幫扶協議書
- 2025年關于軍產房租賃合同的法律適用及其效力分析
- 合伙購買漁船協議書
- 23秋國家開放大學《農業經濟基礎》形考任務1-4參考答案
- 教科版(2017)小學科學三年下冊《物體在斜面上運動》說課(附反思、板書)課件
- 統編版選擇性必修3《邏輯與思維》背誦手冊-高二政治新教材(選擇性必修)
- 活性炭濾池施工方案
- 木模木支撐施工方案
- 基于STAMP的航空安全理論與實踐PPT完整全套教學課件
- 護士服飾禮儀(護理禮儀課件)
- 創新思維與創業實驗-東南大學中國大學mooc課后章節答案期末考試題庫2023年
- 焊接H型鋼的矯正
- 抗菌藥物臨床應用指導原則(2023年版)
- 基因奧秘智能型水潤抗衰深層治療操作流程
評論
0/150
提交評論