程序流程控制_第1頁(yè)
程序流程控制_第2頁(yè)
程序流程控制_第3頁(yè)
程序流程控制_第4頁(yè)
程序流程控制_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

28十二月20231程序流程控制4.1復(fù)合語(yǔ)句常用的語(yǔ)句有:說(shuō)明和定義(聲明)語(yǔ)句、表達(dá)式語(yǔ)句、流程控制語(yǔ)句和異常處理語(yǔ)句。將多條相關(guān)語(yǔ)句組合在一起,放在{}中,就形成了復(fù)合語(yǔ)句。右邊的}后不必再加上分號(hào)。[Return]4.2程序的執(zhí)行流程程序的執(zhí)行流程分:順序流程、分支流程和循環(huán)流程。順序流程就是按語(yǔ)句的順序一條一條地向下執(zhí)行。[Return]4.3分支流程在程序中加進(jìn)一個(gè)判斷條件,根據(jù)條件的不同值來(lái)確定執(zhí)行不同的操作。就構(gòu)成分支流程。參見(jiàn)P.51圖4.1。分支流程有if語(yǔ)句和switch語(yǔ)句。當(dāng)if…else嵌套時(shí),else總是和最近的一條if語(yǔ)句相匹配?!纠弧俊纠縖Return]例一:閏年是指年份能被4整除的那些年,但不包括年份能被100整除而不能被400整除的年。編寫(xiě)一個(gè)程序,判斷某一年是否為閏年。

#include<iostream.h>voidmain(){ intyear; cout<<"請(qǐng)輸入年份數(shù)字:"; cin>>year; cout<<"公元"<<year; if(year%100)//不能被100整除,相當(dāng)于year%100<>0 if(year%4)//不能被4整除 cout<<"年不是閏年。"<<endl; else cout<<"年是閏年。"<<endl; else//能被100整除 if(year%400)//不能被400整除 cout<<"年不是閏年。"<<endl; else cout<<"年是閏年。"<<endl;

}[return]例二:編寫(xiě)一個(gè)程序,將用戶(hù)輸入的數(shù)字(0-6)轉(zhuǎn)換成相應(yīng)的星期值輸出。如用戶(hù)輸入3,則程序輸出Wednesday,用戶(hù)輸入0,則輸出Sunday。

#include<iostream.h>voidmain(){ intweekday; cout<<"請(qǐng)輸入星期的阿拉伯?dāng)?shù)字(0-6,星期天為0):"; cin>>weekday;

switch(weekday) { case0: cout<<"Sunday"<<endl;break; case1: cout<<"Monday"<<endl;break; case2: cout<<"Tuesday"<<endl;break; case3: cout<<"Wednesday"<<endl;break; case4: cout<<"Thusday"<<endl;break; case5: cout<<"Friday"<<endl;break; case6: cout<<"Satday"<<endl;break;default: cout<<"表示星期的數(shù)字必須在0-6之間"<<endl;break; }}

[return]4.4循環(huán)流程循環(huán)流程提供重復(fù)處理的能力。4.4.1while語(yǔ)句4.4.2do…while語(yǔ)句4.4.3for循環(huán)[Return]4.4.1while語(yǔ)句一般形式為:while(條件表達(dá)式)循環(huán)體語(yǔ)句。參見(jiàn)圖4.2當(dāng)條件表達(dá)式永真時(shí),必須在語(yǔ)句中用break語(yǔ)句跳出循環(huán),否則陷入死循環(huán)。若條件表達(dá)式一開(kāi)始時(shí)就不成立,則循環(huán)體語(yǔ)句一次也不執(zhí)行。【例】

[return]用while循環(huán)編程求“水仙花數(shù)”#include<iostream.h>voidmain(){ inti=100,a,b,c;//從100開(kāi)始逐個(gè)試到999為止 while(i<1000){ a=i%10;//求得個(gè)位數(shù) b=((i-a)%100)/10;//求得十位數(shù) c=(i-a-b*10)/100;//求得百位數(shù) if(i==a*a*a+b*b*b+c*c*c)//若找到水仙花數(shù)則輸出 cout<<c<<"^3+"<<b<<"^3+"<<a<<"^3="<<i<<endl; i++;}}

[return]4.4.2do…while語(yǔ)句一般形式為:do循環(huán)體語(yǔ)句while(條件表達(dá)式);參見(jiàn)圖4.5先執(zhí)行循環(huán)體語(yǔ)句,然后再判斷條件表達(dá)式是否成立,因此循環(huán)體至少執(zhí)行一次,這是與while最大的不同之處?!纠縖return]用do…while編程求“水仙花數(shù)”#include<iostream.h>voidmain(){ inti=100,a,b,c;//從100開(kāi)始逐個(gè)試到999為止do { a=i%10;//求得個(gè)位數(shù) b=((i-a)%100)/10;//求得十位數(shù) c=(i-a-b*10)/100;//求得百位數(shù) if(i==a*a*a+b*b*b+c*c*c)//若找到水仙花數(shù)則輸出 cout<<c<<"^3+"<<b<<"^3+"<<a<<"^3="<<i<<endl; i++;}while(i<1000);

}[return]4.4.3for循環(huán)一般形式為:for(表達(dá)式一;表達(dá)式二;表達(dá)式三)循環(huán)體語(yǔ)句for后的表達(dá)式可以缺少一個(gè)或數(shù)個(gè),但分號(hào)不可缺一般在循環(huán)次數(shù)已知時(shí)使用for循環(huán)較方便三種循環(huán)方式在大多數(shù)情況下可互換【例】

[return]用for循環(huán)編程求“水仙花數(shù)”#include<iostream.h>voidmain(){ inta,b,c;//從100開(kāi)始逐個(gè)試到999為止for(inti=100;i<1000;i++) { a=i%10;//求得個(gè)位數(shù) b=((i-a)%100)/10;//求得十位數(shù) c=(i-a-b*10)/100;//求得百位數(shù) if(i==a*a*a+b*b*b+c*c*c)//若找到水仙花數(shù)則輸出 cout<<c<<"^3+"<<b<<"^3+"<<a<<"^3="<<i<<endl;

}}

[return]4.5設(shè)計(jì)舉例例4.21#include<iostream.h>voidmain(){ charch; intwordNum=0; cout<<"Pleaseinputasentence:\n"; do {//過(guò)濾空格 while((ch=cin.get())=='') ;//空語(yǔ)句(無(wú)循環(huán)體) if(ch==‘\n’)break;//如果是換行則結(jié)束循環(huán) while(ch!=‘’&&ch!=‘\n’)//讀入一個(gè)單詞

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論