版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第六章循環(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語句(一)break語句兩種用途:1.終止switch語句中的case語句,保證多路分支情況的正確執(zhí)行2.強(qiáng)迫程序退出一個循環(huán),跳過正常的循環(huán)條件測試5break語句(二)break語句通常在循環(huán)中與條件語句一起使用。若條件值為真,將跳出循環(huán),控制流轉(zhuǎn)向循環(huán)后面的語句在多層循環(huán)中,一個break語句只向外跳一層6跳出
for循環(huán)inti;for(i=0;i<100;i++;){if(i==10)//當(dāng)i等于10時退出整個循環(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語句(三)跳出
do-while循環(huán)do{if(x==10)
break;}while(x<15);8continue語句(一)continue
語句的作用是跳過循環(huán)體中剩余的語句而執(zhí)行下一次循環(huán)9跳出
for循環(huán)inti;for(i=0;i<100;i++;){if(i==10)//當(dāng)i等于10時退出本次循環(huán)
continue;printf("%4d",i);}printf("\n",i);}
Continue示例10break與continue的區(qū)別while(…){
…………
break;
…………}跳出整個循環(huán)while(…){
…………continue;
…………}繼續(xù)下一次循環(huán)11循環(huán)嵌套在一個循環(huán)體內(nèi)又包含了一個完整的循環(huán)結(jié)構(gòu)時,稱為循環(huán)語句的嵌套。只有在內(nèi)循環(huán)完全結(jié)束后,外循環(huán)才會進(jìn)行下一趟。嵌套循環(huán)的語法while(i<=10){...while(i<=j){......}...}外循環(huán)內(nèi)循環(huán)12循環(huán)嵌套示例(一)
在屏幕打印由星號構(gòu)成的5行10列的矩形圖形13
在屏幕打印由星號構(gòu)成的5行10列的矩形圖形#include<stdio.h>voidmain(){inti,j;for(i=0;i<5;i++) //打印5行
{ for(j=0;j<10;j++) //每行打印10個星號
{ printf("*"); } printf("\n");//打印完一行星號后輸出一個換行符
}}循環(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)中,一個break語句只向外跳一層。17程序舉例(一)百錢買百雞問題。假設(shè)小雞每只5角,公雞每只2元,母雞每只3元?,F(xiàn)在有100元錢要求買100只雞,請編程列出所有可能的購雞方案。設(shè)母雞、公雞和小雞各為x、y、z只,根據(jù)題目要求,可以列出方程為方程有3個未知量,故有無窮多解。,在計算機(jī)中可以使用“窮舉法”(也稱枚舉法)來求解。即,將可能出現(xiàn)的各種情況一一測試,判斷是否滿足條件。18程序舉例(二)#include<stdio.h>voidmain(){
printf("\t\t購買方案\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)行速度,對程序要考慮優(yōu)化問題。對于多重循環(huán),可以提高速度的優(yōu)化選項中需要考慮的因素如下:盡量利用已給出的條件,減少循環(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);同時每種雞循環(huán)次數(shù)不必到100,因為還要滿足總價格為100元的關(guān)系。因此,假如100元買母雞最多能買100/3=33只,而如果用100元全部買公雞,則最多可買50只。1920程序舉例(三)#include<stdio.h>voidmain(){
printf("\t\t購買方案\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)計其中包含的單詞個數(shù)、字母個數(shù)、數(shù)字個數(shù)。規(guī)定單詞之間用一個空白符分開(這里的空白符包括空格符、水平制表符和換行符)。該題的關(guān)鍵是統(tǒng)計單詞的個數(shù),由于規(guī)定單詞之間用一個空白符分開,則問題就變得很簡單,只要統(tǒng)計空白符的個數(shù)就可以知道單詞的個數(shù)。22#include<stdio.h>voidmain(){charc;intalpha=0,num=0,ch=0,word=0;while((c=getchar())!=EOF)//EOF代表文本結(jié)束,鍵盤上對應(yīng)Ctrl+Z{if(c==''||c=='\t'||c=='\n')//當(dāng)字符是空白符時將word計數(shù)變量自增
word++;if(c>='a'&&c<='z'||c>='A'&&c<='Z')//當(dāng)字符是字母時將alpha計數(shù)變量自增
alpha++;elseif(c>='0'&&c<='9')//當(dāng)字符是數(shù)值時將num計數(shù)變量自增
num++;else//其他情況將ch計數(shù)變量自增
ch++;}
printf("字母數(shù)=%d\n",alpha);
prin
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建師范大學(xué)《生涯發(fā)展與輔導(dǎo)》2023-2024學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《管理信息系統(tǒng)實(shí)驗》2022-2023學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《地球概論》2021-2022學(xué)年第一學(xué)期期末試卷
- 2024秋國家開放大學(xué)《外國文學(xué)》形考任務(wù)1-4答案
- 健康知識大宣傳專項行動工作方案
- 安全生產(chǎn)標(biāo)準(zhǔn)化評審問題整改計劃表
- 中班幼兒線描畫教學(xué)總結(jié)
- 茶水間5S管理現(xiàn)場執(zhí)行標(biāo)準(zhǔn)表
- 小班學(xué)期末成果匯報活動方案
- 2024屆云南省文山市第二學(xué)期期末考試高三數(shù)學(xué)試題試卷
- 成人重癥患者人工氣道濕化護(hù)理專家共識
- 城市客運(yùn)自動駕駛示范應(yīng)用專題調(diào)研報告 2022
- 突發(fā)事件應(yīng)急處理知識培訓(xùn)
- 2024年中國教育部留學(xué)服務(wù)中心招聘筆試沖刺題含答案解析
- 2023年藥店店員專業(yè)基礎(chǔ)知識測試題及答案(一)
- 人工智能概論-人工智能概述
- 2024年道路交通安全知識答題(試題及答案)
- 小學(xué)教學(xué)教學(xué)大綱
- 運(yùn)輸公司安全生產(chǎn)方針和目范本
- 私有云平臺搭建從入門到通
- 盤扣式落地外腳手架施工方案
評論
0/150
提交評論