結構化程序相關設計_第1頁
結構化程序相關設計_第2頁
結構化程序相關設計_第3頁
結構化程序相關設計_第4頁
結構化程序相關設計_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、本章導讀 本章從實例分析著手,使讀者了解并掌握C語言三種基本流程控制結構:順序、選擇、循環(huán)結構 ,加深對C語言程序開發(fā)設計過程的感性認識,強化培養(yǎng)編程思路,為進一步進行C語言程序設計打下基礎。 C語言程序設計 環(huán)境)返回本書目錄第3章 結構化程序設計本章主要知識點 (1) 順序結構及程序設計。 (2)選擇結構及程序設計。 (3)循環(huán)結構及程序設計。 (4)結構化程序設計方法、編程思路與綜合實訓第3章 結構化程序設計 C語言程序設計 環(huán)境)返回本章導讀3.2 選擇結構程序設計3.3 循環(huán)結構程序設計3.4 結構化程序設計方法與綜合實訓3.1 順序結構程序設計 C語言程序設計 環(huán)境)返回本章目錄3

2、.1.2 順序結構語句3.1.3 程序實訓3.1.1 順序結構的C程序實例3.1 順序結構程序設計3.1.1 C程序實例 C語言程序設計 環(huán)境)返回本節(jié)目錄C程序實例【例3.1】編程實現:輸入一個長方形的二邊長,求長方形的面積并輸出。/*程序名為。*/#include stdio.h main() float a,b,s; scanf(%f%f,&a,&b); s=a*b;printf(The area of rectangle is %5.2f .n,s); 返回本節(jié)目錄程序運行情況如下:輸入:3.0 4.0 輸出:The area of rectangle is 12.00 .這個程序屬于

3、順序結構,程序是按照書寫的順序自上而下一步步執(zhí)行,程序中的每一條語句都被執(zhí)行一次,且僅能被執(zhí)行一次?!纠?.1】編程 C語言程序設計 環(huán)境)3.1.2 順序結構語句1 C語言程序設計 環(huán)境)C語言的順序結構語句可以分為四大類:1.表達式語句表達式的后面加一個分號就構成了一個語句,例如:sum=a+b; 。事實上,C語言中有使用價值的表達式語句主要有3種:(1)賦值語句。 例如: sum=a+b; (2)自動增1、減1運算符構成的表達式語句。例如: i+;(3)逗號表達式語句。例: x=1,y=2;2.空語句語句僅有一個分號“;”,它表示什么也不做。一般和后面章節(jié)所講循環(huán)語句結合使用起到延時作用

4、。3. 復合語句由和把一些變量定義和執(zhí)行語句組合在一起,稱之為復合語句,又稱語句塊。復合語句的語句形式如下:語句1;語句2;語句n;返回本節(jié)目錄返回本節(jié)目錄例如:int a=0,b=1,sum;sum=a+b;printf(%d,sum);【注意】與C語言中的其他語句不同,復合語句不以分號作為結束符,若復合語句的后面出現分號,那不是該復合語句的組成成分,而是單獨的一個空語句。在復合語句起始部分可以有變量定義,如:int a=0,b=1,sum;,也可以沒有。復合語句的內可能會有多個語句,但在語法上把它整體上視為一條語句看待。4.函數調用語句由一個函數調用加上一個分號組成一個語句,如: scan

5、f(%d%d,&a,&b); printf(a=%d,b=%dn,a,b);3.1.2 順序結構語句2 C語言程序設計 環(huán)境) C語言程序設計 環(huán)境)C程序實例【例3.2】由鍵盤輸入兩個整數給變量a和b,然后輸出a和b,在交換a和b中的值后,再輸出a和b,驗證兩個變量中的數值是否正確地進行了交換。 /*程序名為。*/ #include stdio.h main() int a,b,t; printf(Enter a and b:n); scanf(%d%d,&a,&b);printf(a=%d,b=%dn,a,b); t=a;a=b;b=t; printf(a=%d,b=%dn,a,b); 程

