C語言程序設(shè)計的三種基本結(jié)構(gòu)PPT課件_第1頁
C語言程序設(shè)計的三種基本結(jié)構(gòu)PPT課件_第2頁
C語言程序設(shè)計的三種基本結(jié)構(gòu)PPT課件_第3頁
C語言程序設(shè)計的三種基本結(jié)構(gòu)PPT課件_第4頁
C語言程序設(shè)計的三種基本結(jié)構(gòu)PPT課件_第5頁
已閱讀5頁,還剩76頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.,1,第3章 C語言程序設(shè)計 的三種基本結(jié)構(gòu),C 語言程序設(shè)計,.,2,3.1 順序結(jié)構(gòu)程序設(shè)計 3.2 選擇結(jié)構(gòu)程序設(shè)計 3.3 循環(huán)結(jié)構(gòu)程序設(shè)計,本章主要內(nèi)容,.,3,3.1.1 C語句 3.1.2 字符數(shù)據(jù)的輸入與輸出 3.1.3 格式輸入與輸出 3.1.4 順序結(jié)構(gòu)程序設(shè)計應(yīng)用舉例,3.1 順序結(jié)構(gòu)程序設(shè)計,返回,.,4,3.1.1 C語句,一個C程序由若干個源程序文件組成,一個源文件由若干個函數(shù)和預(yù)處理命令及全局變量聲明部分組成,一個函數(shù)由數(shù)據(jù)聲明部分和執(zhí)行語句部分組成,執(zhí)行語句部分就是由C語句組成的。C程序結(jié)構(gòu)如圖3-1所示。,圖3-1,.,5,C語句可分為以下5類: 1表達式語

2、句 表達式語句由一個表達式加上分號“;”組成。執(zhí)行表達式語句就是計算表達式的值。其一般形式為: 在表達式語句中,最常用的是賦值語句。 例如:a=7; 將7賦給a。 x=y+z; 將y與z之和賦給x。,3.1.1 C語句,表達式;,.,6,3.1.1 C語言基本語句,賦值運算符“=”右邊的表達式也可以是一個賦值表達式,一般形式為: 展開為: 例如:a=b=c=9; 與賦值語句不同的是,在聲明變量時,不允許連續(xù)給多個變量賦初值。以下聲明變量的方式是錯誤的: int a=b=c=9;,變量=(變量=表達式);,變量=變量=表達式;,.,7,3.1.1 C語言基本語句,必須改為:int a=9,b=9

3、,c=9; 又如:i+; 自增1語句,i值增1,相當(dāng)于i=i+1。 而a*b; 因計算結(jié)果不能保留,沒有實際意義。 說明: 1) 一個C語句必須在最后添加分號,分號是C語句中不可缺少的一部分。 2) 任何表達式都可以加一個分號成為語句。,.,8,3.1.1 C語言基本語句,2函數(shù)調(diào)用語句 函數(shù)調(diào)用語句由函數(shù)名、實際參數(shù)加上分號“;”組成。其一般形式為: 例如: printf(This is a C Program); 調(diào)用庫函數(shù),輸出字符串This is a C Program。 max(a,b); 調(diào)用自定義的max函數(shù)。,函數(shù)名(實際參數(shù)表);,.,9,3.1.1 C語言基本語句,3控制語

4、句 控制語句用于控制程序的流程, 以實現(xiàn)程序的各種結(jié)構(gòu)方式。它們由特定的語句定義符組成。語言有9種控制語句,可分成以下3類: 條件判斷語句:if語句、switch語句 循環(huán)執(zhí)行語句:do-while、while和for語句 轉(zhuǎn)向語句:break語句、goto語句、continue語句、return語句 例如:if(a0) printf(OK);,.,10,3.1.1 C語言基本語句,4復(fù)合語句 把多個C語句用花括號“”括起來組成一個語句,該語句為復(fù)合語句。 例如下述是一個復(fù)合語句: z=x; x=y; y=z; ,.,11,3.1.1 C語言基本語句,5空語句 只有分號“;”組成的語句稱為空語

