第五講第六講-流程控制_第1頁(yè)
第五講第六講-流程控制_第2頁(yè)
第五講第六講-流程控制_第3頁(yè)
第五講第六講-流程控制_第4頁(yè)
第五講第六講-流程控制_第5頁(yè)
已閱讀5頁(yè),還剩28頁(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)介

C#語(yǔ)言程序設(shè)計(jì)基礎(chǔ)——流程控制第五講C#的流程控制流程控制的基礎(chǔ)條件控制結(jié)構(gòu)ifif/elseif/elseif/elseswitch循環(huán)控制結(jié)構(gòu)forforeachwhile、do-while(了解)跳轉(zhuǎn)語(yǔ)句break、continue、return流程控制的基礎(chǔ)-說(shuō)明程序語(yǔ)言撰寫的程序代碼大部分是一列程序代碼接著一列程序代碼來(lái)循序的執(zhí)行,但是對(duì)于復(fù)雜工作,為了達(dá)成預(yù)期的執(zhí)行結(jié)果,需要使用「流程控制結(jié)構(gòu)」(ControlStructures)來(lái)更改執(zhí)行的流程。流程控制結(jié)構(gòu)是使用條件判斷,來(lái)決定執(zhí)行方向或是否繼續(xù)執(zhí)行指定的程序區(qū)塊,換句話說(shuō),程序設(shè)計(jì)者可以使用條件來(lái)控制程序碼的執(zhí)行,以便達(dá)成程序所需的執(zhí)行結(jié)果。流程控制的基礎(chǔ)-種類條件控制:條件控制是一個(gè)選擇題,可能為單一選擇或多選一,依照條件表達(dá)式的結(jié)果,可以決定執(zhí)行哪一個(gè)區(qū)塊的程序代碼。如同從學(xué)校或公司走路回家,因?yàn)榛丶业穆凡恢灰粭l,當(dāng)走到十字路口時(shí)可以決定向左、向右或直走,雖然最終都會(huì)到家,但是經(jīng)過(guò)路徑長(zhǎng)度就不相同。循環(huán)控制:循環(huán)控制是重復(fù)執(zhí)行區(qū)塊的程序代碼,擁有結(jié)束條件,可以結(jié)束循環(huán)的執(zhí)行。它有如馬路上的圓環(huán),車子可以一直環(huán)繞著圓環(huán)行走,車子可以隨興蹺幾圈或決定是否離開(kāi)圓環(huán),進(jìn)入圓環(huán)是進(jìn)入循環(huán),離開(kāi)圓環(huán)就是離開(kāi)循環(huán)。流程控制的基礎(chǔ)-程序區(qū)塊程序區(qū)塊(Blocks)是一種最簡(jiǎn)單的結(jié)構(gòu)敘述,它的目的只是將零到多列的程序敘述組合成一個(gè)群組,所以也稱為「結(jié)合敘述」(CompoundStatements)。我們可以將整個(gè)程序區(qū)塊視為一列程序敘述,以結(jié)構(gòu)化程序設(shè)計(jì)來(lái)說(shuō),程序區(qū)塊就是最簡(jiǎn)單的模塊,其語(yǔ)法如下所示:{

…………

程序敘述;