6、序運行情況如下:Enter a and b: 123 456 a=123,b=456 a=456,b=123 返回本節(jié)目錄3.1.3 程序實訓【例3.2】返回本節(jié)目錄注意:在程序中交換兩個變量a 和b的值,不可以簡單地用: a=b;b=a;兩條語句來實現。假設a 和b的值分別為23和78,賦值語句a=b;將使a的值變?yōu)?8,接下來的b=a;使b的值變?yōu)?8,這樣,a和b的值最終都變?yōu)?8。所以在本例中引入了中間變量t,用來臨時存放a的值,這樣才能完成變量a和b的正確交換。【例3. 3】輸入一個double類型的數,使該數保留小數點后兩位,對第三位小數進行四舍五入處理,然后輸出此數,以便驗證處理

7、是否正確。/*程序名為。*/#include stdio.h main() double x; printf(Input x:n); scanf(%lf,&x); 3.1.3 程序實訓【例3.3】 C語言程序設計 環(huán)境)3.1.3 程序實訓【例3. 3】 C語言程序設計 環(huán)境)返回本節(jié)目錄printf(1) x=%fn,x); /*將x輸出*/ x=x*100; x=x+0.5; x=(int)x; x=x/100; /*將x擴大100倍,加上之后取整,再縮小100倍*/ printf(2) x=%fn,x); /*將四舍五入后的x輸出*/ 程序運行情況如下:Input x:3.14159則輸

8、出的結果為:3.1.3 程序實訓【例3.4】 C語言程序設計 環(huán)境)返回本節(jié)目錄【例3.4】從鍵盤上輸入一大寫英文字母,要求改用相應的小寫字母輸出。/*程序名為。*/#include stdio.h main() char c1,c2; scanf(%c,&c1); printf(The upper case is %c .n,c1); c2=c1+a-A; printf(The lower case is %c .n,c2); 程序運行時:輸入:B輸出:The upper case is B . The lower case is b .3.2 選擇結構程序設計 C語言程序設計 環(huán)境)3.2

9、.1 選擇結構的C程序實例3.2.2 if 語句3.2.3 switch 語句3.2.4 程序實訓 返回本章目錄3.2.1 選擇結構的 C程序實例 C語言程序設計 環(huán)境)返回本節(jié)目錄 【例3.5】請輸入兩個整數a,b,比較a+b和ab哪個大,輸出判斷結果。 /*程序名為。*/ #include stdio.h main() int a,b,s1,s2; printf(請輸入兩個整數a,b:); scanf(%d,%d,&a,&b); s1=a+b; s2=a*b; /*求兩個數的和、積*/ if(s1s2) printf(a+b)(a*b) /n); /*語句A*/ else printf(

10、(a+b)=(a*b)n); /*語句B*/ C語言程序設計 環(huán)境)運行結果為: 請輸入兩個整數a,b:2,3 (a+b)s2,則執(zhí)行語句A(跳過語句B不執(zhí)行),否則,就跳過語句A執(zhí)行語句B??梢奿f語句在程序中起到了改變語句執(zhí)行順序的作用。if語句就是我們在下一節(jié)中要介紹的條件分支語句。3.2.1 選擇結構的 C程序實例結果 返回本節(jié)目錄 if 語句 C語言程序設計 環(huán)境). if語句的一般形式返回本節(jié)目錄2. if-else中的復合語句3. 非關系、非邏輯表達式構成的條件表達式4. if語句的嵌套. if語句的一般形式1 C語言程序設計 環(huán)境) 1if語句的一般形式:if語句有兩種形式:

11、(1)不含else子句的if語句語句形式如下:if() 例如if(ab)t=a;a=b;b=t;其中,if是C語言的關鍵字,表達式兩側的圓括號不可少,最后是一條語句,稱為if子句。如果在if子句中需要多個語句,則應該使用花括號把一組語句括起來組成復合語句,這樣在語法上仍滿足一條語句的要求。執(zhí)行過程:首先計算緊跟在if后面一對圓括號中的表達式的值,如果該表達式的值為非零(“真”),則執(zhí)行其后的if子句,然后去執(zhí)行if語句后的下一個語句。如果該表達式的值為零(“假”),則跳過if子句,直接執(zhí)行if語句后的下一個語句。返回目錄. if語句的一般形式2 C語言程序設計 環(huán)境) (2)含else子句的i