5、句??照Z句是什么也不執(zhí)行的語句。下面是一個空語句: ; 在程序中空語句可用來作空循環(huán)體,空循環(huán)體什么也不做。例如: while(getchar()!=n) ; 語句的功能是,從鍵盤輸入的字符如果不是回車則重新輸入,直到輸入回車為止。,.,12,3.1.2 字符數(shù)據(jù)的輸入與輸出,輸入/輸出是以計算機為主體而言的。在語言中,所有的數(shù)據(jù)輸入/輸出都是由庫函數(shù)完成的,因此都是函數(shù)語句。在使用語言庫函數(shù)時,要用預(yù)編譯命令#include將有關(guān)“頭文件”包括到源文件中。 #include 或 #include stdio.h,.,13,3.1.2 字符數(shù)據(jù)的輸入與輸出,1putchar 函數(shù)(字符輸出函數(shù)

6、) putchar 函數(shù)是字符輸出函數(shù),其功能是向終端(如顯示器)輸出單個字符。其一般形式為: 例如: putchar(A); 輸出大寫字母A putchar(c); 輸出字符變量c的值 也可以輸出轉(zhuǎn)義字符,如: putchar(); 輸出字符“”,putchar(字符變量);,.,14,3.1.2 字符數(shù)據(jù)的輸入與輸出,【例3-1】 編寫程序,輸出英文單詞Good。 #include void main() char a=G,b=o,c=o,d=d; putchar(a); putchar(b); putchar(c); putchar(d); putchar(n); ,程序運行結(jié)果: Go

