C語言流程控制教材_第1頁
C語言流程控制教材_第2頁
C語言流程控制教材_第3頁
C語言流程控制教材_第4頁
C語言流程控制教材_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第3章C語言流程控制本章重點(diǎn)格式化輸入輸出函數(shù)C語言中的順序、分支和循環(huán)程序的設(shè)計(jì)方法3.1格式化輸入輸出函數(shù)printf()函數(shù)scanf()函數(shù)3.11printf()函數(shù) C標(biāo)準(zhǔn)庫函數(shù)中提供了一些輸入輸出函數(shù),如前面遇到的printf()函數(shù)和scanf()函數(shù),它們非C關(guān)鍵詞,而是函數(shù)名而已,可以自己編寫輸入輸出函數(shù)。printf()函數(shù)和scanf()函數(shù)在系統(tǒng)文件“stdio.h”中聲明,所以在程序的開始部分要使用編譯預(yù)處理命令“#include<stdio.h>”。

在日常生活中,我們要經(jīng)常將華氏溫度轉(zhuǎn)換成攝氏溫度,其轉(zhuǎn)換公式如下:式中:

c表示攝氏溫度,

f表示華氏溫度。運(yùn)行結(jié)果:如: printf()函數(shù)的作用就是輸出。

對(duì)比:

函數(shù)語句:

printf("fahr=%f,celsius=%f\n",fahr,celsius);

輸出結(jié)果:

fahr=100.000000,celsius=37.777778

得出:雙引號(hào)里,第一個(gè)%f換成了fahr的值,第二個(gè)%f換成了celsius的值,并且以單精度數(shù)據(jù)形式顯示。 printf()函數(shù)一般的調(diào)用格式為:

printf("格式控制字符串",輸出參數(shù)1,輸出參數(shù)2,…,輸出參數(shù)n);

“格式控制字符串”是用雙引號(hào)括起來的字符串,也稱作“轉(zhuǎn)換控制字符串”,包括兩種意思。

普通字符

普通字符即需要原樣輸出字符。如:

printf("fahr=%f,celsius=%f\n",fahr,celsius); fahr=100.000000,celsius=37.777778

雙引號(hào)內(nèi),兩個(gè)%f變化除外,其余均無改變格式說明格式說明由“%”和格式字符組成,如%d、%f等,它的作用是將輸出的數(shù)據(jù)轉(zhuǎn)換成指定的格式輸出。格式說明輸出%c%d%e%E%x%u%s%o%G%g%f%%%X一個(gè)字符根據(jù)數(shù)值的不同自動(dòng)選擇%f或%e。用于指數(shù)小于-4或者大于精度根據(jù)數(shù)值的不同自動(dòng)選擇%F或%E。用于指數(shù)小于-4或者大于精度無符號(hào)八進(jìn)制整數(shù)字符串無符號(hào)十進(jìn)制整數(shù)使用十六進(jìn)制數(shù)字of的無符號(hào)十六進(jìn)制整數(shù)使用十六進(jìn)制數(shù)字oF的無符號(hào)十六進(jìn)制整數(shù)輸出一個(gè)%有符號(hào)十進(jìn)制整數(shù)浮點(diǎn)數(shù)、以指數(shù)的形式輸出(1.2e+02)浮點(diǎn)數(shù)、以指數(shù)的形式輸出(1.2E+02)以小數(shù)點(diǎn)形式輸出浮點(diǎn)數(shù)、十進(jìn)制記數(shù)法字符說明l用于長(zhǎng)整型整數(shù),可加在格式符d、o、x、u前面m(正整數(shù))數(shù)據(jù)最小寬度n(正整數(shù))對(duì)于實(shí)數(shù),表示輸出n位小數(shù);對(duì)于字符串,表示截取的字符個(gè)數(shù)—輸出的數(shù)字或者字符在域內(nèi)向左靠1.對(duì)于%md和%ms,m為指定輸出數(shù)據(jù)的寬度,如果數(shù)據(jù)的位數(shù)小于m,則左端補(bǔ)空格,若大于m,則按實(shí)際位數(shù)輸出。例如: printf("%4d,%4d",a,b)