12、f語句語句形式如下:if() else執(zhí)行過程:首先計算的值,如果該表達式的值為非零(真),則執(zhí)行,如果該表達式的值為零(假),則跳過,直接執(zhí)行,兩者執(zhí)行其一后再去執(zhí)行if語句后的下一個語句。返回目錄 C語言程序設計 環(huán)境). if語句的一般形式實例【例3.6】求分段函數的值,如果x0, y=2x+1,否則, y=0 。#include stdio.hmain() /*程序名為。*/ int x,y; /*變量y存放f(x)的值*/ printf(請輸入x的值:); scanf(%d,&x); if(x=0) y=2*x+1; else y=0; printf(當x=%d時,f(x)=%d,x

13、,y); 返回目錄. if語句的一般形式實例 C語言程序設計 環(huán)境)運行結果: 請輸入x的值:3 當x=3時,f(x)=7因為輸入x=3,那么x=0為真,所以輸出2*3+1=7。C語言中有一種特有的條件運算符“?:”,我們在前面章節(jié)已作介紹,它在某種程序上可以起到邏輯判斷的作用。本例中的if語句也可用條件運算符表達式實現如下:y=x=0?2*x+1:0; 但有些判斷不能用條件表達式完成,或者很繁瑣、表達不清晰。返回目錄2. if-else中的復合語句 C語言程序設計 環(huán)境)2. if-else中的復合語句 如果兩個分支中需要執(zhí)行的語句不止一條,必須用“”括起來,作為一個復合語句使用。若只是一條

14、語句,“”可以省略?!咀⒁狻?1)if后面的一定要有括號;(2)if和else同屬于一個if語句,else不能作為語句單獨使用,它只是if語句的一部分,與if配對使用,因此程序中不可以沒有if而只有else;(3)只能執(zhí)行與if有關的語句或者執(zhí)行與else有關的語句,而不可能同時執(zhí)行兩者;(4)如果和是非復合語句,那么該語句一定要以分號結束, (5)if語句的表達式可以是任意類型的C語言的合法的表達式,但計算結果必須為整型、字符型或浮點型之一。返回目錄3.非關系、非邏輯表達式構成的條件表達式1 C語言程序設計 環(huán)境)3.非關系、非邏輯表達式構成的條件表達式 【例3.10】以賦值表達式為分支條件

15、的實例。 /*程序名為。*/ #includestdio.h main() int s; if(s=2) printf(hello); else printf(error); if后面圓括號中的表示分支條件的類型不限于邏輯/關系表達式,可以是任意的C語言有效表達式(如賦值表達式,算術表達式等等),因此也可以是作為表達式特例的常量或變量。返回目錄 C語言程序設計 環(huán)境)3.非關系、非邏輯表達式構成的條件表達式2【例3.10】中的條件表達式是一個賦值表達式,并不是判斷s是否等于2。相當于if(2)printf(hello);,這是合法的。由于該條件表達式的值是非零值,恒為真,故本程序的printf

16、(error);無論如何都不會被執(zhí)行。if語句最終執(zhí)行哪一個分支,取決于條件表達式的計算結果。同一個條件的也可以用多種表達方式?!纠?.11】以變量為分支條件的實例。 /*程序名為。*/#include stdio.h main() int x,y; scanf(%d,&x); if(x) y=1; else y=-1; 返回目錄3.非關系、非邏輯表達式構成的條件表達式3 C語言程序設計 環(huán)境)printf(y=%dn,y); 現把程序中if(x)改成if(x!=0),此時雖然條件表達式寫法不同,但是完成的功能是相同的。下面兩種表示方法經常使用:if(x)等價于if(x!=0)if(!x)等價