7、od,.,15,3.1.2 字符數(shù)據(jù)的輸入與輸出,2getchar函數(shù)(字符輸入函數(shù)) getchar函數(shù)的功能是從終端(如鍵盤)輸入一個字符。getchar函數(shù)沒有參數(shù),其一般形式為: getchar函數(shù)只能接收一個字符,通常把接收的字符賦給一個字符變量或整型變量。如: char ch; ch=getchar();,getchar();,.,16,3.1.2 字符數(shù)據(jù)的輸入與輸出,getchar函數(shù)也可以作為函數(shù)語句的一個參數(shù)被使用。如: printf(%c,getchar(); putchar(getchar(); 如果通過鍵盤輸入小寫字母a,則以上兩個函數(shù)語句均輸出小寫字母a。,.,17

8、,3.1.2 字符數(shù)據(jù)的輸入與輸出,【例3-2】 將輸入的單個字符原樣輸出。 #include void main() char ch; ch=getchar(); putchar(ch); ,程序運行情況如下: 如果輸入:A 運行結(jié)果:A,.,18,3.1.3 格式輸入與輸出,1printf函數(shù)(格式輸出函數(shù)) printf函數(shù)稱為格式輸出函數(shù),其功能是按用戶指定的格式,把指定的數(shù)據(jù)顯示到顯示器屏幕上。printf函數(shù)調(diào)用的一般形式為:,printf(“格式控制”,輸出表列);,.,19,3.1.3 格式輸入與輸出,1)格式控制 格式控制字符串用于指定輸出格式,它包括兩種信息:格式說明和普通

9、字符。 格式說明:由“%”和格式字符組成,說明輸出數(shù)據(jù)的類型、形式、寬度、小數(shù)位數(shù)等。 printf函數(shù)中使用的格式字符主要包括:,.,20,3.1.3 格式輸入與輸出,d格式符:以十進制形式輸出帶符號整數(shù)(正數(shù)不輸出符號)。有以下幾種用法: %d:按十進制整型數(shù)據(jù)的實際長度輸出。 %md:m為指定的輸出字段的寬度,即輸出數(shù)據(jù)在輸出設(shè)備上所占的列數(shù)。如果數(shù)據(jù)的位數(shù)小于m,則左端補以空格;如果大于m,數(shù)據(jù)則按實際位數(shù)輸出。例如:int a=123,b=456; printf(%5d,%2d,a,b); %ld:輸出長整型數(shù)據(jù)。,.,21,3.1.3 格式輸入與輸出,o格式符:以八進制整數(shù)形式輸出

10、(不輸出前綴0),輸出的數(shù)據(jù)不帶符號。 x或X格式符:以十六進制形式輸出無符號整數(shù)(不輸出前綴0 x)。例如:int a=-1; printf(%d,%o,%x,a,a,a); 輸出結(jié)果為:-1,177777,ffff u格式符:以十進制形式輸出無符號整數(shù),輸出長整型時用lu。 c格式符:用來輸出一個字符,也可以指定輸出字符的寬度。例如:printf(%c,%3c,a,b);,.,22,3.1.3 格式輸入與輸出,s格式符:用來輸出指定的字符串。s格式符有幾種用法: %s:原樣輸出給定的字符串。例如: printf(%s,GOOD); %ms:m為輸出字符串所占的列數(shù)。如果字符串的位數(shù)小于m,

11、字符串左端補以空格;如果字符串的位數(shù)大于m,字符串將原樣輸出。例如:printf(%2s%6s,Good,Night); %-ms:如果字符串長度小于指定的寬度,字符串向左邊靠,在字符串的右邊補空格。例如:printf(%-6s,free);,.,23,3.1.3 格式輸入與輸出,%m.ns:輸出占m列,但只取字符串中左端n個字符。這n個字符輸出在m列的右側(cè),字符串的左側(cè)補空格。 %-m.ns:輸出占m列,但只取字符串中左端n個字符。這n個字符輸出在m列的左側(cè),字符串的右側(cè)補空格。如果n大于m,將保證n個字符全部正常輸出。例如: printf(%5.4s,%-5.3s,%2.4s,Shang,

12、Shang,Shang);,.,24,3.1.3 格式輸入與輸出,f格式符:以小數(shù)形式輸出單、雙精度實數(shù),小數(shù) 位數(shù)為6位。有以下幾種用法: %f:不指定字段寬度,由系統(tǒng)自動指定,使整數(shù)部分全部輸出,并輸出6位小數(shù)。單精度實數(shù)的有效數(shù)字位數(shù)一般為7位,雙精度實數(shù)的有效數(shù)字位數(shù)一般為16位。例如: float x=11111.111; double y=22222222222222.2222; printf(%f,%fn,x*2,y*3); 輸出結(jié)果:22222.220000,66666666666666.660000,.,25,3.1.3 格式輸入與輸出,%m.nf:指定輸出的數(shù)據(jù)共占m列,其

13、中有n位小數(shù)。如果數(shù)值長度小于m,將在輸出的數(shù)值左端補空格。 %-m.nf:與%m.nf基本相同。不同的是,如果數(shù)值長度小于m,將在輸出的數(shù)值右端補空格。例如: float a=345.6789; printf(%7.1f ,%-7.2fn,a,a); 輸出結(jié)果為:345.7, 345.68,.,26,3.1.3 格式輸入與輸出,e或E格式符:以指數(shù)形式輸出實數(shù),用e時指數(shù)以e表示,如1.2e3,用E時指數(shù)以E表示,如1.2E3。 g或G格式符:用來輸出實數(shù),它根據(jù)數(shù)值的大小,自動選f格式或e格式,且不輸出無意義的零。用G時,若以指數(shù)形式輸出,則指數(shù)以大寫表示。 p格式符:輸出變量的內(nèi)存地址。

14、 普通字符:在顯示中起提示作用,輸出時原樣輸出。例如:printf(a=%d,b=%dn,a,b) ;,.,27,3.1.3 格式輸入與輸出,使用printf函數(shù)時需要注意以下幾點: (1)除了X、E、G外,其他格式字符必須用小寫字母,如%d不能寫成%D。 (2)可以在“格式控制”字符串中包含轉(zhuǎn)義字符,例如:printf(%dt%dn,123,789); (3)如果需要輸出字符“%”,則應(yīng)該在“格式控制”字符串中用連續(xù)兩個%表示。,.,28,3.1.3 格式輸入與輸出,2)輸出表列 輸出表列中給出了各個輸出項,要求格式字符串和各輸出項在數(shù)量和類型上應(yīng)該一一對應(yīng)。 如:printf(max=%d

15、,min=%d,a,b); 雙引號中的兩個“%d”是格式說明,表示指定的變量a和b按十進制整型輸出,雙引號中其余內(nèi)容是普通字符,原樣輸出?!癮,b”為輸出表列,變量之間用逗號隔開。假設(shè)a和b的值分別是10和7,則輸出為:max=10,min=7,.,29,3.1.3 格式輸入與輸出,【例3-3】 分析下面程序的輸出結(jié)果。 #include void main() int a=65,b=66; printf(%d %dn,a,b); printf(a=%d,b=%dn,a,b); printf(%c,%cn,a,b); ,程序運行結(jié)果: 6566 a=65,b=66 A,B,.,30,3.1.3

16、 格式輸入與輸出,【例3-4】 格式字符應(yīng)用實例。 #include void main() int a=65; float b=12.1234567; double c=12345.1234567; char d= A; printf(a=%d,%4d,%-4d,%o,%x,%cn,a,a,a,a,a,a); printf(b=%f,%lf,%3.4f,%-6.1f,%en,b,b,b,b,b); printf(c=%lf,%f,%8.4lfn,c,c,c); printf(d=%c,%3c,%-4c,%dn,d,d,d,d);,運行結(jié)果: a=65, 65,65,101,41,A b=12

17、.123457,12.123457,12.1235,12.1,1.21235e+01 c=12345.123457, 12345.123457, 12345.1235 d=A, A,A,65,.,31,3.1.3 格式輸入與輸出,使用printf函數(shù)時要注意輸出表列中的求值順序。 不同的編譯系統(tǒng)不一定相同,可以從左到右,也可從 右到左。Turbo C是按從右到左進行的。如下面的例子: 【例3-5】 分析輸出表列中的求值順序。 #include void main() int i=6; printf(%d,%d,%d,%dn,-i,+i,i+,i-); ,程序運行結(jié)果: 6,7,5,6,.,32

18、,3.1.3 格式輸入與輸出,2scanf函數(shù)(格式輸入函數(shù)) scanf函數(shù)的功能是按指定的格式從終端輸入數(shù)據(jù),并將輸入的數(shù)據(jù)存放到指定的變量中。 scanf函數(shù)的一般形式為: 如:scanf(%d%d, “%d%d”表示輸入整型數(shù)據(jù),,.,33,3.1.3 格式輸入與輸出,1)格式控制 格式控制字符串用于說明數(shù)據(jù)的類型及格式。其 中包括兩部分內(nèi)容:格式說明和輸入數(shù)據(jù)分隔符。 常用的格式字符如下: d,i:輸入有符號的十進制整數(shù)。 u:輸入無符號的十進制整數(shù)。 o:輸入無符號的八進制整數(shù)。 X,x:輸入無符號的十六進制整數(shù)。 f:輸入實型數(shù) c:輸入單個字符。 s:輸入字符串。,.,34,3

19、.1.3 格式輸入與輸出,可用的附加字符有: l:用于輸入長整型數(shù)據(jù)(如%ld,%lo,%lx)及double型數(shù)據(jù)(如%lf或%le)。 h:用于輸入短整型數(shù)據(jù)(如%hd,%ho,%hx)。 m:指定輸入數(shù)據(jù)所占寬度。 例如:scanf(%3d%2d,若輸入10 11 12,將把10賦給變量a,11被跳過,12賦給變量b?!?*d”表示讀入整數(shù)但不賦給任何變量。,.,35,3.1.3 格式輸入與輸出,2)地址表列 地址表列中給出各變量的地址,地址是由地址運算符“,.,36,3.1.3 格式輸入與輸出,【例3-6】 格式輸入與格式輸出函數(shù)的應(yīng)用示例。 #include void main()

20、int a,b,c; char ch1,ch2; float d,e; scanf(%d%d%d, ,程序運行情況如下: 101612AB3.56 a=10,b=161,c=2 ch1=A,ch2=B d=3.500000,e=6.000000,.,37,3.1.4 順序結(jié)構(gòu)程序設(shè)計應(yīng)用舉例,【例3-7】 輸入兩個小寫字母,輸出其ASCII碼和對應(yīng)的大寫字母。 #include void main() char ch1,ch2; printf(input character ch1,ch2: ); scanf(%c%c, ,程序運行結(jié)果: input character ch1,ch2:ab

21、97,98 A,B,.,38,3.1.4 順序結(jié)構(gòu)程序設(shè)計應(yīng)用舉例,【例3-8】已知圓的半徑r10,試用C語言編程求圓的周長p=2r和圓的面積s=r2。 #include void main() float pi,r,p,s; r=10;pi=3.14; p=2*pi*r; s=pi*r*r; printf(p=%.2fn,p); printf(s=%.2fn,s); ,程序運行結(jié)果: p=62.80 s=314.00,.,39,3.1.4 順序結(jié)構(gòu)程序設(shè)計應(yīng)用舉例,【例3-9】計算任意兩個整數(shù)的和、差。 #incldue void main() int a,b,c,d; scanf(%d%d

22、, ,程序運行情況如下: 129 12+9=21,12-9=3,.,40,3.2 選擇結(jié)構(gòu)程序設(shè)計,3.2.1 關(guān)系運算符與關(guān)系表達式 3.2.2 邏輯運算符與邏輯表達式 3.2.3 if語句的3種形式 3.2.4 if語句的嵌套 3.2.5 條件運算 3.2.6 switch語句 3.2.7 選擇結(jié)構(gòu)程序設(shè)計舉例,返回,.,41,3.2.1 關(guān)系運算符與關(guān)系表達式,1.關(guān)系運算符 關(guān)系運算符是雙目運算符,用來比較兩個運算量之間的關(guān)系。關(guān)系運算的結(jié)果是“真”或“假”,且只能是二者之一。C語言提供6種關(guān)系運算符,它們分別是: (大于) = (大于或等于) = (等于) != (不等于) 前四種關(guān)

23、系運算符(、=)的優(yōu)先級高于后兩種(=、!=)。關(guān)系運算符的優(yōu)先級低于算術(shù)運算符。,.,42,3.2.1關(guān)系運算符與關(guān)系表達式,2.關(guān)系表達式 關(guān)系表達式就是指用關(guān)系運算符將兩個表達式連接起來的式子。例如:1020、A+12為“真”,其值為1;表達式A+1D的值是1(因為字符A的ASCII碼值加1之后小于字符D的ASCII碼值);表達式13=9的值為0。,.,43,3.2.2 邏輯運算符與邏輯表達式,1.邏輯運算符 int n1,n2,n3; float x=3.0,y=0.85; n1=x,程序運行結(jié)果: 0,1,.,48,3.2.3 if語句的3種形式,1if語句 if語句的一般形式: 其

24、語義是:如果表達式的值為真,則執(zhí)行其后的語句,否則不執(zhí)行該語句。if語句的執(zhí)行過程如圖3-2所示,if(表達式) 語句,圖3-2,.,49,3.2.3 if語句的3種形式,【例3-11】 隨機輸入兩個整數(shù),輸出其中的小數(shù)。 #include void main() int a,b,min; scanf(%d%d,程序運行情況如下: 17119 min=17,.,50,3.2.3 if語句的3種形式,2if-else語句 if-else語句的一般形式: 其語義是:如果表達式的值為真,則執(zhí)行語句1,否則執(zhí)行語句2 。if-else語句的執(zhí)行過程如圖3-3所示。,if(表達式) 語句1 else 語

25、句2,圖3-3,.,51,3.2.3 if語句的3種形式,【例3-12】將例3-11輸出兩個整數(shù)中的小數(shù),改用if-else語句來完成。 #include void main() int a, b; scanf(%d%d,.,52,3.2.3 if語句的3種形式,3if-else-if語句 其一般形式為: 其語義是:依次判斷表達式的值,當(dāng)出現(xiàn)某個值為真時,則執(zhí)行其對應(yīng)的語句。然后跳到整個if語句之外繼續(xù)執(zhí)行后續(xù)語句。 如果所有的表達式均為假,則執(zhí)行語句n。然后繼續(xù)執(zhí)行后續(xù)語句。,if(表達式1) 語句1 else if(表達式2) 語句2 else if(表達式3) 語句3 else if(表

26、達式m) 語句m else 語句n,.,53,3.2.3 if語句的3種形式,執(zhí)行過程如圖3-4所示。,圖3-4,.,54,3.2.3 if語句的3種形式,【例3-13】 隨機輸入一個字符,判別該字符的類別。 #include void main() char c; printf(input a character: ); c=getchar(); if(c=0,.,55,3.2.4 if語句的嵌套,下面列舉常見的兩種嵌套形式: 形式一: 形式二: if(表達式1) if(表達式1) if(表達式2 ) 語句1 if(表達式2 ) 語句1 else 語句2 else 語句2 else 語句3,

27、.,56,3.2.4 if語句的嵌套,形式三: 形式四: if(表達式1) if(表達式1) if(表達式2 ) 語句1 if(表達式2 ) 語句1 else 語句2 else 語句2 else if(表達式3 ) 語句3 else 語句4,.,57,3.2.4 if語句的嵌套,【例3-14】比較兩個字符型數(shù)據(jù)的大小關(guān)系。 #include void main() char a,b; scanf(%c%c,.,58,3.2.5 條件運算,在if語句中,當(dāng)判斷表達式的值為“真”或“假”時,都只執(zhí)行單個的賦值語句且給同一個變量賦值,此時,可使用簡單的條件運算來實現(xiàn)。 條件運算符是一個三目運算符,它

28、有3個參與運算的量。由條件運算符組成條件表達式的一般形式為: 求值規(guī)則是:如果表達式1的值為真,則以表達式2 的值作為整個條件表達式的值,如果表達式1的值為假,則以表達式3的值作為整個條件表達式的值。,表達式1?表達式2:表達式3,.,59,3.2.5 條件運算,圖3-5 條件表達式的執(zhí)行過程,.,60,3.2.5 條件運算,例如: if(ab) max=a; else max=b; 可用條件表達式寫成: max=(ab)?a:b; 其執(zhí)行語義是:若ab為真,則把a賦給max,否則把b 賦給max。,.,61,3.2.5 條件運算,【例3-15】用條件表達式實現(xiàn):輸出a、b、c三個變量中的最大

29、值。 #include void main() int a,b,c,max; scanf(%d%d%d, ,如果輸入:291679 運行結(jié)果:max=79,.,62,3.2.6 switch語句,語言提供了另一種用于直接處理多分支選擇的switch語句,其一般形式為:,switch(表達式) case常量表達式1: 語句1; case常量表達式2: 語句2; case常量表達式n: 語句n; default : 語句n+1; ,.,63,3.2.6 switch語句,其語義是:計算switch后面表達式的值,將該值與逐個case后的常量表達式的值相比較,當(dāng)表達式的值與某個常量表達式的值相等時,

30、就執(zhí)行其后的語句,然后不再進行判斷,繼續(xù)執(zhí)行后面所有case后的語句和default后的語句。如果表達式的值與所有case后的常量表達式均不相同時,則執(zhí)行default后的語句。請見【例3-16】。,.,64,3.2.6 switch語句,修改【例3-16】,在每一個case語句之后增加一個break 語句, 使每一次執(zhí)行之后均可跳出switch語句,從而避免輸出不應(yīng)有的結(jié)果。程序改寫如下:,#incdlue void main() int a; printf(please input 1-7 number: ); scanf(%d,.,65,3.2.7 選擇結(jié)構(gòu)程序設(shè)計舉例,【例3-17】輸

31、入3個整數(shù),將它們按由小到大的順序輸出。請見教材中的實例。 【例3-18】 輸入兩個整數(shù)分別給a和b,當(dāng)a大于b時:如果a是b的倍數(shù)則輸出該倍數(shù),否則輸出其余數(shù)。請見教材中的實例。 【例3-19】 輸入運算數(shù)和四則運算符,輸出計算結(jié)果。請見教材中的實例。,.,66,3.3 循環(huán)結(jié)構(gòu)程序設(shè)計,3.3.1 while語句 3.3.2 do-while語句 3.3.3 for語句 3.3.4 循環(huán)的嵌套 3.3.5 break語句和continue語句 3.3.6 循環(huán)結(jié)構(gòu)程序設(shè)計舉例,返回,.,67,3.3.1 while語句,while語句用來實現(xiàn)“當(dāng)型”循環(huán)結(jié)構(gòu),其特點是:先判斷循環(huán)條件,后執(zhí)

32、行循環(huán)體語句。其一般形式為: 其語義是:先判斷循環(huán)條件,如果循環(huán)條件成立(值為非0),執(zhí)行循環(huán)體語句。當(dāng)循環(huán)條件不成立(值為0)時,退出循環(huán)體,執(zhí)行后繼語句。,while(循環(huán)條件) 循環(huán)體語句,.,68,3.3.1 while語句,while語句的流程圖如圖3-6所示 。,圖3-6,.,69,3.3.1 while語句,【例3-20】編寫程序,輸出1100之間所有能被6整除的數(shù)。 #include void main() int i=1; while( i=100) if(i%6=0) printf(%d,i); i+; ,程序運行結(jié)果:6,12,18,24,30,36,42,48,54,6

33、0,66,72,78,84,90,96,.,70,3.3.2 do-while語句,do-while語句用來實現(xiàn)“直到型”循環(huán)結(jié)構(gòu),其特點是:先執(zhí)行一次循環(huán)體語句,然后判斷循環(huán)條件是否成立。do-while語句的一般形式: 其語義:先執(zhí)行一次循環(huán)體語句,再判斷循環(huán)條件,如果循環(huán)條件成立(值為非0),將返回繼續(xù)執(zhí)行循環(huán)體語句,如此反復(fù),直到循環(huán)條件不再成立(值為0),此時退出循環(huán)體,執(zhí)行循環(huán)后面的語句。,do 循環(huán)體語句 while(循環(huán)條件);,.,71,3.3.2 do-while語句,do-while語句的執(zhí)行流程圖如圖3-7所示。,圖3-7,.,72,3.3.2 do-while語句,【

34、例3-21】用do-while語句改寫【例3-20】。 #include void main() int i=1; do if(i%6=0) printf(%4d,i); i+; while( i=100); ,.,73,3.3.3 for語句,for語句是循環(huán)控制結(jié)構(gòu)中使用最廣泛的一種循環(huán)控制語句。for語句的一般形式: 下面用便于理解的方式表示for語句:,for(表達式1;表達式2;表達式3) 循環(huán)體語句,for(初始表達式;循環(huán)條件;增值表達式) 循環(huán)體語句,.,74,3.3.3 for語句,其語義是:求解初始表達式,判斷循環(huán)條件,如果循環(huán)條件成立(值為非0),執(zhí)行循環(huán)體語句,然后求解增值表達式,再判斷循環(huán)條件,如此反復(fù),直到循環(huán)條件不再成立(值為0),此時退出循環(huán)結(jié)構(gòu),執(zhí)行循環(huán)語句后面的語句。for語句流程圖如圖3-8所示。,圖3-

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論