




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
知識目標:
掌握C語言的基本循環(huán)結(jié)構(gòu);深刻理解goto語句和if語句構(gòu)成的循環(huán)、while語句、do-while語句、和for語句之間的區(qū)別及使用方法;理解各種循環(huán)之間的相同點和不同點。能力目標:能正確設(shè)計“學生成績管理系統(tǒng)”中學生成績的統(tǒng)計和循環(huán)結(jié)構(gòu)程序的設(shè)計。學生成績統(tǒng)計分析-循環(huán)結(jié)構(gòu)程序設(shè)計工作任務(wù)任務(wù)1
學生成績統(tǒng)計分析——總分、平均分的計算
循環(huán)結(jié)構(gòu)是程序中一種很重要的結(jié)構(gòu),其特點是在判定條件成立時,反復執(zhí)行某程序段,直到條件成立為止。所給的判定條件稱為循環(huán)條件,反復執(zhí)行的程序段稱為循環(huán)體。它主要處理如學校學生成績,求若干個數(shù)的和,求一個數(shù)的階乘等等。C語言提供了多種循環(huán)語句以實現(xiàn)各種不同形式的循環(huán)結(jié)構(gòu)。循環(huán)語句有g(shù)oto語句和if語句構(gòu)成的循環(huán)、while語句、do-while語句和for語句。并且各個語句之間還可以進行嵌套使用。“學生成績管理系統(tǒng)”中我們需要給學生的成績進計算,其中將用到循環(huán)語句。但是在對各種信息進行處理時,將有多種循環(huán)結(jié)構(gòu)供我們選擇,那么我們要根據(jù)實際情況選擇適合的循環(huán)結(jié)構(gòu)任務(wù)2
用循環(huán)語句實現(xiàn)項目主菜單的選擇執(zhí)行設(shè)計任務(wù)目標:能設(shè)計“班級學生成績管理系統(tǒng)”中所涉及到的多種循環(huán)結(jié)構(gòu)。
學生成績管理系統(tǒng)中有很多程序的語句是從上至下地被執(zhí)行的。程序的控制結(jié)構(gòu)在本系統(tǒng)中占有很大一部分,因此如何在本系統(tǒng)中采用合適的邏輯控制結(jié)構(gòu),選擇合適的循環(huán)結(jié)構(gòu),是設(shè)計的重點。1.1任務(wù)情境
“班級學生成績管理系統(tǒng)”中該項目實現(xiàn)如果輸入0~3之間的整型數(shù)字,將在屏幕上顯示學生的總成績和平均成績。具體如圖5-1所示。本任務(wù)的主要內(nèi)容是對總分和平均分的計算,那么用什么方法才是得當,簡便又利于計算呢,這是本次任務(wù)需要掌握的要點。分數(shù)的計算是有規(guī)律、需要重復執(zhí)行某些操作的。因此利用循環(huán)語句是最好的選擇。1.2知識必備
循環(huán)結(jié)構(gòu)是程序中一種很重要的結(jié)構(gòu)。其特點是,在給定條件成立時,反復執(zhí)行某程序段,直到條件不成立為止。給定的條件稱為循環(huán)條件,反復執(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語句標號;其中標號是一個有效的標識符,這個標識符加上一個“:”一起出現(xiàn)在函數(shù)內(nèi)某處,執(zhí)行g(shù)oto語句后,程序?qū)⑻D(zhuǎn)到該標號處并執(zhí)行其后的語句。另外標號必須與goto語句同處于一個函數(shù)中,但可以不在一個循環(huán)層中。通常goto語句與if條件語句連用,當滿足某一條件時,程序跳到標號處運行。
goto語句通常不用,主要因為它將使程序?qū)哟尾磺?且不易讀,但在多層嵌套退出時,用goto語句則比較合理。1.2.1用goto語句和if語句構(gòu)成循環(huán),求
for語句在C語言中,for語句使用最為靈活,它完全可以取代while語句。它的一般形式為:for(表達式1;表達式2;表達式3)語句它的執(zhí)行過程如下:先求解表達式1。求解表達式2,若其值為真(非0),則執(zhí)行for語句中指定的內(nèi)嵌語句,然后執(zhí)行下面第3)步;若其值為假(0),則結(jié)束循環(huán),轉(zhuǎn)到第5)步。求解表達式3。轉(zhuǎn)回上面第2)步繼續(xù)執(zhí)行。循環(huán)結(jié)束,執(zhí)行for語句下面的一個語句。1.2.2嵌套for循環(huán)求九九乘法表1.3任務(wù)實施
通過相關(guān)理論學習后,我們可以對“學生成績管理系統(tǒng)”中學生課程的總分和平均分進行計算。并將現(xiàn)實中的數(shù)據(jù)處理成C語言能夠理解的數(shù)據(jù)。接下來我們來看一個系統(tǒng)執(zhí)行的流程圖1.4知識擴展
1、break語句
break語句通常用在循環(huán)語句和開關(guān)語句中。當break用于開關(guān)語句switch中時,可使程序跳出switch而執(zhí)行switch以后的語句;如果沒有break語句,則將成為一個死循環(huán)而無法退出。break在switch中的用法已在前面介紹開關(guān)語句時的例子中碰到,這里不再舉例。當break語句用于do-while、for、while循環(huán)語句中時,可使程序終止循環(huán)而執(zhí)行循環(huán)后面的語句,通常break語句總是與if語句聯(lián)在一起。即滿足條件時便跳出循環(huán)。
2、continue語句
continue語句的作用是跳過循環(huán)本中剩余的語句而強行執(zhí)行下一次循環(huán)。continue語句只用在for、while、do-while等循環(huán)體中,常與if條件語句一起使用,用來加速循環(huán)。其執(zhí)行過程可用下圖表示。
while(表達式1){……if(表達式2)break;……}while(表達式1){……if(表達式2)continue;……}2.1任務(wù)情境
本任務(wù)主要是實現(xiàn)項目主菜單的選擇執(zhí)行,在這里需利用多重循環(huán)即多重循環(huán)結(jié)構(gòu),也稱循環(huán)嵌套層,是指一個循環(huán)結(jié)構(gòu)的內(nèi)部又包含另一個完整的循環(huán)結(jié)構(gòu)。這節(jié)重點掌握循環(huán)語句的執(zhí)行過程,內(nèi)外循環(huán)語句的位置安排等。循環(huán)控制結(jié)構(gòu)(又稱重復結(jié)構(gòu))是程序中的另一個基本結(jié)構(gòu)。在實際問題中,常常需要進行大量的重復處理,循環(huán)結(jié)構(gòu)可以使我們只寫很少的語句,而讓計算機反復執(zhí)行,從而完成大量類同的計算?!鞍嗉墝W生成績管理系統(tǒng)”中該項目實現(xiàn)如果輸入0~6之間的整型數(shù)字,將在屏幕上打印一句話或顯示相應的子菜單,可用多種循環(huán)語句實現(xiàn)。
2.2知識必備
除了上一任務(wù)中講的for循環(huán)和goto循環(huán)外還有另外兩種循環(huán).例如:while語句當我們確定循環(huán)重復執(zhí)行的次數(shù)時,會使用for循環(huán)。但是對于有些問題,無法事先知道循環(huán)該執(zhí)行多少次才夠,此時,就可以考慮使用while循環(huán)及dowhile循環(huán)。
while語句的一般形式為:
while(表達式)語句其中表達式是循環(huán)條件,語句為循環(huán)體。
while語句的語義是:計算表達式的值,當值為真(非0)時,執(zhí)行循環(huán)體語句。2.2.1用while語句求
注:使用while語句應注意以下幾點:while語句中的表達式一般是關(guān)系表達或邏輯表達式,只要表達式的值為真(非0)即可繼續(xù)循環(huán)。循環(huán)體如包括有一個以上的語句,則必須用{}括起來,組成復合語句。do-while語句do-while語句的一般形式為:do
語句
while(表達式);這個循環(huán)與while循環(huán)的不同在于:它先執(zhí)行循環(huán)中的語句,然后再判斷表達式是否為真,如果為真則繼續(xù)循環(huán);如果為假,則終止循環(huán)。因此,do-while循環(huán)至少要執(zhí)行一次循環(huán)語句。
2.2.2用do-while語句求
2.3任務(wù)實施
由于實現(xiàn)循環(huán)選擇執(zhí)行項目菜單是一種比較復雜結(jié)構(gòu),為了便于學習,我們首先用三種方法實現(xiàn)主菜單的循環(huán)選擇執(zhí)行,即主菜單實現(xiàn)循環(huán)選擇,而子菜單暫時不實現(xiàn)循環(huán)選擇。1.用for循環(huán)實現(xiàn)已知循環(huán)次數(shù)的循環(huán)。該循環(huán)規(guī)定了循環(huán)執(zhí)行的次數(shù),當循環(huán)達到規(guī)定的次數(shù)后將會退出循環(huán)。學習者不要理解成for循環(huán)只能實現(xiàn)已知循環(huán)次數(shù)的循環(huán),實際上for循環(huán)也能夠?qū)崿F(xiàn)未知循環(huán)次數(shù)的循環(huán)。2.用while循環(huán)實現(xiàn)未知循環(huán)次數(shù)的循環(huán)。該循環(huán)只有輸入了0才會退出循環(huán),但不能顯示“退出程序!”,即當輸入0后,循環(huán)再不執(zhí)行,從而退出循環(huán)。3.用do~while循環(huán)實現(xiàn)未知次數(shù)的循環(huán)
該循環(huán)只有輸入0后循環(huán)才會結(jié)束,但可以顯示“退出程序!”,當輸入0后循環(huán)還是執(zhí)行了最后一次
2.4知識擴展
一、while與do----while嵌套循環(huán)1、do----while嵌套循環(huán)do----while循環(huán)先執(zhí)行,然后再判斷while后面的條件是不是成立do{do{...}while(...);}while(...);上面的語句相當與先執(zhí)行一次外層do然后接著執(zhí)行內(nèi)曾的do-while循環(huán)體,當執(zhí)行然內(nèi)層的循環(huán)體之后,判斷外層的while條件2、while嵌套循環(huán)While(…)循環(huán)先判斷while后面的條件是不是成立{ While(…)如果外面的條件成立此時判斷這個while后面的條件是否成立.{};};上面的語句相當與先執(zhí)行一次外層while然后接著執(zhí)行判斷內(nèi)曾的while后面的條件,如果為真執(zhí)行內(nèi)層的循環(huán)體.2.5任務(wù)小結(jié)
通過本章的學習,要求能夠掌握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)又有什么相同點和不同點呢?下面我們就來對幾種循環(huán)做詳細在比較。四種循環(huán)都可以用來處理同一個問題,一般可以互相代替。但一般不提倡用goto型循環(huán)。while和do-while循環(huán),循環(huán)體中應包括使循環(huán)趨于結(jié)束的語句。for語句功能最強。用while和do-while循環(huán)時,循環(huán)變量初始化的操作應在while和do-while語句之前完成,而for語句可以在表達式1中實現(xiàn)循環(huán)變量的初始化。根據(jù)需要找到合適的循環(huán):循環(huán)特性循環(huán)種類forwhiledowhile前端測試條件判斷是是否后端測試條件判斷否否是在循環(huán)主體中,需要自己更改循環(huán)控制變量的值是否否循環(huán)重復的次數(shù)已知已知已知最少執(zhí)行循環(huán)主體的次數(shù)0次0次1次何時重復執(zhí)行循環(huán)條件成立條件成立條件成立練習題一、選擇題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語句中所使用的表達式()
A只能是常量
B可以是變量或常量
C只能是常量或常量表達式
D無論是常量還是變量,只要在執(zhí)行時已經(jīng)有確定的值就可以了
4、if語句中用來作為判斷條件的表達式是()
A邏輯表達式B關(guān)系表達式C算術(shù)表達式D以上都是二、 填空題1. 在C語言中,單目運算符的結(jié)合方向(運算方向)是____________;唯一的一個三目運算符是____________。2. 能正確表示“當ch為小寫字母為真,否則為假”的表達式是。3. 循環(huán)語句for(;;)printf("OK\n");和do{printf("OK\n");}while(0);執(zhí)行完畢循環(huán),循環(huán)次數(shù)分別是________________和________________。4. 若有說明inti,j,k;則表達式i=10,j=20,k=30,k*=i+j的值為________________.結(jié)構(gòu)化程序設(shè)計的三種基本結(jié)構(gòu)是:選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和________________。三、 閱讀程序,寫出程序的運行結(jié)果1. 運行結(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. 運行結(jié)果:_______________main(){inti=1;while(i<=10)if(++i%2!=0)continue;elseprintf(“%3d”,i);}運行結(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)符號函數(shù),即
1(x>0)
y= 0(x=0) -1(x<0)2、編寫程序輸出100以內(nèi)的素數(shù)。3、編寫一個讀入兩個正整數(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);}代碼貼士本程序中首先聲說了一個main()函數(shù)說明,這是寫C程序最基本的步驟。想必在前面的學習中大家已經(jīng)明白!本程序定義一個Loop,以便后面的Goto進行調(diào)用。以此構(gòu)成一個循環(huán),直到條件不成立即i>100時停止循環(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)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度旅游景區(qū)保安臨時工臨時服務(wù)合同
- 二零二五年度醫(yī)療貸款擔保人免責服務(wù)合同
- 二零二五年度旅游產(chǎn)品未簽合同消費者權(quán)益保障合同
- 2025年度智能制造行業(yè)勞動合同解除及保密協(xié)議模板
- 2025年度購物中心店面轉(zhuǎn)租與租賃期滿續(xù)約合同
- 天津市2025年度租賃房屋裝修與維修責任協(xié)議
- 二零二五年度美容院轉(zhuǎn)讓合同附帶技術(shù)培訓與售后服務(wù)
- 二零二五年度專業(yè)培訓機構(gòu)教師團隊建設(shè)與培養(yǎng)合同
- 2025年遂寧考從業(yè)資格證貨運試題
- 2025年銀川貨運從業(yè)資格證考試題目及答案解析
- Adobe-Illustrator-(Ai)基礎(chǔ)教程
- 沒頭腦和不高興-竇桂梅.精選優(yōu)秀PPT課件
- 鋼棧橋計算書(excel版)
- 租賃合同審批表
- 事業(yè)單位綜合基礎(chǔ)知識考試題庫 綜合基礎(chǔ)知識考試題庫.doc
- 巖石堅固性和穩(wěn)定性分級表
- 譯林初中英語教材目錄
- 律師事務(wù)所函[]第號
- 物業(yè)交付后工程維修工作機制
- 農(nóng)作物病蟲害專業(yè)化統(tǒng)防統(tǒng)治管理辦法
- 新形勢下如何做一名合格的鄉(xiāng)鎮(zhèn)干部之我見
評論
0/150
提交評論