17、于if(x=0)返回目錄4. if語句的嵌套1 C語言程序設計 環(huán)境) 在一個if語句中又包含另一個if語句,從而構成了if語句的嵌套使用。內嵌的if語句既可以嵌套在if子句中,也可以嵌套在else子句中。例如: 【例3.12】輸入a,b兩個整數的值,比較大小并輸出結果。#include stdio.h“ /*程序名為。*/ main() int a,b; printf(請輸入a,b:) ; scanf(%d%d,&a,&b); if(ab) printf(abn); else if(ab) printf(ay) if(zx) max=z; else if(yx) max=y; printf(

18、 max=%d,max); 運行結果: max=4返回目錄4. if語句的嵌套實例2 C語言程序設計 環(huán)境) 【例3.14】編寫程序,根據輸入的學生成績,給出相應的等級。90分以上的等級為A,60分以下的等級為E,其余每10分一個等級。程序如下:#includestdio.h main() /*程序名為。*/ int g; printf(input g:); scanf(%d,&g); printf(g=%d: ,g); if(g=90) printf(An); else if(g=80) printf(Bn); else if(g=70) printf(Cn); else if(g=60)

19、printf(Dn); else printf(En); 返回目錄4. if語句的嵌套實例3 C語言程序設計 環(huán)境)當執(zhí)行以上程序時,首先輸入、輸出學生的成績,然后進入if語句; if語句中的表達式將依次對學生成績進行判斷,若能使某 if 后的表達式值為1,則執(zhí)行與其相應的子句,之后便退出整個if結構。例如,若輸入的成績?yōu)?8分,首先輸出: g=78 : ,當從上至下逐一檢測時,使g=70這一表達式的值為1,因此在輸出g=78 :之后再輸出C,便退出整個if結構。若輸入的成績?yōu)?0分,首先輸出相應成績g=30:,其次進入相應判斷,最后再輸出相應等級E,便退出整個if結構。返回目錄3.2.3 s

20、witch 語句 C語言程序設計 環(huán)境). switch語句的一般形式返回本節(jié)目錄2. switch語句的執(zhí)行過程3. switch語句的實例1 . switch語句的一般形式 C語言程序設計 環(huán)境)1. switch語句的一般形式switch語句的一般形式是:switch() case : case : case : default: 【說明】:switch語句是關鍵字,其后面大括號里括起來的部分稱為 switch語句體。要特別注意必須寫這一對大括號。switch后的運算結果可以是整型、字符型或枚舉型表達式等,兩邊的括號不能省略。返回目錄 C語言程序設計 環(huán)境)case也是關鍵字,與其后面合

21、稱為case語句標號。的值在運行前必須是確定的,不能改變,因此不能是包含變量的表達式,而且數據類型必須與一致。如: int x=3,y=7, z; switch(z) case 1+2: /*是正確的*/ case x+y: /*是錯誤的*/ case和常量之間要有空格,case后面的常量之后有:。default也是關鍵字,起標號的作用。代表所有case標號之外的那些標號。default可以出現在語句體中任何標號位置上。在switch語句體中也可以無default標號。、等,可以是一條語句,也可以是若干語句。必要時,case 語句標號后的語句可以不寫。1 . switch語句的一般形式返回目錄

22、2 . switch語句的執(zhí)行過程 C語言程序設計 環(huán)境)2. switch語句的執(zhí)行過程首先計算的值,然后在switch語句體內尋找與該吻合的case標號,如果有與該值相等的標號,則執(zhí)行從該標號后開始的各語句,包括在其后的所有case和default語句,直到switch語句體結束。如果沒有與該值相等的標號,并且存在default標號,則從default標號后的語句開始執(zhí)行,直到switch語句體結束。如果沒有與該值相等的標號,并且不存在default標號,則跳過switch語句體,什么也不執(zhí)行。在switch語句中使用break語句break語句也稱間斷語句??梢栽诟鱾€case之后的語句最

