C#的流程控制培訓(xùn)講義_第1頁
C#的流程控制培訓(xùn)講義_第2頁
C#的流程控制培訓(xùn)講義_第3頁
C#的流程控制培訓(xùn)講義_第4頁
C#的流程控制培訓(xùn)講義_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第五章C#的流程控制(三)流程控制的一般形式順序結(jié)構(gòu)控制、分支結(jié)構(gòu)控制、循環(huán)結(jié)構(gòu)控制循環(huán)結(jié)構(gòu)控制:使程序反復(fù)執(zhí)行某段語句,減少程序的重復(fù),加強(qiáng)處理數(shù)據(jù)的能力循環(huán)結(jié)構(gòu)程序的關(guān)鍵問題如何設(shè)置進(jìn)入循環(huán)的條件:循環(huán)控制條件如何設(shè)置循環(huán)體:需要反復(fù)執(zhí)行哪些操作循環(huán)結(jié)構(gòu)的程序需要通過一定的方式(語句)來實(shí)現(xiàn),從而完成對數(shù)據(jù)的循環(huán)操作處理固定次數(shù)的循環(huán)循環(huán)的次數(shù)是可以事先確定的非固定次數(shù)的循環(huán)循環(huán)的次數(shù)是不可以事先確定的C#的流程控制for語句用來實(shí)現(xiàn)固定次數(shù)的循環(huán)控制

