版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語言程序設(shè)計(jì) 高等教育出版社 新形態(tài)一體化教材單元五【問題1】某大賽中重復(fù)要做的事情是什么?【問題2】滿足什么條件大賽可繼續(xù)執(zhí)行?2三種循環(huán)語句3循環(huán)結(jié)構(gòu)控制語句4循環(huán)應(yīng)用1循環(huán)的本質(zhì) 循環(huán)的本質(zhì)1循環(huán)的本質(zhì)引例98777 71號(hào):總分31分8 87 76 62號(hào):總分28分 評(píng)委亮分 計(jì)算總分 在某一條件成立的情況下反復(fù)做重復(fù)性的事情,這就是循環(huán)。某大賽重復(fù)的事情有:1循環(huán)的本質(zhì)如何用程序設(shè)計(jì)語言來描述大賽問題呢?int i=1; 設(shè) i 為評(píng)委編號(hào),整型,初始值為1 設(shè)score存評(píng)委分?jǐn)?shù),sum存總分并設(shè)初值為0.0,均為浮點(diǎn)型double score, sum=0.0; 在 i=4
2、的條件下反復(fù)執(zhí)行如下操作:scanf(%lf,&score ); 播報(bào)(輸入)當(dāng)前評(píng)委亮出的分?jǐn)?shù)scoresum+=score;累加到總分sumi+;評(píng)委編號(hào)遞增1 變量定義 算法描述1循環(huán)的本質(zhì) 減少源代碼的存儲(chǔ)空間,提高程序質(zhì)量。 可重復(fù)執(zhí)行某些相同代碼的程序段; 將程序員從大量重復(fù)編寫相同代碼的工作中解放出來,提高程序編寫效率;循環(huán)的本質(zhì)【循環(huán)結(jié)構(gòu)的任務(wù)】1循環(huán)的本質(zhì) 每次循環(huán)要做什么,即“反復(fù)執(zhí)行的語句”,稱為“循環(huán)體”。 循環(huán)從什么時(shí)候開始,即“循環(huán)變量初值”。 滿足什么條件要循環(huán),即“循環(huán)控制條件表達(dá)式”。i=1;i=4scanf(%lf,&score ); sum
3、+=score;i+;循環(huán)變量初值循環(huán)控制條件表達(dá)式循環(huán)體循環(huán)結(jié)構(gòu)三要素【概括大賽問題】3循環(huán)結(jié)構(gòu)控制語句4循環(huán)應(yīng)用1循環(huán)的本質(zhì)2三種循環(huán)語句 三種循環(huán)語句2三種循環(huán)語句while語句while(表達(dá)式) 循環(huán)體;【一般格式】 循環(huán)控制條件表達(dá)式由一條或多條語句組成,當(dāng)“循環(huán)體”僅有一條語句時(shí),可省略“”。表達(dá)式真?循環(huán)體真(非0)假(0)【流程圖】2三種循環(huán)語句while語句示例利用while語句計(jì)算大賽選手總分。(有10位評(píng)委)#include void main( ) double score, sum=0; int i=1; while(i=10) printf(請(qǐng)第%d位評(píng)委亮分:,
4、i); scanf(%lf,&score ); sum=sum+score; i+; printf(“該選手的總分為:%.2lf.n,sum);循環(huán)控制條件循環(huán)體2三種循環(huán)語句while語句隨堂練習(xí)利用while語句計(jì)算1n中的奇數(shù)之和及偶數(shù)之和?!咎崾尽?n的值在程序執(zhí)行時(shí)通過鍵盤輸入 各變量初值如何設(shè)計(jì)? 循環(huán)變量增量如何設(shè)計(jì)? 循環(huán)條件如何設(shè)計(jì)?2三種循環(huán)語句dowhile語句do 循環(huán)體; while(表達(dá)式);【一般格式】 表達(dá)式后必須有;【流程圖】表達(dá)式真?循環(huán)體真(非0)假(0)2三種循環(huán)語句dowhile語句示例利用while語句計(jì)算大賽選手總分。(有10位評(píng)委)#in
5、clude void main( ) double score, sum=0; int i=1; do printf(請(qǐng)第%d位評(píng)委亮分:,i); scanf(%lf,&score ); sum=sum+score; i+; while(i=10); printf(“該選手的總分為:%.2lf.n,sum);2三種循環(huán)語句dowhile語句隨堂練習(xí)利用dowhile語句計(jì)算1+1/2+1/3+1/n。【提示】 n的值在程序執(zhí)行時(shí)通過鍵盤輸入 各變量的數(shù)據(jù)類型如何設(shè)計(jì)? “1”與“1.0”有什么區(qū)別?2三種循環(huán)語句for語句【一般格式】 【流程圖】for(表達(dá)式1; 表達(dá)式2; 表達(dá)式3
6、) 循環(huán)體;表達(dá)式之間用;分隔表達(dá)式2?循環(huán)體真(非0)表達(dá)式1表達(dá)式3假(0)2三種循環(huán)語句for語句示例利用for語句計(jì)算大賽選手總分。(有10位評(píng)委)#include void main( ) double score, sum=0; int i; for(i=1;i=10;i+) printf(請(qǐng)第%d位評(píng)委亮分:,i); scanf(%lf,&score ); sum=sum+score; printf(“該選手的總分為:%.2lf.n,sum);2三種循環(huán)語句for語句隨堂練習(xí)利用for語句計(jì)算1+1/2+1/3+1/n?!咎崾尽?n的值在程序執(zhí)行時(shí)通過鍵盤輸入 各變量的數(shù)
7、據(jù)類型如何設(shè)計(jì)? 若“int n=2;”,“1/n”的值是多少? “1.0/n”又是多少? 4循環(huán)應(yīng)用1循環(huán)的本質(zhì)2三種循環(huán)語句3循環(huán)結(jié)構(gòu)控制語句 循環(huán)結(jié)構(gòu)控制語句3循環(huán)結(jié)構(gòu)控的制語句break語句 引例while(表達(dá)式1) if(表達(dá)式2) break; u在程序執(zhí)行的過程中,如果“表達(dá)式2”為真,則執(zhí)行break語句,此時(shí)也會(huì)終止循環(huán)。 u正常情況下,該循環(huán)結(jié)構(gòu)的執(zhí)行由循環(huán)控制條件“表達(dá)式1”控制,當(dāng)“表達(dá)式1”為假時(shí),循環(huán)結(jié)束。【一般格式】 break;結(jié)束循環(huán)3循環(huán)結(jié)構(gòu)控的制語句break語句 示例 設(shè)計(jì)一個(gè)程序?qū)崿F(xiàn):輸入若干字符,對(duì)輸入的英文字母原樣輸出,其他字符不輸出,直到輸入回
8、車鍵結(jié)束。#include void main( ) char ch; while(1) ch=getchar(); if(ch=n) break; else if(ch=a&ch=A&ch=Z) putchar(ch); 結(jié)束循環(huán)3循環(huán)結(jié)構(gòu)控的制語句continue語句 引例while(表達(dá)式1) if(表達(dá)式2) continue; u在執(zhí)行循環(huán)體的過程中。如果“表達(dá)式2”為真,執(zhí)行continue語句,即不再執(zhí)行continue后面的循環(huán)體語句,轉(zhuǎn)到“表達(dá)式1”進(jìn)行下一次循環(huán)控制條件的判定。u在循環(huán)控制條件“表達(dá)式1”成立的情況下,則執(zhí)行循環(huán)體。【一般格式】 contin
9、ue;結(jié)束本次循環(huán),進(jìn)行下一次是否執(zhí)行循環(huán)的判定。 3循環(huán)結(jié)構(gòu)控的制語句continue語句 示例 設(shè)計(jì)一個(gè)程序?qū)崿F(xiàn):輸入若干字符,對(duì)輸入的英文字母原樣輸出,其他字符不輸出,直到輸入回車鍵結(jié)束。#include void main( ) char ch; while(ch=getchar()!=n) if(ch=a&ch=A&ch=Z) continue; putchar(ch); 結(jié)束本次循環(huán),進(jìn)行下一次是否執(zhí)行循環(huán)的判定。1循環(huán)的本質(zhì)2三種循環(huán)語句4循環(huán)應(yīng)用 循環(huán)應(yīng)用3循環(huán)結(jié)構(gòu)控制語句4循環(huán)應(yīng)用 【應(yīng)用1】自冪數(shù)是指一個(gè) n 位整數(shù),它的每個(gè)位上的數(shù)字的 n 次冪之和等于它
10、本身。當(dāng)n為4時(shí),自冪數(shù)稱為玫瑰花數(shù),試編程輸出10009999范圍內(nèi)所有的玫瑰花數(shù)。(形如14+64+34+44=1634) 【分析】設(shè)這個(gè)四位整數(shù)為n,它的各位數(shù)字從低到高分別為a、b、c和d。 a=n%10 b=n/10%10 c=n/100%10 d=n/1000個(gè)位十位百位千位4循環(huán)應(yīng)用#include void main() int i,n,a,b,c,d; for(i=1000;i=9999;i+) n=i; a=n%10; b=n/10%10; c=n/100%10; d=n/1000; if(a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d=n) printf(
11、%6d,n); 163482089474輸出結(jié)果4循環(huán)應(yīng)用 【應(yīng)用2】百元百雞問題。我國(guó)古代數(shù)學(xué)家張丘鍵在算經(jīng)中出了一道題:雞翁一,值錢五;雞母一,值錢三;雞雛三,值錢一。百錢買百雞,問雞翁、雞母、雞雛各幾何? 【分析】設(shè)一百只雞中公雞、母雞、小雞分別為x,y,z,問題化為三元一次方程組。(百錢)(百雞)x、y、z的取值范圍: x的取值范圍為120; y的取值范圍為133; z的取值范圍為399,步長(zhǎng)為3。x、y、z為正整數(shù),且z是3的倍數(shù);由于雞和錢的總數(shù)都是100。用窮舉的方法,遍歷x,y,z的所有可能組合,最后得到問題的解。#include void main() int gongji,muji,xiaoji; for(gongji=1;gongji=20;gongji+) /公雞可能的數(shù)量范圍 for(muji=1;muji=33;muji+) /母雞可能的數(shù)量范圍 for(xiaoji=3;xiaoji=100;xiaoji=xiaoji+3) /小雞可能的數(shù)量范圍 if(xiaoji/3+muji*3+gongji*5=100)&(xiaoji+muji+gongji=100) printf(%4dt%4dt%4dn,gongji,muji,xiaoji); 4循環(huán)應(yīng)用輸出結(jié)果:公雞 母雞 小雞 4
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年美團(tuán)外賣合作商家知識(shí)產(chǎn)權(quán)保護(hù)協(xié)議4篇
- 2025年電子商務(wù)平臺(tái)入駐商家合作協(xié)議范本3篇
- 二零二五年度電梯維修保養(yǎng)服務(wù)長(zhǎng)期合同4篇
- 2025年度窗簾設(shè)計(jì)大賽參賽作品制作合同4篇
- 2025年度內(nèi)資股協(xié)議轉(zhuǎn)讓全程法律服務(wù)合同4篇
- 2025年度智能門閘研發(fā)合作合同范本4篇
- 二零二五年度現(xiàn)代農(nóng)業(yè)項(xiàng)目出資股東協(xié)議規(guī)范文本3篇
- 2025年度苗木種植基地智能化管理系統(tǒng)開發(fā)合同4篇
- 心理干預(yù)對(duì)兒童心理健康的影響-深度研究
- 二零二五年度農(nóng)家樂旅游線路開發(fā)合作協(xié)議4篇
- 《電影之創(chuàng)戰(zhàn)紀(jì)》課件
- 社區(qū)醫(yī)療抗菌藥物分級(jí)管理方案
- 開題報(bào)告-鑄牢中華民族共同體意識(shí)的學(xué)校教育研究
- 《醫(yī)院標(biāo)識(shí)牌規(guī)劃設(shè)計(jì)方案》
- 公司2025年會(huì)暨員工團(tuán)隊(duì)頒獎(jiǎng)盛典攜手同行共創(chuàng)未來模板
- 夜市運(yùn)營(yíng)投標(biāo)方案(技術(shù)方案)
- 電接點(diǎn) 水位計(jì)工作原理及故障處理
- 國(guó)家職業(yè)大典
- 2024版房產(chǎn)代持協(xié)議書樣本
- 公眾號(hào)運(yùn)營(yíng)實(shí)戰(zhàn)手冊(cè)
- 科研倫理與學(xué)術(shù)規(guī)范(研究生)期末試題庫及答案
評(píng)論
0/150
提交評(píng)論