23、后加上break語句,每當執(zhí)行到break語句時,立即跳出switch語句體。switch語句通??偸呛蚥reak語句聯合使用,使得switch語句真正起到多個分支的作用。返回目錄3 . switch語句的實例 C語言程序設計 環(huán)境)3. switch語句的實例【例3.17】模擬自動飲料機。按屏幕所示功能,輸入所選擇的合法數字,輸出可獲得的相應飲料名稱。程序如下: /*程序名為。*/#include stdio.hmain() int button; printf(=自動飲料機 =n); printf(1.可口可樂n); printf(2.雪碧n); printf(3.芬達n); printf

24、(4.百事可樂n); printf(5.非??蓸穘); printf(請按1-5鍵選擇飲料:n); scanf(%d,&button); 返回目錄3 . switch語句的實例 C語言程序設計 環(huán)境)switch(button) case 1:printf(n你獲得一聽可口可樂n);break; case 2:printf(n你獲得一聽雪碧n);break; case 3:printf(n你獲得一聽芬達n);break; case 4:printf(n你獲得一聽百事可樂n);break; case 5:printf(n你獲得一聽非??蓸穘);break; default:printf(n非法操

25、作!n);break; 運行結果:=自動飲料機=1.可口可樂2.雪碧3.芬達4.百事可樂5.非??蓸氛埌?-5按鈕選擇飲料:3你獲得一聽芬達返回目錄 C語言程序設計 環(huán)境)返回本章目錄3.3.2 while語句3.3.3 do-while語句3.3.1 循環(huán)結構的C程序實例3.3 循環(huán)結構程序設計3.3.4 for 語句3.3.5 循環(huán)的嵌套3.3.6 break語句和continue語句3.3.7 程序實訓3.3.1 循環(huán)結構的C程序實例 C語言程序設計 環(huán)境)【例3.19】有一張厚度為毫米的紙,假設它足夠大,重復將其對折,問對折多少次之后,其厚度可以抵達(再對折一次就超過)珠穆朗瑪峰的高度

26、?程序如下: main() /*程序名為。*/ double h=0.1; int n=0; /* n用來累計對折次數*/ while(h=8848180) h=h*2; n=n+1; printf(對折次數為:%d,此時厚度:%.2fn,n-1,h/2); 重復對折一張紙,實質就是厚度乘以2,次數加1。用順序結構編程為:h=h*2; n=n+1; 這樣的語句一直重復寫到h滿足題目要求為止。實際中這類問題,就可用循環(huán)結構編程實現。本例中,使用的是循環(huán)結構中的while語句。C語言共有三種類型的循環(huán)語句,while、do-while和for語句。返回本節(jié)目錄3.3.2 while語句 C語言程序

27、設計 環(huán)境)返回本節(jié)目錄1.while語句的一般形式while()說明:while語句是C的關鍵字,其后面的一對括號中的,可以是C語言的任意合法表達式,由它來控制循環(huán)體語句是否執(zhí)行,括號不能省略。可以是一條語句,也可以是多條語句,一般來說循環(huán)體是一條語句時不用加,如果是多條語句,就一定要加 構成復合語句。其中的語句可以是空語句、表達式語句或作為循環(huán)體一部分的復合語句,如果循環(huán)體是一個空語句,表示不執(zhí)行任何操作(一般用于延時)。(1)計算while后一對括號中的的值。當值為非零時,則執(zhí)行步驟(2);當值為零時,則執(zhí)行步驟(3)。(2)執(zhí)行后,轉去執(zhí)行步驟(1)。(3)退出while循環(huán)。2.wh

28、ile語句的執(zhí)行過程while語句實例 C語言程序設計 環(huán)境)語句實例 例3.21】用while循環(huán)語句實現從1加到100,并將結果打印出來。 /*程序名為。*/#include stdio.hmain() / *若sum的值超過int型變量能表示的范圍,則設置成長整型*/ int sum=0,i=1; while(i=100) sum+=i; i+; printf(其和是 %dn,sum); /*若sum為長整型,則相應的輸出也設置成長整型ld*/ 運行結果:其和是5050返回本節(jié)目錄 do while();說明:do是C語言的關鍵字,必須和while聯合使用。do-while循環(huán)由do開始

