版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第六章循環(huán)跳出和循環(huán)嵌套12回顧while循環(huán)do-while循環(huán)while和do-while循環(huán)的區(qū)別For循環(huán)3目標(biāo)理解break和continue熟練使用嵌套循環(huán)4break語(yǔ)句(一)break語(yǔ)句兩種用途:1.終止switch語(yǔ)句中的case語(yǔ)句,保證多路分支情況的正確執(zhí)行2.強(qiáng)迫程序退出一個(gè)循環(huán),跳過(guò)正常的循環(huán)條件測(cè)試5break語(yǔ)句(二)break語(yǔ)句通常在循環(huán)中與條件語(yǔ)句一起使用。若條件值為真,將跳出循環(huán),控制流轉(zhuǎn)向循環(huán)后面的語(yǔ)句在多層循環(huán)中,一個(gè)break語(yǔ)句只向外跳一層6跳出
for循環(huán)inti;for(i=0;i<100;i++;){if(i==10)//當(dāng)i等于10時(shí)退出整個(gè)循環(huán)
break;printf("
%4d",i);}printf("
\n",i);}break示例7跳出
while循環(huán)while(1){if(x==10)
break;}跳出
for循環(huán)for(;;){printf("這將一直進(jìn)行下去");i=getchar();if(i=='X'||i=='x')
break;}break語(yǔ)句(三)跳出
do-while循環(huán)do{if(x==10)
break;}while(x<15);8continue語(yǔ)句(一)continue
語(yǔ)句的作用是跳過(guò)循環(huán)體中剩余的語(yǔ)句而執(zhí)行下一次循環(huán)9跳出
for循環(huán)inti;for(i=0;i<100;i++;){if(i==10)//當(dāng)i等于10時(shí)退出本次循環(huán)
continue;printf("%4d",i);}printf("\n",i);}
Continue示例10break與continue的區(qū)別while(…){
…………
break;
…………}跳出整個(gè)循環(huán)while(…){
…………continue;
…………}繼續(xù)下一次循環(huán)11循環(huán)嵌套在一個(gè)循環(huán)體內(nèi)又包含了一個(gè)完整的循環(huán)結(jié)構(gòu)時(shí),稱為循環(huán)語(yǔ)句的嵌套。只有在內(nèi)循環(huán)完全結(jié)束后,外循環(huán)才會(huì)進(jìn)行下一趟。嵌套循環(huán)的語(yǔ)法while(i<=10){...while(i<=j){......}...}外循環(huán)內(nèi)循環(huán)12循環(huán)嵌套示例(一)
在屏幕打印由星號(hào)構(gòu)成的5行10列的矩形圖形13
在屏幕打印由星號(hào)構(gòu)成的5行10列的矩形圖形#include<stdio.h>voidmain(){inti,j;for(i=0;i<5;i++) //打印5行
{ for(j=0;j<10;j++) //每行打印10個(gè)星號(hào)
{ printf("*"); } printf("\n");//打印完一行星號(hào)后輸出一個(gè)換行符
}}循環(huán)嵌套示
例(一)14循環(huán)嵌套示例(二)
打印九九乘法表。15#include<stdio.h>voidmain(){ printf("\t\t\t\t九九乘法表\n"); printf("\t\t\t------------------------\n"); for(inti=1;i<=9;i++)//輸出行
{ for(intj=1;j<=9;j++)//輸出每行的列數(shù)
{ printf("%d*%d=%2d\t",i,j,i*j); } printf("\n"); }}16注意內(nèi)循環(huán)控制變量,不能與外循環(huán)控制變量同名外循環(huán)必須完全包含內(nèi)循環(huán),不能有交叉循環(huán)for循環(huán)既可以嵌套for循環(huán),也可以嵌套while或者do-while循環(huán),實(shí)際應(yīng)用中三種循環(huán)可以互相嵌套。在多層循環(huán)中,一個(gè)break語(yǔ)句只向外跳一層。17程序舉例(一)百錢買百雞問(wèn)題。假設(shè)小雞每只5角,公雞每只2元,母雞每只3元?,F(xiàn)在有100元錢要求買100只雞,請(qǐng)編程列出所有可能的購(gòu)雞方案。設(shè)母雞、公雞和小雞各為x、y、z只,根據(jù)題目要求,可以列出方程為方程有3個(gè)未知量,故有無(wú)窮多解。,在計(jì)算機(jī)中可以使用“窮舉法”(也稱枚舉法)來(lái)求解。即,將可能出現(xiàn)的各種情況一一測(cè)試,判斷是否滿足條件。18程序舉例(二)#include<stdio.h>voidmain(){
printf("\t\t購(gòu)買方案\n");
printf("\t------------------------\n");
printf("\t母雞\t公雞\t小雞\n");
int
x,y,z,sum=0;for(x=1;x<=100;x++){for(y=1;y<=100;y++){ for(z=1;z<=100;z++){if(((x+y+z)==100)&&((3*x+2*y+0.5*z)==100))
printf("\t%d\t%d\t%d\n",x,y,z);sum++;}}}
printf("\n方法一,程序總共運(yùn)行了:%d\n",sum);}
程序舉例(二)在多重循環(huán)中為了提高運(yùn)行速度,對(duì)程序要考慮優(yōu)化問(wèn)題。對(duì)于多重循環(huán),可以提高速度的優(yōu)化選項(xiàng)中需要考慮的因素如下:盡量利用已給出的條件,減少循環(huán)的次數(shù)。合理的選擇內(nèi)、外層的循環(huán)次數(shù),即將循環(huán)次數(shù)多的放在內(nèi)循環(huán)中。根據(jù)三種雞的只數(shù)為100的關(guān)系,用二重循環(huán)實(shí)現(xiàn);同時(shí)每種雞循環(huán)次數(shù)不必到100,因?yàn)檫€要滿足總價(jià)格為100元的關(guān)系。因此,假如100元買母雞最多能買100/3=33只,而如果用100元全部買公雞,則最多可買50只。1920程序舉例(三)#include<stdio.h>voidmain(){
printf("\t\t購(gòu)買方案\n");
printf("\t------------------------\n");
printf("\t母雞\t公雞\t小雞\n");
int
x,y,z,sum=0;for(x=1;x<=33;x++){for(y=1;y<=55;y++){z=100-x-y;
if((3*x+2*y+0.5*z)==100)printf("\t%d\t%d\t%d\n",x,y,z);
sum++;}}
printf(“\n方法一,程序總共運(yùn)行了d\n",sum);}
21程序舉例(四)
從鍵盤輸入一串字符,以ctrl+z(^z)表示輸入結(jié)束。統(tǒng)計(jì)其中包含的單詞個(gè)數(shù)、字母?jìng)€(gè)數(shù)、數(shù)字個(gè)數(shù)。規(guī)定單詞之間用一個(gè)空白符分開(這里的空白符包括空格符、水平制表符和換行符)。該題的關(guān)鍵是統(tǒng)計(jì)單詞的個(gè)數(shù),由于規(guī)定單詞之間用一個(gè)空白符分開,則問(wèn)題就變得很簡(jiǎn)單,只要統(tǒng)計(jì)空白符的個(gè)數(shù)就可以知道單詞的個(gè)數(shù)。22#include<stdio.h>voidmain(){charc;intalpha=0,num=0,ch=0,word=0;while((c=getchar())!=EOF)//EOF代表文本結(jié)束,鍵盤上對(duì)應(yīng)Ctrl+Z{if(c==''||c=='\t'||c=='\n')//當(dāng)字符是空白符時(shí)將word計(jì)數(shù)變量自增
word++;if(c>='a'&&c<='z'||c>='A'&&c<='Z')//當(dāng)字符是字母時(shí)將alpha計(jì)數(shù)變量自增
alpha++;elseif(c>='0'&&c<='9')//當(dāng)字符是數(shù)值時(shí)將num計(jì)數(shù)變量自增
num++;else//其他情況將ch計(jì)數(shù)變量自增
ch++;}
printf("字母數(shù)=%d\n",alpha);
prin
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 四川省資陽(yáng)市樂(lè)至中學(xué)2025屆高三第二次模擬考試語(yǔ)文試卷含解析
- 《屈原列傳》課件 2024-2025學(xué)年統(tǒng)編版高中語(yǔ)文選擇性必修中冊(cè)
- 2025屆云南省江城縣第一中學(xué)高三第三次模擬考試英語(yǔ)試卷含解析
- 2025屆甘肅省慶陽(yáng)六中高考全國(guó)統(tǒng)考預(yù)測(cè)密卷語(yǔ)文試卷含解析
- 四川大學(xué)附屬中學(xué)2025屆高三適應(yīng)性調(diào)研考試英語(yǔ)試題含解析
- 上海市浦東區(qū)2025屆高三下學(xué)期一??荚囌Z(yǔ)文試題含解析
- 韶關(guān)市重點(diǎn)中學(xué)2025屆高三第二次聯(lián)考語(yǔ)文試卷含解析
- 安徽省泗縣樊集中學(xué)2025屆高三下第一次測(cè)試語(yǔ)文試題含解析
- 2025屆成都市樹德中學(xué)高考全國(guó)統(tǒng)考預(yù)測(cè)密卷語(yǔ)文試卷含解析
- 2025屆遼寧省盤錦市二中高三第四次模擬考試英語(yǔ)試卷含解析
- 39 《出師表》對(duì)比閱讀-2024-2025中考語(yǔ)文文言文閱讀專項(xiàng)訓(xùn)練(含答案)
- 2024版小學(xué)五年級(jí)上冊(cè)心理健康模擬試卷
- 北斗衛(wèi)星導(dǎo)航系統(tǒng)構(gòu)成課件講解
- 2024年八年級(jí)道德與法治上冊(cè) 第四單元 維護(hù)國(guó)家利益 第八課 國(guó)家利益至上教案 新人教版
- YB-T+4190-2018工程用機(jī)編鋼絲網(wǎng)及組合體
- 簡(jiǎn)述光纖溫度傳感器的原理及應(yīng)用
- 義烏市建筑工程質(zhì)量通病防治措施100條(2022版本)
- 突發(fā)公共衛(wèi)生事件應(yīng)急培訓(xùn)課件
- 教科版四年級(jí)上冊(cè)科學(xué)期末測(cè)試卷及參考答案(完整版)
- 執(zhí)行信息屏蔽申請(qǐng)書
- 2024年共青團(tuán)團(tuán)??荚嚾雸F(tuán)考試題庫(kù)及答案
評(píng)論
0/150
提交評(píng)論