…………}條件控制結(jié)構(gòu)if是否選條件敘述if/else二選一條件敘述if/else/if多選一條件敘述switch多選一條件敘述if是否選條件敘述-說(shuō)明if條件敘述是一種是否執(zhí)行的單選題,只是決定是否執(zhí)行程序區(qū)塊內(nèi)的程序代碼,如果條件表達(dá)式的結(jié)果為true,就執(zhí)行之后的程序區(qū)塊。例如:判斷學(xué)生成績(jī)是否及格,如下所示:if(score>=60){Response.Write(name+"成績(jī)及格!");Response.Write("學(xué)生成績(jī):"+score+"<br/>");}if是否選條件敘述-流程圖falsetrue條件敘述結(jié)束score>=60條件敘述開(kāi)始執(zhí)行程序代碼if/else二選一條件敘述-說(shuō)明如果條件是擁有排它情況的2個(gè)程序區(qū)塊,只能二選一,我們可以加上else關(guān)鍵詞。如果if條件為true,就執(zhí)行else之前的程序區(qū)塊;false執(zhí)行else之后的程序區(qū)塊。例如:使用身高來(lái)判斷購(gòu)買全票,還是半票,如下所示:if(length>120){

Console.WriteLine(name+"購(gòu)買全票!<br/>");}else{

Console.WriteLine(name+"購(gòu)買半票!<br/>");}if/else二選一條件敘述-流程圖條件敘述結(jié)束length>120條件敘述開(kāi)始執(zhí)行程序代碼(一)falsetrue執(zhí)行程序代碼(二)if/else/if多選一一條件件敘述述-說(shuō)明所謂多多選一一條件件敘述述,可可以依依照條條件來(lái)來(lái)執(zhí)行行多個(gè)個(gè)不同同區(qū)塊塊的程程序代代碼。。C#語(yǔ)言的的多條條件敘敘述有有2種寫寫法法,,如如下下所所示示::if/else條件件的的擴(kuò)擴(kuò)充充。。switch多選選一一條條件件敘敘述述。。if/else/if多選選一一條條件件敘敘述述-說(shuō)明明if/else/if多選選一一條條件件敘敘述述是是if/else條件件的的擴(kuò)擴(kuò)充充,,只只需需重重復(fù)復(fù)使使用用if/else條件件,,就就可可以以建建立立多多選選一一條條件件敘敘述述。。例例如如::使使用用年年齡齡判判斷斷搭搭乘乘公公交交車車的的乘乘客客票票價(jià)價(jià)是是學(xué)學(xué)生生、、普普通通或或敬敬老老票票,,如如下下所所示示::if(age<=18){str="學(xué)生生票票::12元<br>";}else{if(age>=65){str="敬老老票票::8元<br>";}else{str="普通通票票::15元<br>";}}if/else/if多選選一一條條件件敘敘述述-流程程圖圖switch多選選一一條條件件敘敘述述-說(shuō)明明1C#語(yǔ)言言的的另另一一種種多多選選一一條條件件敘敘述述是是switch多條條件件敘敘述述,,它它是是依依照照符符合合的的條條件件執(zhí)執(zhí)行行不不同同程程序序區(qū)區(qū)塊塊的的程程序序代代碼碼,,例例如如::學(xué)學(xué)生生成成績(jī)績(jī)是是使使用用GPA的A、B、C、D來(lái)打打成成績(jī)績(jī),,我我們們可可以以使使用用switch條件件敘敘述述來(lái)來(lái)顯顯示示轉(zhuǎn)轉(zhuǎn)換換的的成成績(jī)績(jī)范范圍圍,,如如下下所所示示::switch(grade){case'A':str="超過(guò)過(guò)80分<br>";break;case'B':str="70~79分<br>";break;case'C':str="60~69分<br>";break;default:str="低于于60分<br>";break;}switch多選選一一條條件件敘敘述述-流程程圖圖switch多選選一一條條件件敘敘述述-流程程圖圖注意意::使使用用switch語(yǔ)句句必必須須要要非非常常的的謹(jǐn)謹(jǐn)慎慎只能針對(duì)對(duì)基本數(shù)數(shù)據(jù)類型型使用switch,比如int和string類型。case標(biāo)簽后面面只能是是常量或或常量表表達(dá)式case標(biāo)簽必須須是唯一一性的,,不允許許多個(gè)case使用相同同的常量量或常量量表達(dá)式式。循環(huán)控制制結(jié)構(gòu)for循環(huán)敘述述foreach/in循環(huán)敘述述前測(cè)式while循環(huán)敘述述后測(cè)式do/while循環(huán)敘述述for循環(huán)敘述述-說(shuō)明C#語(yǔ)言的for循環(huán)稱為為「計(jì)數(shù)數(shù)循環(huán)」」(CountingLoop),這是是一種簡(jiǎn)簡(jiǎn)化的while循環(huán),可可以重復(fù)復(fù)執(zhí)行固固定次數(shù)數(shù)的程序序區(qū)塊。。在for循環(huán)預(yù)設(shè)設(shè)擁有一一個(gè)計(jì)數(shù)數(shù)器,計(jì)計(jì)數(shù)器每每次增加加或減少少一個(gè)值值,直到到for循環(huán)的結(jié)結(jié)束條件件成立為為止,例例如:計(jì)計(jì)算1加到15的總和,,每次增增加1,如下所所示:for(i=1;i<=15;i++){Console.WriteLine(i+"");total+=i;}for循環(huán)敘述述-流程圖for循環(huán)敘述述-說(shuō)明課堂練習(xí)習(xí):(1)1+3+……+99;(2)1+2+4+8+………+128+256;(3)求n?。?)輸入一一整數(shù)A,判斷它它是否質(zhì)質(zhì)數(shù)。(5)求水仙仙花數(shù)。。所謂水水仙花數(shù)數(shù),是指指一個(gè)三三位數(shù)abc,如果滿滿足a^3+b^3+c^3=abc,則abc是水仙花花數(shù)。(6)編寫一個(gè)個(gè)評(píng)分程程序,接接受用戶戶輸入10個(gè)該選手手的得分分(0-10分),然后去去掉一個(gè)個(gè)最高分分和一個(gè)個(gè)最低分分,求出出某選手手的最后后得分(平均分)嵌套循環(huán)環(huán)循環(huán)控控制結(jié)構(gòu)構(gòu)for嵌套循環(huán)while與do/while嵌套循環(huán)環(huán)敘述for嵌套循環(huán)for嵌套循環(huán)環(huán)是在for循環(huán)中擁?yè)碛衅渌鹒or循環(huán),循環(huán)環(huán)如同巢狀狀一般的層層層排列,,如下所示示:for(i=1;i<=9;i++){for(j=1;j<=9;j++){………}}上述循環(huán)共共有兩層,,第一層循循環(huán)執(zhí)行9次,第二層層循環(huán)也執(zhí)執(zhí)行9次,兩層循循環(huán)共執(zhí)行行81次。for嵌套循環(huán)課堂小練習(xí)習(xí):(1)輸出如下下圖形******打印如下圖圖案:1222(2)找出200到300之間的素?cái)?shù)數(shù)(3)編程計(jì)算s=1!+2!+3!+...+10!(4)輸出九九九乘法表for嵌套循環(huán)課堂小練習(xí)習(xí):(5)“百錢買百百雞”是我我國(guó)古代的的著名數(shù)學(xué)學(xué)題。題目目這樣描述述:3文錢可以買買1只公雞,2文錢可以買買一只母雞雞,1文錢可以買買3只小雞。用用100文錢買100只雞,那么么各有公雞雞、母雞、、小雞多少少只?與之之相似,有有"雞兔同籠"問(wèn)題。for嵌套循環(huán)自己試一試試:某動(dòng)物飼養(yǎng)養(yǎng)中心用1700元專款購(gòu)買買小狗(每只31元)和小貓(每只21元)兩種小動(dòng)物物。要求專??顚S?正好用完,應(yīng)當(dāng)如何購(gòu)購(gòu)買?請(qǐng)輸出所有有方案。for嵌套循環(huán)課堂小練習(xí)習(xí):(6)宰相的麥子子:相傳古古印度宰相相達(dá)依爾,,是國(guó)際象象棋的發(fā)明明者。有一一次,國(guó)王王因?yàn)樗牡呢暙I(xiàn)要獎(jiǎng)獎(jiǎng)勵(lì)他,問(wèn)問(wèn)他想要什什么。達(dá)依依爾說(shuō):““只要在國(guó)國(guó)際象棋棋棋盤上(共共64格)擺上這這么些麥子子就行了::第一格一一粒,第二二格兩粒,,……,后面一格格的麥子總總是前一格格麥子數(shù)的的兩倍,擺擺滿整個(gè)棋棋盤,我就就感恩不盡盡了?!眹?guó)國(guó)王一想,,這還不容容易,剛想想答應(yīng),如如果你這時(shí)時(shí)在國(guó)王旁旁邊站著,,你會(huì)不會(huì)會(huì)勸國(guó)王別別答應(yīng),為為什么?編編程求所需需麥子的個(gè)個(gè)數(shù)(設(shè)1立方米麥子子約跳出與繼續(xù)續(xù)循環(huán)break關(guān)鍵詞中斷斷循環(huán)continue關(guān)鍵詞繼續(xù)續(xù)循環(huán)return關(guān)鍵字break關(guān)鍵詞中斷斷循環(huán)循環(huán)如果尚尚未到達(dá)結(jié)結(jié)束條件,,我們可以以使用break關(guān)鍵詞強(qiáng)迫迫跳出循環(huán)環(huán)。例如::使用break關(guān)鍵詞來(lái)結(jié)結(jié)束for循環(huán)的執(zhí)行行,如下所所示:for(i=1;i<=100;i++){total+=i;if(i==j){break;}}break關(guān)鍵詞中斷斷循環(huán)示例:(1)隨即產(chǎn)生生數(shù)組,直直到遇到50為止(2)有一個(gè)三三位數(shù),它它的各位數(shù)數(shù)字之和的的11倍恰好等于于它自身,,請(qǐng)編程求求出這個(gè)三三位數(shù)。continue關(guān)鍵詞繼續(xù)續(xù)循環(huán)continue關(guān)鍵詞可以以馬上繼續(xù)續(xù)下一次循循環(huán)的執(zhí)行行,而不執(zhí)執(zhí)行程序區(qū)區(qū)塊位在continue關(guān)鍵詞后的的程序代碼碼。如果使使用在for循環(huán),一樣樣會(huì)更新計(jì)計(jì)數(shù)器變量量。例如::使用continue關(guān)鍵詞馬上上繼續(xù)下一一次while循環(huán)的執(zhí)行行,如下所所示:while(i<100){i+=1;if(i%2==0){continue;}total+=i;}continue語(yǔ)句練習(xí):設(shè)計(jì)一個(gè)猜猜數(shù)游戲,,由計(jì)算機(jī)機(jī)隨機(jī)出一一個(gè)1到100以內(nèi)的整數(shù)數(shù),讓你猜猜。如果你你猜

溫馨提示

  • 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)論