29、,用while結束;注意,在while結束后必須有分號,它表示該語句的結束。其它同while循環(huán)語句。3.3.3 do-while語句 C語言程序設計 環(huán)境)1.do-while語句的一般形式返回本節(jié)目錄2.do-while語句的執(zhí)行過程(1)執(zhí)行do后面的。 (2)計算while后一對括號中的的值。當值為非零時,轉去執(zhí)行步驟(1)。當值為零時,則執(zhí)行步驟(3)。 (3)退出while循環(huán)。運行結果:其和是5050在本例中,循環(huán)條件和循環(huán)體以及得到的結果都是和while循環(huán)一樣的,只是用do-while語句來實現。do-while語句實例 C語言程序設計 環(huán)境)語句實例 【例3.23】用do-

30、while語句實現求1+2+100的和。#include stdio.h /*程序名為。*/main() int sum=0,i=1; / *若sum的值超過int型變量能表示的范圍,則設置成長整型*/ do sum+=i; i+; while(i=100); printf(其和是 %dn,sum); /*若sum為長整型,則相應的輸出也設置成長整型ld*/ 返回本節(jié)目錄3.3.4 for 語句 C語言程序設計 環(huán)境)for語句是C語言提供的一種在功能上比前面兩種循環(huán)語句更強的一種循環(huán)語句。for循環(huán)語句格式如下:for(;)說明:for是C語言的關鍵字,三個表達式之間的必須用分號;隔開。三個

31、表達式可以是任意形式的C表達式,通常主要用于for循環(huán)的控制。一般用于計算循環(huán)變量初始值,為循環(huán)體是否執(zhí)行的條件,為循環(huán)變量的調整。的使用同while、do-while循環(huán)語句。for循環(huán)語句的格式還可以表示為:for(;)在某種情況下,用for語句表示循環(huán),顯得緊湊而清晰。尤其是它能利用自動地使循環(huán)變量發(fā)生改變,不像while結構那樣要在循環(huán)體中設置修正操作。實際上,for語句中的不僅限于修正循環(huán)變量,而且可以是任何操作。例如前面例題中介紹的求1到100的和,用for語句可以表示為: for(sum=0,i=1;i=n;sum+=i,i+);返回本節(jié)目錄1.for語句的一般形式for 語句的

32、執(zhí)行過程 C語言程序設計 環(huán)境)返回本節(jié)目錄語句的執(zhí)行過程首先計算。求的值;若其值為非零,則轉去執(zhí)行;若的值為零,則轉去執(zhí)行,結束for語句。執(zhí)行一次for循環(huán)體。求解,轉執(zhí)行。結束循環(huán),執(zhí)行循環(huán)之后的語句。3.for語句實例【例3.25】用for語句實現求1-100之和。#include stdio.hmain() /*程序名為。 int sum=0,i=1; / *若sum的值超過int型變量能表示的范圍,則設置為長整型*/for 語句的實例 C語言程序設計 環(huán)境)返回本節(jié)目錄for( ;i=n;i+) sum+=i;printf(其和是 %dn,sum); /*若sum為長整型,則相應的

33、輸出也設置成長整型ld*/ 運行結果:其和是5050for循環(huán)的執(zhí)行過程:先執(zhí)行表達式1,為空語句,然后判斷i=n是否成立,如果為真,執(zhí)行循環(huán)體sum+=i,轉而執(zhí)行i+,再判斷i=n,如此反復,直到i=n為假為止。在這個例子中,i是循環(huán)控制變量,每次循環(huán)時,它的值都被改變且進行檢驗。for 語句多樣性 C語言程序設計 環(huán)境)返回本節(jié)目錄for語句的多樣性由于C語言中表達式的形式十分豐富,對for語句的三個控制表達式可以靈活運用,因此造成for語句形式多種多樣。(1)為空語句如上例中求1-100的和。本來由完成的初始化可提到循環(huán)之外完成。(2)和是逗號表達方式(3)用空循環(huán)來延長時間常用空循環(huán)