若a=12,b=12345,則輸出結(jié)果為:??12,12345注意:2.對(duì)于%-ms,如果字符串的長(zhǎng)度小于m,則輸出m列,不足的位數(shù)在右側(cè)補(bǔ)空格。例如: printf(“%-4d,%-4d”,a,b);

若a=12,b=12345;結(jié)果為:a=12??,b=12345。3.對(duì)于%m.s,輸出占m列,但只是取字符串中左端n個(gè)字符,這n個(gè)字符輸出在m列的右側(cè),左端補(bǔ)空格。%-m.s則在右側(cè)補(bǔ)空格,如果n>m,則m自動(dòng)取n值,即保證n個(gè)字符正常輸出。4.對(duì)于%m.nf,指定輸出的數(shù)據(jù)共占m列,其中n位小數(shù)。如果數(shù)值長(zhǎng)度小于m,則左端補(bǔ)空格。%-m.nf與%m.nf一樣,只是使輸出的數(shù)值向左端靠,右端補(bǔ)空格。3.1.2scanf()函數(shù)數(shù)依舊舊探探討討華華氏氏溫溫度度轉(zhuǎn)轉(zhuǎn)換換成成攝攝氏氏溫溫度度,,上上一一節(jié)節(jié)中中,,華華氏氏溫溫度度為為一一定定值值,,如如果果根根據(jù)據(jù)用用戶戶來來輸輸入入相相應(yīng)應(yīng)的的數(shù)數(shù)據(jù)據(jù),,求求攝攝氏氏溫溫度度,,那那該該如如何何進(jìn)進(jìn)行行相相應(yīng)應(yīng)的的輸輸入入呢呢??運(yùn)行結(jié)果:Pleaseinputfahr:140fahr=140.000000,celsius=60.000000scanf()函數(shù)作用,輸輸入數(shù)值例:scanf函數(shù)的作用是是輸入數(shù)據(jù),,其基本格式式為:scanf("格式控制",地址列表)“格式控制”的含義和printf函數(shù)的格式控控制。格式說說明也是以%開始,以一個(gè)個(gè)格式字符結(jié)結(jié)束,中間可可以插入一些些普通字符,普通字符同同樣按原樣輸輸出。格式說明符意義%c輸入單個(gè)字符%d輸入有符號(hào)的十進(jìn)制整數(shù)%f輸入浮點(diǎn)數(shù),可以用小數(shù)或者整數(shù)形式輸入%o輸入無符號(hào)的八進(jìn)制數(shù)%s輸入字符串,將字符串存放到一個(gè)字符數(shù)組中,輸入時(shí)以非空白字符開始,以第一個(gè)空白字符結(jié)束,字符串以串結(jié)束標(biāo)志'\0'作為其最后一個(gè)字符。%u輸入無符號(hào)的十進(jìn)制整數(shù)%x,%X輸入無符號(hào)的十六進(jìn)制整數(shù)%e,%E,%g,%G與%f的作用相同,e,f,g可以互相替換而且大小寫的作用相同。scanf函數(shù)的格式說說明符字符意義l用于輸入長(zhǎng)整型數(shù)據(jù),可用于%ld、%lo、%lx、%lu以及double型數(shù)據(jù)%lf或%leh用于輸入短整型數(shù)據(jù),可用于%hd、%ho、%hx域?qū)捴付ㄝ斎霐?shù)據(jù)所占的列寬,應(yīng)為一個(gè)正整數(shù)*表示本輸入項(xiàng)在讀入后不賦給相應(yīng)的變量如:scanf(”%d”,&i);輸入?1234,結(jié)果i的值為1234輸入1234,結(jié)果i的值為123輸入1234,結(jié)果i的值為1234為了更清楚地地了解scanf()函數(shù)的用法,,須知以下幾幾點(diǎn):如:scanf(”%d,%d”,&a,&b)加上“&”,表示變量量a和b的地址這個(gè),輸入時(shí)時(shí),必須加上上逗號(hào),才能能保證正確如:scanf(”%4d”,&i);輸入12345,結(jié)果i的值為1234(因?yàn)橹付ㄓ蛴驅(qū)挒?)輸入123?45,結(jié)果i的值為123(因?yàn)橛鲆娍湛瞻鬃址﹕canf格式控制中的的普通字符必必須按原樣輸輸入,地址列列表中必須為為地址,在變變量前加上““取地址運(yùn)算算符”讀取數(shù)據(jù)的時(shí)時(shí)候是以指定定域?qū)捇蛘叩诘谝粋€(gè)空白字字符處為終止止(最先達(dá)到到者)若第一個(gè)或前前幾個(gè)連續(xù)為為空白字符、、制表符和換換行符,都將將跳過這些字字符注意%s格式說明符的的用法要點(diǎn)深度解析析:結(jié)合要點(diǎn)1,了解地址的的含義結(jié)合要點(diǎn)2、3,分析多數(shù)據(jù)據(jù)輸入情況結(jié)合要點(diǎn)4,掌握%s的用法3.2程序流程圖流程圖是用一一些圖框來表表示各種操作作。用流程圖圖來表示算法法,直觀形象象,易于理解解。美國國家家標(biāo)準(zhǔn)化協(xié)會(huì)會(huì)ANSI規(guī)定了一些常常用的流程圖圖符號(hào)。菱形框,是對(duì)一個(gè)給給定的條件進(jìn)進(jìn)行判斷,根根據(jù)給定的條條件是否成立立來決定如何何執(zhí)行其后的的操作。它有有一個(gè)入口,,兩個(gè)出口連接點(diǎn),是用于將畫畫在不同地方方的流程線連連接起來。在在流程圖中,,編號(hào)相同的的連接點(diǎn)表示示這些點(diǎn)是互互相連接在一一起的注釋框,不是流程圖圖中的必要部部分,不反應(yīng)應(yīng)流程和操作作,只是為了了對(duì)流程圖中中某些框的操操作作必要的的補(bǔ)充說明,,以便于人們們更好的理解解流程圖例:求一數(shù)值值的絕對(duì)值。。數(shù)學(xué)分析:若若此數(shù)值本身身就不小于0,就是其本身身,反之,為為其相反數(shù)。。輸出X輸出-xX滿足條件不滿足條件流程圖表示::三種基本結(jié)構(gòu)構(gòu):1.順序結(jié)構(gòu),流流程圖表示如如下:執(zhí)行完A框指定的操作作后接著執(zhí)行行B框所指定的操操作。順序結(jié)結(jié)構(gòu)是最簡(jiǎn)單單的一種基本本結(jié)構(gòu)。2.選擇結(jié)構(gòu),流流程圖表示如如下:此結(jié)構(gòu)中必須須包含一個(gè)判判斷框,根據(jù)據(jù)給定的條件件p是否成立來選選擇執(zhí)行A框還是B框中所指定的的操作。無論論p條件是否成立立,只能執(zhí)行行A框或者B框之一,兩者者不可能同時(shí)時(shí)執(zhí)行。A框或者B框有一個(gè)可以以是空的,不不執(zhí)行任何操操作3.循環(huán)結(jié)構(gòu),流流程圖表示如如下:當(dāng)(while)型循環(huán)結(jié)構(gòu)構(gòu)。其功能是是:當(dāng)給定的的條件p1成立時(shí),執(zhí)行行A框操作,執(zhí)行行完A后,再判斷條條件p1是否成立,如如果仍然成立立,再執(zhí)行A框,如此反復(fù)復(fù)執(zhí)行A框,直到某一一次條件p1不成立為止,,此時(shí)不執(zhí)行行A框,從b點(diǎn)脫離循環(huán)結(jié)結(jié)構(gòu)直到(until)型循環(huán)結(jié)構(gòu)構(gòu)。其功能是是:先執(zhí)行A框,然后判斷斷給定的條件件p2是否成立,如如果p2條件不成立,,則再執(zhí)行A,然后再對(duì)p2條件作判斷,,如果p2條件仍然不成成立,又執(zhí)行行A……如此反復(fù)執(zhí)行行A,直到給定的的條件p2成立為止,此此時(shí)不再執(zhí)行行A,從b點(diǎn)脫離循環(huán)結(jié)結(jié)構(gòu)3.3順序結(jié)構(gòu)程序序設(shè)計(jì)算術(shù)運(yùn)算符算術(shù)表達(dá)式賦值表達(dá)式例:求一元二二次方程的兩兩根。運(yùn)行結(jié)果:從主函數(shù)入口口開始執(zhí)行,,定義變量,,輸入數(shù)值,,求解方程的的解,這都是是按照代碼的的一步一步往往下實(shí)現(xiàn)的。。3.3.1算術(shù)運(yùn)算符5種基本運(yùn)算符符:1).+(加法或者正直直運(yùn)算符)2).??(減法或者負(fù)值值運(yùn)算符)3).*(乘法運(yùn)算符)4)./(除法運(yùn)算符)5).%(求余運(yùn)算符)注意:加法和減法運(yùn)運(yùn)算符同于數(shù)數(shù)學(xué)上乘法在c語言中用“*”,而不用用“×”除法在c語言中是“/”,而不用““÷”使用“/”時(shí),若除數(shù)數(shù)和被除數(shù)都都為整數(shù),則則商也是整數(shù)數(shù),若參與運(yùn)運(yùn)算的有負(fù)數(shù)數(shù),3.3.2算術(shù)表達(dá)式算術(shù)表達(dá)式即用算術(shù)運(yùn)算算符和括號(hào)將將運(yùn)算對(duì)象連連接起來,符符合C語法規(guī)則的式式子算術(shù)運(yùn)算時(shí)是是按照優(yōu)先級(jí)級(jí)進(jìn)行的,若若優(yōu)先級(jí)相同同,則按照結(jié)結(jié)合方向進(jìn)行行計(jì)算,并且且每一個(gè)表達(dá)達(dá)式都會(huì)有一一個(gè)確定的值值。3.3.3賦值表達(dá)式由賦值運(yùn)算符符將一個(gè)變量量和一個(gè)表達(dá)達(dá)式連接起來來的式子稱為為賦值表達(dá)式。其一般形式為為:<變量><賦值運(yùn)算符><表達(dá)式>計(jì)算過程是::先計(jì)算賦值值運(yùn)算符右側(cè)側(cè)的“表達(dá)式”的值,然后將將這個(gè)值賦值值給左邊的變變量。多個(gè)賦值表表達(dá)式共存則則按結(jié)合性““自右而左””進(jìn)行一步一一步分別賦值值。常用的復(fù)合賦值運(yùn)算符a+=y等價(jià)于a=a+yb-=y等價(jià)于b=b-yc*=y等價(jià)于c=c*yd/=y等價(jià)于d=d/ye%=y等價(jià)于e=e%yy可以是常量、變量以及復(fù)雜的表達(dá)式賦值運(yùn)算符““=”之前加上其其他運(yùn)算符,,就構(gòu)成復(fù)合合賦值運(yùn)算符符。編寫程序:從鍵盤上輸入入三角形的三三邊,根據(jù)下下面的公式求求出三角形的的面積area。假設(shè)輸入a、b和c三邊的邊長(zhǎng)長(zhǎng)能夠組成成一個(gè)三角角形。程序?yàn)椋?.4選擇結(jié)構(gòu)程程序設(shè)計(jì)關(guān)系運(yùn)算符符和關(guān)系表表達(dá)式邏輯運(yùn)算符符和邏輯表表達(dá)式if語句與與switch例:一元二二次方程根根的情況。。運(yùn)行結(jié)果::此程序就體體現(xiàn)了,根根據(jù)不同的的情況,有有不同的結(jié)結(jié)果,就達(dá)達(dá)到了一種種選擇的目目的。3.4.1關(guān)系運(yùn)算符符和關(guān)系表表達(dá)式關(guān)系運(yùn)算符運(yùn)算符含義<小于<=小于和等于>大于>=大于或等于==等于!=不等于算術(shù)運(yùn)算符符>關(guān)系運(yùn)算符符>賦值運(yùn)算符符算術(shù)運(yùn)算符符:+--*/%關(guān)系運(yùn)算符符:><>=<=賦值運(yùn)算符符:==!=關(guān)系表達(dá)式式:用關(guān)系運(yùn)運(yùn)算符將兩兩數(shù)連接起起來,進(jìn)行行關(guān)系運(yùn)算算。表達(dá)式結(jié)果果為邏輯值值,即“真真”或“假假”若表達(dá)式成成立:值為為“1”表達(dá)式不成成立:值為為“0”。例:a=2011,b=2010;a==b;因?yàn)閍,b值不想等,,所以表達(dá)達(dá)式值為0。3.4.2邏輯運(yùn)算符符和邏輯表表達(dá)式邏輯運(yùn)算符運(yùn)算符舉例運(yùn)算規(guī)則&&(邏輯與)a&&b若a、b同時(shí)為真,a&&b為真,除此之外都為假|(zhì)|(邏輯或)a||b若a、b之一為真,則a||b為真!(邏輯非)!a若a為真。則!a為假,反之,若a為假,則!a為真優(yōu)先級(jí):!>算術(shù)運(yùn)算負(fù)負(fù)>關(guān)系運(yùn)算符符>邏輯運(yùn)算符符&&與||為雙目運(yùn)算算符,需要要兩個(gè)運(yùn)算算量!為單目運(yùn)運(yùn)算符,只只需要一個(gè)個(gè)邏輯表達(dá)式式:由邏輯運(yùn)運(yùn)算符連接接兩個(gè)數(shù),,進(jìn)行邏輯輯運(yùn)算的式式子。表達(dá)式結(jié)果果:“真””“假”邏輯量:參參與邏輯運(yùn)運(yùn)算的量邏輯值:邏邏輯量、邏邏輯表達(dá)式式的運(yùn)算結(jié)結(jié)果任何非“0”的邏輯量量的邏輯值值都為真寫出下面各各邏輯表達(dá)達(dá)式的值。。設(shè)a=3,b=4,c=5;1.a+b>c&&b==c2.a||b+c&&b-c3.!(a>b)&&!c||14.!(x=a)&&(y=b)&&05.!(a+b)+c-1&&b+c/21.02.13.14.05.13.4.3if語句與switch語句if,英語中其其義有“如如果”的意意思。那么就來研研究C語言中的““如果”。。1.if語句格式:if(表達(dá)式){語句組;}流程圖:如果表達(dá)式式的值為真真,就語句句組中的語語句;如果不為真真,就執(zhí)行行語句組后后的語句表達(dá)式語句組真假2.在if語句中添加加else子句格式:if(表達(dá)式){語句組1;}else{語句組2;}如果表達(dá)式式的值為真真,就執(zhí)行行語句組1;如果不為真真,就執(zhí)行行語句組2。流程圖:表達(dá)式語句組1語句組2真假3.多重選擇elseif格式:if(表達(dá)式1)語句組1;elseif(表達(dá)式2)語句組2;elseif(表達(dá)式3)語句組3;···else語句組n;表達(dá)式1語句組1真假表達(dá)式2表達(dá)式3語句組n語句組3語句組2假假真真流程圖:當(dāng)表達(dá)式1為真的時(shí)候候則執(zhí)行語語句組1,否則的話話,將判斷斷表達(dá)式2的真假,表表達(dá)式2為真,則執(zhí)執(zhí)行語句組組2···依次這樣判判斷。4.if語句的嵌套套在if語句的語句句組中又包包含一個(gè)或或多個(gè)if語句稱為if語句的嵌套套如:if(表達(dá)式1){if(表達(dá)式2){語句組;;}}if的多重嵌套套時(shí),得注注意if和else的搭配,寫寫法要得當(dāng)當(dāng)!if語句實(shí)現(xiàn)多多分支時(shí),,需要嵌套套的if語句層數(shù)較較多,程序序冗長(zhǎng),可讀性低低。因此可可用switch語句來處理理多分支情情況。switch(表達(dá)式){case常量表達(dá)式式1:語句組1;case常量表達(dá)式式2:語句組2;…case常量表達(dá)式式n:語句組n;default:語句組n+1;}switch說明:switch括號(hào)內(nèi)的的表達(dá)式式任意,,值和哪哪個(gè)case后的常量量表達(dá)式式匹配,,就執(zhí)行行后面的的語句,,沒有匹匹配的,,就執(zhí)行行default后面的,,default可省略。。每個(gè)case后常量表表達(dá)式的的值必須須不一樣樣,case和default的順序不不影響結(jié)結(jié)果。執(zhí)行完一一個(gè)case后,程序序流程轉(zhuǎn)轉(zhuǎn)移到下下一個(gè)case,直到運(yùn)運(yùn)行完全全或遇見見break語句,并并非直接接跳出。。多個(gè)case可以共用用一個(gè)執(zhí)執(zhí)行語句句。例:輸入兩個(gè)個(gè)實(shí)數(shù),,按照代代數(shù)值由由小到大大的順序序輸出這這兩個(gè)數(shù)數(shù)。滿足if條件就交換a,b的值例:輸入入三個(gè)實(shí)實(shí)數(shù),編編程找出出其中最最大的一一個(gè)并輸輸出探究唯一一的三目目運(yùn)算符符三目運(yùn)算算符一般形式式:表達(dá)式1?表達(dá)式式2:表達(dá)式式3其執(zhí)行順順序?yàn)椋海合惹蠼饨獗磉_(dá)式式1,若為真真(非0),則求求解表達(dá)達(dá)式2,并把表表達(dá)式2的值作為為整個(gè)條條件表達(dá)達(dá)式的值值。若表表達(dá)式1為假(0),則求求解表達(dá)達(dá)式3,并把表表達(dá)式3的值作為為整個(gè)條條件表達(dá)達(dá)式的值值。注意點(diǎn)::條件運(yùn)算算符的優(yōu)優(yōu)先級(jí)別別高于賦賦值運(yùn)算算符,但但是比關(guān)關(guān)系運(yùn)算算符和算算術(shù)運(yùn)算算符要低低。條件運(yùn)算算符的結(jié)結(jié)合方向向?yàn)椤白宰杂蚁蜃笞蟆睏l件表達(dá)達(dá)式中的的表達(dá)式式2和表達(dá)式式3可以是任任意的表表達(dá)式。。表達(dá)式式1與表達(dá)式式2和表達(dá)式式3的類型也也可以不不同。編寫程序序:編寫一程程序,從從鍵盤上上輸入x的值,根據(jù)上上面的函函數(shù),求求出y的值。語句組中中只有一一句,花花括號(hào)可可以省略略。3.5循環(huán)結(jié)構(gòu)構(gòu)程序設(shè)設(shè)計(jì)while循環(huán)環(huán)與自增增自減運(yùn)運(yùn)算符do····while語句for語語句逗號(hào)運(yùn)算算符和逗逗號(hào)表達(dá)達(dá)式3.5.1while循環(huán)與自自增自減減while語句用來來實(shí)現(xiàn)““當(dāng)型””循環(huán)結(jié)結(jié)構(gòu)。其一般形形式:while(表達(dá)式){語句組;}在語句組組中必須須包含能能改變表表達(dá)式的的值來使使表達(dá)式式的值最最終變?yōu)闉榧伲穹駝t循環(huán)環(huán)永遠(yuǎn)不不會(huì)中止止例:使用用while循環(huán)來求求“1+2+3+……+100”的值運(yùn)行結(jié)果果:循環(huán)條件件i為循環(huán)變變量循環(huán)變量量增值循環(huán)體i=1i≤100sum+=ii++真假流程圖如如下:循環(huán)變量量初始化化i=1判斷表達(dá)達(dá)式i≤100是否成立立成立就執(zhí)執(zhí)行循環(huán)環(huán)體不成立就就執(zhí)行循循環(huán)體后后面的語語句(循環(huán)體未未執(zhí)行)執(zhí)行循環(huán)環(huán)體后,,就再從從第一步步往下進(jìn)進(jìn)行判斷斷,直至至為假就就退出循循環(huán)循環(huán)體i++使i每次增1sum+=i進(jìn)行累加加自增運(yùn)算算符“++”,其作作用使變變量的值值增1.與其相對(duì)對(duì)的還有有自減運(yùn)運(yùn)算符““--”,其作作用使變變量的值值減1。自增自減減運(yùn)算符符為單目目運(yùn)算符符,所以以僅需1個(gè)變量。。注意,,自增自自減只能能用于變變量,不不能用于于常量或或表達(dá)式式自增、自自減運(yùn)算算符的使使用有兩兩種方式式:前綴模式式:++變量,--變量。(在使用用變量之之前,先先使變量量的值加加(減))1)后綴模式式:變量量++,變量--。(在使用用變量之之后,使使變量的的值加((減)1)在用自增增、自減減運(yùn)算符符時(shí),易易使表達(dá)達(dá)式產(chǎn)生生不正確確的地方方,盡量量不用3.5.2do····while語句do····while循環(huán)先執(zhí)執(zhí)行循環(huán)環(huán)體語句句,然后后再判斷斷while后面的條條件是否否成立。。當(dāng)表達(dá)達(dá)式為真真,則返返回重新新執(zhí)行循循環(huán)體語語句,如如此反復(fù)復(fù),直到到while后面面的的表表達(dá)達(dá)式式為為假假才才結(jié)結(jié)束束循循環(huán)環(huán)一般般形形式式為為::do{循環(huán)環(huán)體體語語句句組組;;}while(表達(dá)達(dá)式式);此處處分分號(hào)號(hào)一一定定不不能能少少用while和do······while分別別求求1到100的累累加加和和while循環(huán)環(huán)do······while循環(huán)環(huán)對(duì)比比::while循環(huán)環(huán)先先判判斷斷條條件件,,成成立立則則執(zhí)執(zhí)行行循循環(huán)環(huán)體體,,不不成成立立執(zhí)執(zhí)行行其其后后語語句句;;而而do······while循環(huán)環(huán)先先執(zhí)執(zhí)行行一一次次循循環(huán)環(huán)體體后后判判斷斷條條件件,,成成立立則則再再執(zhí)執(zhí)行行循循環(huán)環(huán)體體,,不不成成立立,,退退出出循循環(huán)環(huán)。。所所以以do······while至少少執(zhí)執(zhí)行行一一次次循循環(huán)環(huán)體體3.5.3for語句句C語言言中中的的for語句句是是使使用用最最為為靈靈活活的的語語句句,,其其一一般般形形式式如如下下::for(表達(dá)達(dá)式式1;表表達(dá)達(dá)式式2;表表達(dá)達(dá)式式3){循環(huán)環(huán)體體語語句句組組;;}當(dāng)循循環(huán)環(huán)體體語語句句組組只只有有一一句句時(shí)時(shí),,花花括括號(hào)號(hào)可可以以省省略略。。for循環(huán)環(huán)的的執(zhí)執(zhí)行行過過程程::求解解表表達(dá)達(dá)式式1;求解解表表達(dá)達(dá)式式2,如如果果為為真真,,則則執(zhí)執(zhí)行行循循環(huán)環(huán)體體語語句句組組,,執(zhí)執(zhí)行行結(jié)結(jié)束束后后轉(zhuǎn)轉(zhuǎn)步步驟驟③③;;如如果果表表達(dá)達(dá)式式的的結(jié)結(jié)果果為為假假,,則則結(jié)結(jié)束束循循環(huán)環(huán),,轉(zhuǎn)轉(zhuǎn)步步驟驟⑤⑤;;求解解表表達(dá)達(dá)式式3;轉(zhuǎn)步步驟驟②②;;循環(huán)環(huán)結(jié)結(jié)束束,,執(zhí)執(zhí)行行循循環(huán)環(huán)語語句句之之后后的的其其他他語語句句。。for語句句的的3個(gè)表表達(dá)達(dá)式式均均可可省省略略,,但但是是里里面面的的分分號(hào)號(hào)““;;””不不能能省省略略。。需需要要注注意意的的是是,,省省略略相相應(yīng)應(yīng)的的表表達(dá)達(dá)式式,,就就需需要要在在其其他他地地方方彌彌補(bǔ)補(bǔ)相相應(yīng)應(yīng)表表達(dá)達(dá)式式的的功功能能,,以以保保證證程程序序的的正正常常運(yùn)運(yùn)行行例::用用for循環(huán)環(huán)求求1到100的累累加加和和。。相比比while和do······while,使使用用for循環(huán)環(huán),,很很簡(jiǎn)簡(jiǎn)潔潔,,前前提提必必須須弄弄懂懂for循環(huán)環(huán)究究竟竟是是如如何何工工作作的的。。continue和和break都有有表表示示結(jié)結(jié)束束循循環(huán)環(huán)的的意意思思,,但但continue是結(jié)結(jié)束束本本次次循循環(huán)環(huán),,break為結(jié)結(jié)束束整整個(gè)個(gè)循循環(huán)環(huán)。。ABA中,,結(jié)結(jié)果果為為sum=5050

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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)論