語(yǔ)言控制結(jié)構(gòu)循環(huán)_第1頁(yè)
語(yǔ)言控制結(jié)構(gòu)循環(huán)_第2頁(yè)
語(yǔ)言控制結(jié)構(gòu)循環(huán)_第3頁(yè)
語(yǔ)言控制結(jié)構(gòu)循環(huán)_第4頁(yè)
語(yǔ)言控制結(jié)構(gòu)循環(huán)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Lesson6C語(yǔ)言控制結(jié)構(gòu)1/28/2024學(xué)習(xí)目標(biāo):31學(xué)會(huì)使用循環(huán)解決具有重復(fù)性的問(wèn)題1/28/20243循環(huán)結(jié)構(gòu)2循環(huán)就是重復(fù),是自然界最常見(jiàn)的一種現(xiàn)象。生活中的實(shí)例:1、運(yùn)動(dòng)員跑圈1/28/20243循環(huán)結(jié)構(gòu)2循環(huán)就是重復(fù),是自然界最常見(jiàn)的一種現(xiàn)象。2、飛火流星1/28/20243循環(huán)結(jié)構(gòu)2上面的例子有一個(gè)共同特點(diǎn):重復(fù)一些動(dòng)作。重復(fù)不是無(wú)止境的重復(fù):它是在一定條件下的重復(fù)!在程序設(shè)計(jì)中也經(jīng)常會(huì)出現(xiàn)類似的情況:1/28/20243循環(huán)結(jié)構(gòu)2輸入10個(gè)成績(jī),求其平均值?計(jì)算過(guò)程:s=0得到第一個(gè)成績(jī):90,將其加在s中:s=s+90得到第二個(gè)成績(jī):89,將其加在s中:s=s+89…….得到第10個(gè)成績(jī):82,將其加在s中:s=s+82特點(diǎn):重復(fù),并且是10次將s除以10得到平均成績(jī)1/28/20243while語(yǔ)句3while語(yǔ)句:可以實(shí)現(xiàn)在滿足一定條件下重復(fù)執(zhí)行一組語(yǔ)句書(shū)寫格式:while(<條件表達(dá)式>){<語(yǔ)句>}執(zhí)行過(guò)程1/28/20243while語(yǔ)句3#include<stdio.h>intmain(){inti=1,s=0;while(i<=5){s+=i;i++;}printf(“1+2+…5=%d”,s);return0;}分析如下程序1i0s1條件滿足嗎?23364105156檢查條件1/28/20243while語(yǔ)句3如何編寫循環(huán)程序:找出重復(fù)的動(dòng)作,將它寫成C語(yǔ)句(組)找出重復(fù)的條件,將它寫成C語(yǔ)言表達(dá)式,放在while的括號(hào)內(nèi)1/28/2024例1:從鍵盤輸入10個(gè)整數(shù),計(jì)算它們的平均值

分析:定義變量sum,i,x為完成從鍵盤輸入10個(gè)數(shù),需要重復(fù)如下動(dòng)作:從鍵盤輸入數(shù)保存在x中將x中的值加到sum中重復(fù)條件是輸入的數(shù)不超過(guò)10個(gè)最后,將sum中的值除10如何知道已經(jīng)輸入了10個(gè)?在每次輸入了數(shù)后,使變量i加1i加1scanf(“%d”,&x);sum+=x;i++;i<=10while(i<=10){}1/28/2024return0;}lesson6_01.c程序的開(kāi)始定義變量計(jì)算(循環(huán))每步過(guò)程中包含了輸入輸出結(jié)果程序的結(jié)束#include<stdio.h>intmain(){intsum=0,i=1; intx;/*保存當(dāng)前輸入的數(shù)據(jù)*/

printf(“\nEnter10integers:”);while(i<=10){ scanf(“%d”,&x);/*讀入整數(shù)x*/sum=sum+x;/*累加輸入的數(shù)據(jù)總和*/i++;}printf(“Theaveragevalueis%lf\n”,sum*1.0/(i-1));1/28/2024編寫程序,從鍵盤輸入10個(gè)成績(jī),輸出大于等于60分的成績(jī)的個(gè)數(shù)3課堂練習(xí)41/28/2024分析:定義變量count,i,x,count表示個(gè)數(shù)重復(fù)如下動(dòng)作:從鍵盤輸入數(shù)保存在x中對(duì)x的值判斷:如果x>=60,count的值加1i的值加1重復(fù)條件是輸入的數(shù)不超過(guò)10個(gè),即i<=10最后,輸出count的值1/28/2024總結(jié):從鍵盤輸入一批數(shù)的程序設(shè)計(jì)方法:1、定義變量n,表示輸入的數(shù)的個(gè)數(shù)2、定義變量i,表示已輸入的個(gè)數(shù),開(kāi)始為13、定義一個(gè)變量x,用來(lái)保存從鍵盤輸入的數(shù)4、寫while語(yǔ)句:一般是while(i<=n)5、循環(huán)體的寫法寫輸入語(yǔ)句,如scanf(…….);對(duì)x進(jìn)行處理(每個(gè)程序都不一樣)i++6、最后輸出結(jié)果1/28/2024編寫程序,從鍵盤輸入10個(gè)數(shù)字輸出其中最大的數(shù)3課堂練習(xí)4改進(jìn)程序,假如數(shù)字個(gè)數(shù)不確定怎么辦?1/28/20243for語(yǔ)句5for語(yǔ)句的語(yǔ)法格式:for(<初值表達(dá)式>;<條件表達(dá)式>;<增量表達(dá)式>){<語(yǔ)句>}1/28/20243for語(yǔ)句5#include<stdio.h>intmain(){inti=0,s=0;for(i=1;i<=5;i++){s+=i;}printf(“1+2+…5=%d”,s);return0;}分析如下程序0i0s1條件滿足嗎?361015123456執(zhí)行增量表達(dá)式1/28/2024例2:從鍵盤讀入5個(gè)字符,找出其中ASCII值最大的字符,并將該字符輸出10次。分析1:如何輸入5個(gè)字符,找出其中最大的字符定義變量:i,x,max存放最大的字符需要輸入5個(gè)字符,即循環(huán)5次,寫成for形式:

for(i=0;i<5;i++)編寫循環(huán)體,即每次需要重復(fù)什么動(dòng)作?輸入一個(gè)字符保存到變量x中----getchar將x和max比較,如果x比max大,則將x的值給max1/28/20243for語(yǔ)句5分析2:找到最大字符后如何輸出10次循環(huán)(重復(fù))10次,寫成for形式:

for(i=0;i<10;i++)編寫循環(huán)體,即每次需要重復(fù)什么?輸出max中的值----putchar1/28/2024return0; }lesson6_02.c程序的開(kāi)始定義變量計(jì)算(循環(huán))每步過(guò)程中包含了輸入輸出結(jié)果(循環(huán))程序的結(jié)束#include<stdio.h>intmain(){

inti,x,max=0; for(i=0;i<5;i++){ x=getchar(); if(x>max) max=x; }for(i=0;i<10;i++) putchar(max);為什么要給max賦01/28/2024使用for語(yǔ)句改寫例13課堂練習(xí)6即:從鍵盤輸入10個(gè)整數(shù),計(jì)算它們的平均值

1/28/2024總結(jié):如何使用for語(yǔ)句編寫程序:1、如果碰到如下情況,最合適使用for實(shí)現(xiàn)循環(huán)次數(shù)明確循環(huán)區(qū)間明確,變化有規(guī)律2、定義變量i,控制循環(huán)3、編寫for語(yǔ)句循環(huán)n次:for(i=0;i<n;i++)從s循環(huán)到e,每次變化x:for(i=s;i<=e;i+=x)編寫循環(huán)體,即需要重復(fù)做什么,可以將i理解成代表i在變化范圍內(nèi)的任意一個(gè)數(shù)最后輸出結(jié)果1/28/20243for語(yǔ)句5例3:使用for語(yǔ)句,編寫程序計(jì)算:1+2+3….+1001/28/2024分析:1、循環(huán)區(qū)間明確,從1到1002、定義變量i,作為控制循環(huán),sum存放和3、編寫for語(yǔ)句從1循環(huán)到100,每次變化1:for(i=1;i<=100;i+=1)編寫循環(huán)體,即需要重復(fù)做什么,i代表范圍內(nèi)1到100內(nèi)的任意一個(gè)整數(shù),重復(fù)動(dòng)作是將i加到sum中:sum+=i最后輸出sum3for語(yǔ)句51/28/2024#include<stdio.h>intmain(){lesson6_03.c程序的開(kāi)始定義變量計(jì)算(循環(huán))累加輸出結(jié)果程序的結(jié)束return0; }inti,sum=0; for(i=1;i<=100;i++){ sum+=i; } printf(“1+2+3+…+100=%d”,sum);為什么要給sum賦01/28/2024計(jì)算1*2*3*4*….103課堂練習(xí)71/28/2024輸出100以內(nèi)能被3整除且個(gè)位數(shù)為6的所有整數(shù)3課堂練習(xí)71/28/20243break語(yǔ)句8break語(yǔ)句跳出循環(huán)體常常和if語(yǔ)句配合使用。當(dāng)條件2滿足時(shí)例:while(條件1){語(yǔ)句1語(yǔ)句2

…….語(yǔ)句n}語(yǔ)句n+1if(條件2)break;此時(shí),循環(huán)有兩個(gè)出口,請(qǐng)指出!1/28/20243continue語(yǔ)句9continue語(yǔ)句:只結(jié)束本次循環(huán),接著進(jìn)行下一次循環(huán)的判斷,常于if語(yǔ)句配合使用當(dāng)條件2滿足時(shí)if(條件2)continue;例:while(){語(yǔ)句1語(yǔ)句2

…….語(yǔ)句n}語(yǔ)句n+1條件11/28/20243continue語(yǔ)句9#include<stdio.h>intmain(){inti,s;for(i=1,s=0;i<=10;i++){if(i%2==0)continue;if(i%7==

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論