34、來產生延時,以達到某種特定要求。如:for(t=0;ttime;t+);(4)無限循環(huán)for循環(huán)的三個表達式中,任何一個都可以省略,但是分號;不可省略。所以下面的寫法:for(;)是一個無限循環(huán)。將成為死循環(huán)。3.3.5 循環(huán)的嵌套 C語言程序設計 環(huán)境)返回本節(jié)目錄在一個循環(huán)內又完整地包含另一個循環(huán),稱為循環(huán)的嵌套,即循環(huán)體自身包含循環(huán)語句。前面介紹了三種類型的循環(huán),它們自己本身可以嵌套,如在for循環(huán)中包含另一個for循環(huán),也可以互相嵌套,例如可以for循環(huán)中包含一個while循環(huán)或者do-while循環(huán)等等。下面通過幾個例子來介紹循環(huán)嵌套的概念和運用。【例3.26】打印如下形式的乘法小九

35、九表:1*1=12*1=2 2*2=49*1=9 9*2=18 9*3=27 9*9=81分析:表體共九行,所以首先考慮一個打印九行的算法:for(i=1;i=9;i+) 打印第i行其次考慮如何打印第i行。每行都有i個表達式?*?=積,可以寫為:for(j=1;j = i;j+) 打印第j個表達式循環(huán)的嵌套實例 C語言程序設計 環(huán)境)返回本節(jié)目錄打印第j個表達式,可寫為:printf(%d*%d=%-3d,i,j,i*j);在寫這個語句時,不寫換行,只能在第j個表達式輸出后寫一個語句使之換行。printf(n);綜上所述,打印以上形式的乘法小九九表的程序如下:【例3.26】 /*程序名為。*/

36、#include stdio.hmain() int i,j; /* i,j 分別控制行和列的輸出*/for(i=1;i=9;i+) for(j=1;j = i;j+) printf(%d*%d=%-3d,i,j,i*j);printf(n); /*另起一行*/ 3.3.6 break語句和continue語句 C語言程序設計 環(huán)境)返回本節(jié)目錄1. break語句2. continue語句1. break語句 C語言程序設計 環(huán)境)返回目錄1. break語句前面已經介紹過用break語句跳出當前的switch語句流程。在循環(huán)結構中,也可以用break語句使流程跳出本層循環(huán)體,從而提前強制性

37、結束本層循環(huán)。break語句的一般形式為: break;【例3.28】在循環(huán)體中break語句執(zhí)行示例。#include stdio.h main() /*程序名為。*/ int i,s=0; for(i=1;i5) break; printf(s=%dn,s); printf(使用break語句時,s的最終值為:%dn,s); break語句 C語言程序設計 環(huán)境)程序運行后的輸出結果如下:s=1s=3使用break語句時,s的最終值為:6本例中,如果沒有break語句,程序將進行10次循環(huán);但當i=3時,s的值為6,if語句中的表達式s5 值為1,于是執(zhí)行break語句, 循環(huán)立即中斷,跳

38、出for循環(huán),從而提前中止循環(huán),并轉向循環(huán)體外的下一條語句。此時,s的值為6。break語句使用說明:(1)只能在switch語句體和循環(huán)體內使用break語句。(2)當break語句出現在,其作用是跳出該switch語句體。當break語句出現在循環(huán)體中,但并不在switch語句體內時,則在執(zhí)行break語句后,使流程跳出本層循環(huán)體。返回目錄2. Continue語句 C語言程序設計 環(huán)境)語句continue語句的一般形式為: continue;【例3.30】將【例3.28】中的break語句改用continue語句,來比較兩者的區(qū)別。#include stdio.h main() /*程序名為。*/ int i,s=0; for(i=1;i5) cont

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論