![C語言程序設(shè)計(jì)(第三版)課件:學(xué)生成績統(tǒng)計(jì)分析-循環(huán)結(jié)構(gòu)程序設(shè)計(jì)_第1頁](http://file4.renrendoc.com/view8/M03/35/06/wKhkGWcA6aiAKiNmAAM-gz1s6LQ017.jpg)
![C語言程序設(shè)計(jì)(第三版)課件:學(xué)生成績統(tǒng)計(jì)分析-循環(huán)結(jié)構(gòu)程序設(shè)計(jì)_第2頁](http://file4.renrendoc.com/view8/M03/35/06/wKhkGWcA6aiAKiNmAAM-gz1s6LQ0172.jpg)
![C語言程序設(shè)計(jì)(第三版)課件:學(xué)生成績統(tǒng)計(jì)分析-循環(huán)結(jié)構(gòu)程序設(shè)計(jì)_第3頁](http://file4.renrendoc.com/view8/M03/35/06/wKhkGWcA6aiAKiNmAAM-gz1s6LQ0173.jpg)
![C語言程序設(shè)計(jì)(第三版)課件:學(xué)生成績統(tǒng)計(jì)分析-循環(huán)結(jié)構(gòu)程序設(shè)計(jì)_第4頁](http://file4.renrendoc.com/view8/M03/35/06/wKhkGWcA6aiAKiNmAAM-gz1s6LQ0174.jpg)
![C語言程序設(shè)計(jì)(第三版)課件:學(xué)生成績統(tǒng)計(jì)分析-循環(huán)結(jié)構(gòu)程序設(shè)計(jì)_第5頁](http://file4.renrendoc.com/view8/M03/35/06/wKhkGWcA6aiAKiNmAAM-gz1s6LQ0175.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
知識(shí)目標(biāo):
掌握C語言的基本循環(huán)結(jié)構(gòu);深刻理解goto語句和if語句構(gòu)成的循環(huán)、while語句、do-while語句、和for語句之間的區(qū)別及使用方法;理解各種循環(huán)之間的相同點(diǎn)和不同點(diǎn)。能力目標(biāo):能正確設(shè)計(jì)“學(xué)生成績管理系統(tǒng)”中學(xué)生成績的統(tǒng)計(jì)和循環(huán)結(jié)構(gòu)程序的設(shè)計(jì)。學(xué)生成績統(tǒng)計(jì)分析-循環(huán)結(jié)構(gòu)程序設(shè)計(jì)工作任務(wù)任務(wù)1
學(xué)生成績統(tǒng)計(jì)分析——總分、平均分的計(jì)算
循環(huán)結(jié)構(gòu)是程序中一種很重要的結(jié)構(gòu),其特點(diǎn)是在判定條件成立時(shí),反復(fù)執(zhí)行某程序段,直到條件成立為止。所給的判定條件稱為循環(huán)條件,反復(fù)執(zhí)行的程序段稱為循環(huán)體。它主要處理如學(xué)校學(xué)生成績,求若干個(gè)數(shù)的和,求一個(gè)數(shù)的階乘等等。C語言提供了多種循環(huán)語句以實(shí)現(xiàn)各種不同形式的循環(huán)結(jié)構(gòu)。循環(huán)語句有g(shù)oto語句和if語句構(gòu)成的循環(huán)、while語句、do-while語句和for語句。并且各個(gè)語句之間還可以進(jìn)行嵌套使用?!皩W(xué)生成績管理系統(tǒng)”中我們需要給學(xué)生的成績進(jìn)計(jì)算,其中將用到循環(huán)語句。但是在對各種信息進(jìn)行處理時(shí),將有多種循環(huán)結(jié)構(gòu)供我們選擇,那么我們要根據(jù)實(shí)際情況選擇適合的循環(huán)結(jié)構(gòu)任務(wù)2
用循環(huán)語句實(shí)現(xiàn)項(xiàng)目主菜單的選擇執(zhí)行設(shè)計(jì)任務(wù)目標(biāo):能設(shè)計(jì)“班級(jí)學(xué)生成績管理系統(tǒng)”中所涉及到的多種循環(huán)結(jié)構(gòu)。
學(xué)生成績管理系統(tǒng)中有很多程序的語句是從上至下地被執(zhí)行的。程序的控制結(jié)構(gòu)在本系統(tǒng)中占有很大一部分,因此如何在本系統(tǒng)中采用合適的邏輯控制結(jié)構(gòu),選擇合適的循環(huán)結(jié)構(gòu),是設(shè)計(jì)的重點(diǎn)。1.1任務(wù)情境
“班級(jí)學(xué)生成績管理系統(tǒng)”中該項(xiàng)目實(shí)現(xiàn)如果輸入0~3之間的整型數(shù)字,將在屏幕上顯示學(xué)生的總成績和平均成績。具體如圖5-1所示。本任務(wù)的主要內(nèi)容是對總分和平均分的計(jì)算,那么用什么方法才是得當(dāng),簡便又利于計(jì)算呢,這是本次任務(wù)需要掌握的要點(diǎn)。分?jǐn)?shù)的計(jì)算是有規(guī)律、需要重復(fù)執(zhí)行某些操作的。因此利用循環(huán)語句是最好的選擇。1.2知識(shí)必備
循環(huán)結(jié)構(gòu)是程序中一種很重要的結(jié)構(gòu)。其特點(diǎn)是,在給定條件成立時(shí),反復(fù)執(zhí)行某程序段,直到條件不成立為止。給定的條件稱為循環(huán)條件,反復(fù)執(zhí)行的程序段稱為循環(huán)體。C語言提供了多種循環(huán)語句,可以組成各種不同形式的循環(huán)結(jié)構(gòu)。用goto語句和if語句構(gòu)成循環(huán);
goto語句以及用goto語句構(gòu)成循環(huán)
goto語句是一種無條件轉(zhuǎn)移語句,與BASIC中的goto語句相似。goto語句的使用格式為:goto語句標(biāo)號(hào);其中標(biāo)號(hào)是一個(gè)有效的標(biāo)識(shí)符,這個(gè)標(biāo)識(shí)符加上一個(gè)“:”一起出現(xiàn)在函數(shù)內(nèi)某處,執(zhí)行g(shù)oto語句后,程序?qū)⑻D(zhuǎn)到該標(biāo)號(hào)處并執(zhí)行其后的語句。另外標(biāo)號(hào)必須與goto語句同處于一個(gè)函數(shù)中,但可以不在一個(gè)循環(huán)層中。通常goto語句與if條件語句連用,當(dāng)滿足某一條件時(shí),程序跳到標(biāo)號(hào)處運(yùn)行。
goto語句通常不用,主要因?yàn)樗鼘⑹钩绦驅(qū)哟尾磺?且不易讀,但在多層嵌套退出時(shí),用goto語句則比較合理。1.2.1用goto語句和if語句構(gòu)成循環(huán),求
for語句在C語言中,for語句使用最為靈活,它完全可以取代while語句。它的一般形式為:for(表達(dá)式1;表達(dá)式2;表達(dá)式3)語句它的執(zhí)行過程如下:先求解表達(dá)式1。求解表達(dá)式2,若其值為真(非0),則執(zhí)行for語句中指定的內(nèi)嵌語句,然后執(zhí)行下面第3)步;若其值為假(0),則結(jié)束循環(huán),轉(zhuǎn)到第5)步。求解表達(dá)式3。轉(zhuǎn)回上面第2)步繼續(xù)執(zhí)行。循環(huán)結(jié)束,執(zhí)行for語句下面的一個(gè)語句。1.2.2嵌套for循環(huán)求九九乘法表1.3任務(wù)實(shí)施
通過相關(guān)理論學(xué)習(xí)后,我們可以對“學(xué)生成績管理系統(tǒng)”中學(xué)生課程的總分和平均分進(jìn)行計(jì)算。并將現(xiàn)實(shí)中的數(shù)據(jù)處理成C語言能夠理解的數(shù)據(jù)。接下來我們來看一個(gè)系統(tǒng)執(zhí)行的流程圖1.4知識(shí)擴(kuò)展
1、break語句
break語句通常用在循環(huán)語句和開關(guān)語句中。當(dāng)break用于開關(guān)語句switch中時(shí),可使程序跳出switch而執(zhí)行switch以后的語句;如果沒有break語句,則將成為一個(gè)死循環(huán)而無法退出。break在switch中的用法已在前面介紹開關(guān)語句時(shí)的例子中碰到,這里不再舉例。當(dāng)break語句用于do-while、for、while循環(huán)語句中時(shí),可使程序終止循環(huán)而執(zhí)行循環(huán)后面的語句,通常break語句總是與if語句聯(lián)在一起。即滿足條件時(shí)便跳出循環(huán)。
2、continue語句
continue語句的作用是跳過循環(huán)本中剩余的語句而強(qiáng)行執(zhí)行下一次循環(huán)。continue語句只用在for、while、do-while等循環(huán)體中,常與if條件語句一起使用,用來加速循環(huán)。其執(zhí)行過程可用下圖表示。
while(表達(dá)式1){……if(表達(dá)式2)break;……}while(表達(dá)式1){……if(表達(dá)式2)continue;……}2.1任務(wù)情境
本任務(wù)主要是實(shí)現(xiàn)項(xiàng)目主菜單的選擇執(zhí)行,在這里需利用多重循環(huán)即多重循環(huán)結(jié)構(gòu),也稱循環(huán)嵌套層,是指一個(gè)循環(huán)結(jié)構(gòu)的內(nèi)部又包含另一個(gè)完整的循環(huán)結(jié)構(gòu)。這節(jié)重點(diǎn)掌握循環(huán)語句的執(zhí)行過程,內(nèi)外循環(huán)語句的位置安排等。循環(huán)控制結(jié)構(gòu)(又稱重復(fù)結(jié)構(gòu))是程序中的另一個(gè)基本結(jié)構(gòu)。在實(shí)際問題中,常常需要進(jìn)行大量的重復(fù)處理,循環(huán)結(jié)構(gòu)可以使我們只寫很少的語句,而讓計(jì)算機(jī)反復(fù)執(zhí)行,從而完成大量類同的計(jì)算?!鞍嗉?jí)學(xué)生成績管理系統(tǒng)”中該項(xiàng)目實(shí)現(xiàn)如果輸入0~6之間的整型數(shù)字,將在屏幕上打印一句話或顯示相應(yīng)的子菜單,可用多種循環(huán)語句實(shí)現(xiàn)。
2.2知識(shí)必備
除了上一任務(wù)中講的for循環(huán)和goto循環(huán)外還有另外兩種循環(huán).例如:while語句當(dāng)我們確定循環(huán)重復(fù)執(zhí)行的次數(shù)時(shí),會(huì)使用for循環(huán)。但是對于有些問題,無法事先知道循環(huán)該執(zhí)行多少次才夠,此時(shí),就可以考慮使用while循環(huán)及dowhile循環(huán)。
while語句的一般形式為:
while(表達(dá)式)語句其中表達(dá)式是循環(huán)條件,語句為循環(huán)體。
while語句的語義是:計(jì)算表達(dá)式的值,當(dāng)值為真(非0)時(shí),執(zhí)行循環(huán)體語句。2.2.1用while語句求
注:使用while語句應(yīng)注意以下幾點(diǎn):while語句中的表達(dá)式一般是關(guān)系表達(dá)或邏輯表達(dá)式,只要表達(dá)式的值為真(非0)即可繼續(xù)循環(huán)。循環(huán)體如包括有一個(gè)以上的語句,則必須用{}括起來,組成復(fù)合語句。do-while語句do-while語句的一般形式為:do
語句
while(表達(dá)式);這個(gè)循環(huán)與while循環(huán)的不同在于:它先執(zhí)行循環(huán)中的語句,然后再判斷表達(dá)式是否為真,如果為真則繼續(xù)循環(huán);如果為假,則終止循環(huán)。因此,do-while循環(huán)至少要執(zhí)行一次循環(huán)語句。
2.2.2用do-while語句求
2.3任務(wù)實(shí)施
由于實(shí)現(xiàn)循環(huán)選擇執(zhí)行項(xiàng)目菜單是一種比較復(fù)雜結(jié)構(gòu),為了便于學(xué)習(xí),我們首先用三種方法實(shí)現(xiàn)主菜單的循環(huán)選擇執(zhí)行,即主菜單實(shí)現(xiàn)循環(huán)選擇,而子菜單暫時(shí)不實(shí)現(xiàn)循環(huán)選擇。1.用for循環(huán)實(shí)現(xiàn)已知循環(huán)次數(shù)的循環(huán)。該循環(huán)規(guī)定了循環(huán)執(zhí)行的次數(shù),當(dāng)循環(huán)達(dá)到規(guī)定的次數(shù)后將會(huì)退出循環(huán)。學(xué)習(xí)者不要理解成for循環(huán)只能實(shí)現(xiàn)已知循環(huán)次數(shù)的循環(huán),實(shí)際上for循環(huán)也能夠?qū)崿F(xiàn)未知循環(huán)次數(shù)的循環(huán)。2.用while循環(huán)實(shí)現(xiàn)未知循環(huán)次數(shù)的循環(huán)。該循環(huán)只有輸入了0才會(huì)退出循環(huán),但不能顯示“退出程序!”,即當(dāng)輸入0后,循環(huán)再不執(zhí)行,從而退出循環(huán)。3.用do~while循環(huán)實(shí)現(xiàn)未知次數(shù)的循環(huán)
該循環(huán)只有輸入0后循環(huán)才會(huì)結(jié)束,但可以顯示“退出程序!”,當(dāng)輸入0后循環(huán)還是執(zhí)行了最后一次
2.4知識(shí)擴(kuò)展
一、while與do----while嵌套循環(huán)1、do----while嵌套循環(huán)do----while循環(huán)先執(zhí)行,然后再判斷while后面的條件是不是成立do{do{...}while(...);}while(...);上面的語句相當(dāng)與先執(zhí)行一次外層do然后接著執(zhí)行內(nèi)曾的do-while循環(huán)體,當(dāng)執(zhí)行然內(nèi)層的循環(huán)體之后,判斷外層的while條件2、while嵌套循環(huán)While(…)循環(huán)先判斷while后面的條件是不是成立{ While(…)如果外面的條件成立此時(shí)判斷這個(gè)while后面的條件是否成立.{};};上面的語句相當(dāng)與先執(zhí)行一次外層while然后接著執(zhí)行判斷內(nèi)曾的while后面的條件,如果為真執(zhí)行內(nèi)層的循環(huán)體.2.5任務(wù)小結(jié)
通過本章的學(xué)習(xí),要求能夠掌握while,do---while循環(huán)及while,do--while的嵌套循環(huán)結(jié)構(gòu)。本次任務(wù)和上一任務(wù)均講述不同在循環(huán)結(jié)構(gòu)。那么這幾種循環(huán)結(jié)構(gòu)又有什么相同點(diǎn)和不同點(diǎn)呢?下面我們就來對幾種循環(huán)做詳細(xì)在比較。四種循環(huán)都可以用來處理同一個(gè)問題,一般可以互相代替。但一般不提倡用goto型循環(huán)。while和do-while循環(huán),循環(huán)體中應(yīng)包括使循環(huán)趨于結(jié)束的語句。for語句功能最強(qiáng)。用while和do-while循環(huán)時(shí),循環(huán)變量初始化的操作應(yīng)在while和do-while語句之前完成,而for語句可以在表達(dá)式1中實(shí)現(xiàn)循環(huán)變量的初始化。根據(jù)需要找到合適的循環(huán):循環(huán)特性循環(huán)種類forwhiledowhile前端測試條件判斷是是否后端測試條件判斷否否是在循環(huán)主體中,需要自己更改循環(huán)控制變量的值是否否循環(huán)重復(fù)的次數(shù)已知已知已知最少執(zhí)行循環(huán)主體的次數(shù)0次0次1次何時(shí)重復(fù)執(zhí)行循環(huán)條件成立條件成立條件成立練習(xí)題一、選擇題1、循環(huán)語句for(i=0,j=0;(j!=25)&&(i<3);i++)的循環(huán)執(zhí)行次數(shù)是()A.無限循環(huán)B.2次C.3次D.4次
2、循環(huán)語句for(i=0,j=0;(j!=4)||(i<3);j++,i++)的循環(huán)執(zhí)行次數(shù)是()
A.無限循環(huán)B.2次C.3次D.4次
3、在與switch語句配套的case語句中所使用的表達(dá)式()
A只能是常量
B可以是變量或常量
C只能是常量或常量表達(dá)式
D無論是常量還是變量,只要在執(zhí)行時(shí)已經(jīng)有確定的值就可以了
4、if語句中用來作為判斷條件的表達(dá)式是()
A邏輯表達(dá)式B關(guān)系表達(dá)式C算術(shù)表達(dá)式D以上都是二、 填空題1. 在C語言中,單目運(yùn)算符的結(jié)合方向(運(yùn)算方向)是____________;唯一的一個(gè)三目運(yùn)算符是____________。2. 能正確表示“當(dāng)ch為小寫字母為真,否則為假”的表達(dá)式是。3. 循環(huán)語句for(;;)printf("OK\n");和do{printf("OK\n");}while(0);執(zhí)行完畢循環(huán),循環(huán)次數(shù)分別是________________和________________。4. 若有說明inti,j,k;則表達(dá)式i=10,j=20,k=30,k*=i+j的值為________________.結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)是:選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和________________。三、 閱讀程序,寫出程序的運(yùn)行結(jié)果1. 運(yùn)行結(jié)果:_______________intfunc(intn){if(n==0)return0;elseif(n==1)return1;elsereturnn*n+func(n-2);}main(){printf("%5d%5d\n",func(4),func(5));}change(&a,b);printf("a=%d,b=%d\n",a,b);}2. 運(yùn)行結(jié)果:_______________main(){inti=1;while(i<=10)if(++i%2!=0)continue;elseprintf(“%3d”,i);}運(yùn)行結(jié)果:_______________Main(){intj;for(j=4;j>=2;j--)switch(j){case0:printf("%4s","ABC");case1:printf("%4s","DEF");case2:printf("%4s","GHI");breakcase3:printf("%4s","JKL");default:printf("%4s","MNO");}printf("\n");}五、 編程題1、編寫程序?qū)崿F(xiàn)符號(hào)函數(shù),即
1(x>0)
y= 0(x=0) -1(x<0)2、編寫程序輸出100以內(nèi)的素?cái)?shù)。3、編寫一個(gè)讀入兩個(gè)正整數(shù)值a和b,并顯示大于a小于b的所有偶數(shù)的程序。1.2.1用goto語句和if語句構(gòu)成循環(huán),求
010203040506070809101112Voidmain(){inti,sum=0;i=1;loop:if(i<=100){sum=sum+i;
i++;
gotoloop;}printf("%d\n",sum);}代碼貼士本程序中首先聲說了一個(gè)main()函數(shù)說明,這是寫C程序最基本的步驟。想必在前面的學(xué)習(xí)中大家已經(jīng)明白!本程序定義一個(gè)Loop,以便后面的Goto進(jìn)行調(diào)用。以此構(gòu)成一個(gè)循環(huán),直到條件不成立即i>100時(shí)停止循環(huán)。1.2.2嵌套for循環(huán)求九九乘法表01020304050607080910111213#include<stdio.h>intmain(void){inti,j;
for(i=1;i<=9;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024秋三年級(jí)語文上冊 第一單元 第2課 花的學(xué)校說課稿 新人教版
- 2024年春九年級(jí)歷史上冊 第22課 科學(xué)和思想的力量說課稿 新人教版
- 6梯形的面積 說課稿-2024-2025學(xué)年人教版數(shù)學(xué)五年級(jí)上冊
- 2024-2025學(xué)年高中化學(xué) 第一章 物質(zhì)結(jié)構(gòu)元素周期律 第一節(jié) 元素周期表第1課時(shí)說課稿1 新人教版必修2
- 2024年秋八年級(jí)語文上冊 第五單元 名著導(dǎo)讀《昆蟲記》說課稿 新人教版001
- 2024年春七年級(jí)地理下冊 第6章 第2節(jié) 自然環(huán)境說課稿2 (新版)新人教版
- 9 烏鴉喝水(說課稿)2024-2025學(xué)年統(tǒng)編版語文一年級(jí)上冊001
- 1《植物》科學(xué)閱讀《我們離不開植物》(說課稿)2023-2024學(xué)年一年級(jí)上冊科學(xué)教科版001
- 2025個(gè)人購房合同樣本(合同版本)
- Unit2 Bridging Cultures Learning About Language Structures 說課稿-2024-2025學(xué)年高中英語人教版(2019)選擇性必修第二冊
- 高中英語外研版 單詞表 選擇性必修3
- 醫(yī)院6S管理成果匯報(bào)
- 2024年人教版小學(xué)六年級(jí)數(shù)學(xué)(上冊)期末試卷附答案
- 2024-2025學(xué)年江蘇省南京鼓樓區(qū)五校聯(lián)考中考模擬物理試題含解析
- 2024年無人機(jī)駕駛員(五級(jí))理論考試題庫(含答案)
- 標(biāo)準(zhǔn)作文稿紙模板(A4紙)
- 中小學(xué)校園突發(fā)事件應(yīng)急與急救處理課件
- 2024年山東省普通高中學(xué)業(yè)水平等級(jí)考試生物真題試卷(含答案)
- 2024年青海省西寧市選調(diào)生考試(公共基礎(chǔ)知識(shí))綜合能力題庫匯編
- 2024年湖南高速鐵路職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫及答案解析
- 廣州綠色金融發(fā)展現(xiàn)狀及對策的研究
評論
0/150
提交評論