for(循環(huán)控制變量=初始值;關(guān)系表達(dá)式;更新值){//循環(huán)體}(1)為循環(huán)控制變量賦初始值(通常為整型或字符型)(2)關(guān)系表達(dá)式的目的是給出當(dāng)循環(huán)控制變量的值在什么范圍時進(jìn)行循環(huán)。判斷關(guān)系表達(dá)式的值,如果該值為true則執(zhí)行循環(huán)體;否則終止for循環(huán)(3)更新循環(huán)控制變量的值,回到第2步C#的流程控制:循環(huán)結(jié)構(gòu)控制固定次數(shù)循環(huán)for語句for語句用來實(shí)現(xiàn)固定次數(shù)的循環(huán)控制for(;;){//循環(huán)體break;continue;}死循環(huán)break:強(qiáng)行跳出循環(huán)體continue:強(qiáng)行結(jié)束本次循環(huán),進(jìn)入下一次循環(huán)C#的流程控制:循環(huán)結(jié)構(gòu)控制固定次數(shù)循環(huán)for語句[例]求S=1+2+3+…+100intsum=0;for(inti=1;i<=100;i++)sum+=i;Console.WriteLine(sum);Console.ReadLine();sum=0;for(inti=100;i>=1;i--)sum+=i;Console.WriteLine(sum);Console.ReadLine();C#的流程控制:循環(huán)結(jié)構(gòu)控制固定次數(shù)循環(huán)for語句舉例[例]求S=1+1/2+1/3+…+1/nfloatsum=0;floatn;n=float.Parse(Console.ReadLine());for(inti=1;i<=n;i++)sum=sum+1/(float)i;Console.WriteLine(sum);特點(diǎn):對循環(huán)控制變量加工后再使用C#的流程控制:循環(huán)結(jié)構(gòu)控制固定次數(shù)循環(huán)for語句舉例[例]求S=1+1/1!+1/2!+1/3!+…+1/n!floatsum=1,s=1;floatn;n=float.Parse(Console.ReadLine());for(inti=1;i<=n;i++){s*=i;sum=sum+1/s;}Console.WriteLine(sum);循環(huán)體中有多條語句C#的流程控制:循環(huán)結(jié)構(gòu)控制固定次數(shù)循環(huán)for語句舉例[例]給國際象棋發(fā)明者的獎勵,計(jì)算應(yīng)給多少糧食獎勵方案:棋盤的第一格中放一粒米,第二格中放2粒,第三格中放4粒,第四格中放8粒…思路:循環(huán)控制條件:1至64,反復(fù)64次循環(huán)體:不斷計(jì)算累計(jì)和C#的流程控制:循環(huán)結(jié)構(gòu)控制固定次數(shù)循環(huán)應(yīng)用舉例[例]求n個隨機(jī)數(shù)的最大數(shù)和最小數(shù)問題思路:循環(huán)控制條件:1至n,反復(fù)n次求解策略:通過“打擂臺”方式找最大數(shù)和最小數(shù)特點(diǎn):初始擂主值的設(shè)定最大數(shù)單元設(shè)置為一個較小數(shù)最小數(shù)單元設(shè)置為一個較大數(shù)C#的流程控制:循環(huán)結(jié)構(gòu)控制固定次數(shù)循環(huán)應(yīng)用舉例[例]簡單統(tǒng)計(jì):分類匯總。隨機(jī)生成N名學(xué)生的成績和性別,分別計(jì)算男女生的平均成績。思路:循環(huán)控制條件:1至n,反復(fù)n次循環(huán)體:根據(jù)不同性別,不斷分別計(jì)算累計(jì)和在哪里計(jì)算平均成績?特點(diǎn):循環(huán)結(jié)構(gòu)中套分支結(jié)構(gòu)對性別數(shù)據(jù)的輸出處理TabControl控件Tabpages屬性C#的流程控制:循環(huán)結(jié)構(gòu)控制固定次數(shù)循環(huán)應(yīng)用舉例[作業(yè)]簡簡單統(tǒng)計(jì)::頻數(shù)統(tǒng)計(jì)計(jì)。從5個個侯選人中中選舉一名名班長。5個侯選人人的代號為為1、2、、3、4、、5。每個個投票人只只能投1票票。如果輸輸入大于5或小于0的,則為為廢票。分分別統(tǒng)計(jì)5個侯選人人的得票數(shù)數(shù),以及費(fèi)費(fèi)費(fèi)票數(shù)。。要求:隨機(jī)產(chǎn)生n個數(shù)據(jù)記錄原始數(shù)數(shù)據(jù)輸出最后的的統(tǒng)計(jì)數(shù)據(jù)據(jù)[作業(yè)]找找到3名百百米跑選手手中冠軍的的成績和學(xué)學(xué)號解題思路::求最小數(shù)數(shù)問題;保保存數(shù)據(jù)項(xiàng)項(xiàng):成績、、學(xué)號要求:記錄所有原原始數(shù)據(jù)輸出冠軍的的成績和學(xué)學(xué)號C#的流流程控制::循環(huán)結(jié)構(gòu)構(gòu)控制固定定次數(shù)循環(huán)環(huán)應(yīng)應(yīng)用舉例while語句while(條件表表達(dá)式){//循循環(huán)環(huán)體}首先計(jì)算條條件表達(dá)式式,如果該該表達(dá)式的的結(jié)果為true,,則執(zhí)行循循環(huán)體再重新計(jì)算算條件表達(dá)達(dá)式,如果果該表達(dá)式式的結(jié)果仍仍然為true,則則再次執(zhí)行行循環(huán)體,,否則跳出出循環(huán)循環(huán)體可能能被執(zhí)行0次或多次次循環(huán)體中應(yīng)應(yīng)有能夠改改變循環(huán)控控制條件的的語句可以在循環(huán)環(huán)體中使用用break或continue結(jié)結(jié)束循環(huán)或或直接進(jìn)入入下一次循循環(huán)C#的流流程控制::循環(huán)結(jié)構(gòu)構(gòu)控制非固固定次數(shù)循循環(huán)Do…while語句do{//循循環(huán)環(huán)體}while(條件表表達(dá)式)首先執(zhí)行一一次循環(huán)體體計(jì)算條件條條件表達(dá)式式,如果該該表達(dá)式的的結(jié)果為true,,則再次執(zhí)執(zhí)行循環(huán)體體,否則跳跳出循環(huán)循環(huán)體至少少被執(zhí)行1次循環(huán)體中應(yīng)應(yīng)有能夠改改變循環(huán)控控制條件的的語句可以在循環(huán)環(huán)體中使用用break或continue結(jié)結(jié)束循環(huán)或或直接進(jìn)入入下一次循循環(huán)C#的流流程控制::循環(huán)結(jié)構(gòu)構(gòu)控制非固固定次數(shù)循循環(huán)[例]中國國人口基數(shù)數(shù)13億,,自然增長長率為1.1%;印印度人口基基數(shù)為8.5億,自自然增長率率為2.2%。計(jì)算算印度人口口幾年后趕趕上中國人人口思路:循環(huán)控制條條件:印度度人口小于于中國人口口時,循環(huán)環(huán)次數(shù)不能能事先確定定求解策略::逐年計(jì)算算兩國的人人口數(shù),并并累計(jì)年數(shù)數(shù)特點(diǎn):體會不同語語句的用法法和含義循環(huán)控制條條件的改變變方式:隱隱含C#的流流程控制::循環(huán)結(jié)構(gòu)構(gòu)控制非固固定次數(shù)循循環(huán)應(yīng)用舉例例s=0;for(inti=1;i<=5;i++)s=+i;C#的的流程控控制:循循環(huán)結(jié)構(gòu)構(gòu)控制固固定次數(shù)數(shù)與非固固定次數(shù)數(shù)循環(huán)的的轉(zhuǎn)換s=0;inti=1;do{s+=i;i++;}while(i<=5);s=0;inti=1;while(i<=5){s+=i;i++;}什么是多多重循環(huán)環(huán)如果一個個循環(huán)結(jié)結(jié)構(gòu)的循循環(huán)體中中又嵌套套了另一一個循環(huán)環(huán)結(jié)構(gòu),,則該結(jié)結(jié)構(gòu)稱為為循環(huán)嵌嵌套,是是一個多多重循環(huán)環(huán)程序例如:5名男生生和7名名女生跳跳舞,輸輸出所有有組對情情況for(inti=1;i<=5;i++)for(intj=1;j<=7;j++)Console.WriteLine("男{0}女女{1}",i,j);C#的的流程控控制:循循環(huán)結(jié)構(gòu)構(gòu)控制多多重循環(huán)環(huán)執(zhí)行順序序:如果外層層循環(huán)次次數(shù)為n,內(nèi)重重循環(huán)次次數(shù)為m,則::外層循循環(huán)每執(zhí)執(zhí)行一次次,內(nèi)層層循環(huán)都都執(zhí)行m。共執(zhí)執(zhí)行n××m次書寫規(guī)則則:內(nèi)外循環(huán)環(huán)控制變變量不能能夠重名名內(nèi)層循環(huán)環(huán)必須寫寫在外重重循環(huán)的的內(nèi)部,,內(nèi)外重重循環(huán)不不能夠騎騎跨[例]****************************************************思路:利用雙重重循環(huán)的的程序結(jié)結(jié)構(gòu)特點(diǎn):雙重循環(huán)環(huán)的控制制技巧(次數(shù)控控制)[練習(xí)]求S=1+1/1!+1/2!+1/3!+……+1/n!C#的的流程控控制:循循環(huán)結(jié)構(gòu)構(gòu)控制多多重循環(huán)環(huán)應(yīng)用舉舉例for(inti=1;i<=10;i++){for(intk=1;k<=10-i;k++)Console.Write('');for(intj=1;j<=2*i-1;j++)Console.Write('*');Console.WriteLine();}[例]百百錢百雞雞問題::雞翁一一、值錢錢五;雞雞婆一、、值錢三三;雞雛雛三、值值錢一;;百錢買買百雞,,問雞翁翁、雞婆婆、雞雛雛各幾??分析:雞雞翁最多多20只只,雞婆婆最多33只,,雞雛最最多300只。。采用窮窮舉法,,考察每每種可能能,是否否滿足百百錢買百百雞。intcock=20,hen=33,chicken=300;for(inti=0;i<=cock;i++){for(intj=0;j<=hen;j++)for(k=0;k<=chicken;k++)if(i+j+k==100&&(5*i+3*j+k/3)==100&&k%3==0)Console.WriteLine("cook={0}hen={1}chicken={2}",i,j,k);}Console.ReadLine();C#的的流程控控制:循循環(huán)結(jié)構(gòu)構(gòu)控制多多重循環(huán)環(huán)應(yīng)用舉舉例[作業(yè)]上課遲遲到問題題。在期期末考試試成績中中扣除遲遲到得分分遲到第1次扣1分;第第2次扣扣2分;;第3次次扣4分分;第4次扣8分…..問遲遲到多少少次,即即使期末末考試得得100分,總總分也不不及格思路:循環(huán)控制制條件::總分大

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論