




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 1 第第4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu)4.1 C4.1 C語言的執(zhí)行語句語言的執(zhí)行語句4.2 4.2 順序結(jié)構(gòu)順序結(jié)構(gòu) 4.3 4.3 選擇結(jié)構(gòu)選擇結(jié)構(gòu)4.4 4.4 循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 2 4.1 C C語言的執(zhí)行語句語言的執(zhí)行語句C程序組成程序組成C C程序程序源程序文件源程序文件1 1源程序文件源程序文件2 2源程序文件源程序文件3 3預(yù)處理命令預(yù)處理命令函數(shù)函數(shù)n n函數(shù)函數(shù)1 1數(shù)據(jù)聲明數(shù)據(jù)聲明函數(shù)首部函數(shù)首部函數(shù)體函數(shù)體數(shù)
2、據(jù)聲明數(shù)據(jù)聲明執(zhí)行語句執(zhí)行語句 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 3 4.1 C語言的執(zhí)行語句語言的執(zhí)行語句C語句的分類:語句的分類:表達式語句表達式語句空語句空語句復(fù)合語句復(fù)合語句1.控制語句控制語句 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 4 表達式語句表達式語句賦值語句:變量賦值語句:變量 = 表達式表達式 ; 功能:將功能:將“=”右側(cè)表達式的值賦給左側(cè)右側(cè)表達式的值賦給左側(cè)變量的值。變量的值。函數(shù)調(diào)用語句;函數(shù)調(diào)用語句; 例如例如 putchar(ch); C語言語言程序設(shè)計程序設(shè)計 第第4 4章章
3、 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 5 空語句和復(fù)合語句空語句和復(fù)合語句空語句:僅由一個分號構(gòu)成的語句,在執(zhí)行時空語句:僅由一個分號構(gòu)成的語句,在執(zhí)行時不產(chǎn)生任何指令。不產(chǎn)生任何指令。復(fù)合語句:用一對花括號復(fù)合語句:用一對花括號 將多個語句括起來將多個語句括起來構(gòu)成一個整體。構(gòu)成一個整體。 注意:注意: 1)復(fù)合語句中的每個語句必須以分號;結(jié)束)復(fù)合語句中的每個語句必須以分號;結(jié)束但右花括號但右花括號后不能有分號后不能有分號 2)復(fù)合語句中可以有自己的數(shù)據(jù)說明)復(fù)合語句中可以有自己的數(shù)據(jù)說明 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 6 控制語句控制語句
4、條件選擇語句:條件選擇語句:if開關(guān)分支語句:開關(guān)分支語句:switch當循環(huán)語句:當循環(huán)語句:while直到循環(huán)語句:直到循環(huán)語句:do while計數(shù)循環(huán)語句:計數(shù)循環(huán)語句:for中止本次循環(huán)語句:中止本次循環(huán)語句:continue中止整個循環(huán)語句:中止整個循環(huán)語句:break函數(shù)返回語句:函數(shù)返回語句:return無條件轉(zhuǎn)移語句:無條件轉(zhuǎn)移語句:goto C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 7 順序結(jié)構(gòu)順序結(jié)構(gòu)順序結(jié)構(gòu)程序:由兩個或兩個以上的語句組成,順序結(jié)構(gòu)程序:由兩個或兩個以上的語句組成,先執(zhí)行先執(zhí)行 A 操作,然后再執(zhí)行操作,然后再執(zhí)行
5、B 操作。操作。 傳統(tǒng)流程圖傳統(tǒng)流程圖 N-S流程圖流程圖 A B A B C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 8 順序結(jié)構(gòu)程序設(shè)計舉例順序結(jié)構(gòu)程序設(shè)計舉例 例例4.1 輸入任意兩個整數(shù),求它們的和及平均值。要求平輸入任意兩個整數(shù),求它們的和及平均值。要求平均值取兩位小數(shù)輸出。均值取兩位小數(shù)輸出。#include int main() int num1,num2; float sum,aver; printf(Please input two integers: n); scanf(%d,%d,&num1,&num2); sum=(f
6、loat)num1+num2; /*求累計和求累計和*/ aver=sum/2.0; /*求平均值求平均值*/ printf(sum=%.0f,aver=%.2fn,sum,aver); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 9 順序結(jié)構(gòu)程序設(shè)計舉例順序結(jié)構(gòu)程序設(shè)計舉例例例4.2 給定一個三位正整數(shù),分別輸出它的個位數(shù)、十位數(shù)給定一個三位正整數(shù),分別輸出它的個位數(shù)、十位數(shù)和百位數(shù)。和百位數(shù)。#include int main() int m,m0,m1,m2; printf(Input a number(100999): ); sc
7、anf(%d,&m); m0=m%10; m1=(m/10)%10; m2=m/100; printf(The three digits are); printf(%d,%d,%d n,m0,m1,m2); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 10 順序結(jié)構(gòu)程序設(shè)計舉例順序結(jié)構(gòu)程序設(shè)計舉例例例4.4 求方程求方程ax2+bx+c=0的根。的根。a、b、c由鍵盤輸入,由鍵盤輸入,a0且且b2-4ac0。#include #include int main() float a,b,c,d,x1,x2; printf(Input
8、 a,b,c: ); scanf(%f,%f,%f,&a,&b,&c); d=b*b-4*a*c;/*求判別式的值賦給求判別式的值賦給d*/ x1=(-b+sqrt(d)/(2*a); x2=(-b-sqrt(d)/(2*a); printf(x1=%.4fnx2=%.4fn,x1,x2); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 11 4.3 選擇結(jié)構(gòu)選擇結(jié)構(gòu) C語言的選擇控制結(jié)構(gòu)語句有:語言的選擇控制結(jié)構(gòu)語句有:if語句和語句和switch語句語句if 語句是用來判斷所給定的條件是否滿語句是用來判斷所給定的
9、條件是否滿足,根據(jù)判定的結(jié)果足,根據(jù)判定的結(jié)果(真或假真或假)決定執(zhí)行決定執(zhí)行給定的某種操作之一。給定的某種操作之一。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 12 if 語句的形式語句的形式1單分支結(jié)構(gòu)單分支結(jié)構(gòu) 格式格式: if (表達式表達式) 語句語句 執(zhí)行過程:執(zhí)行過程:語句語句成立成立表達式表達式不成立不成立 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 13 if語句舉例語句舉例1例例 輸入兩個實數(shù),按升序輸出兩個實數(shù)。輸入兩個實數(shù),按升序輸出兩個實數(shù)。解法一:解法一:#include int main(
10、) float a,b; scanf(%f%f,&a,&b); if ( ab) printf(%f,%fn,b,a); return 0;單邊條件單邊條件(條件判斷(條件判斷兩次)兩次) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 14 if 語句的形式語句的形式2雙分支結(jié)構(gòu)雙分支結(jié)構(gòu) 格式格式: if (表達式表達式) 語句語句1 else 語句語句2 執(zhí)行過程:執(zhí)行過程:不成立不成立語句語句1語句語句2成立成立表達式表達式 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 15 if語句舉例語句舉例1例例
11、輸入兩個實數(shù),按升序輸出兩個實數(shù)。輸入兩個實數(shù),按升序輸出兩個實數(shù)。解法二:解法二:#include int main ( ) float a,b; scanf(%f%f,&a,&b); if (ab) printf(%f, %fn,b,a); else printf(%f,%fn,a,b); return 0;雙邊條件雙邊條件(條件判斷(條件判斷一次)一次) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 16 if語句舉例語句舉例1解法三:解法三:#include int main( ) float a,b,t; scanf(%f%f,&am
12、p;a,&b); if( ab) t=a; a=b; b=t; /*兩個變量交換數(shù)據(jù)兩個變量交換數(shù)據(jù)*/ printf(%f,%fn,a,b); return 0;單邊條件單邊條件(條件判斷(條件判斷一次)一次)3個語句用花括號個語句用花括號括起來構(gòu)成括起來構(gòu)成1個復(fù)個復(fù)合語句合語句若不使用復(fù)合語句,若不使用復(fù)合語句,則可用則可用t=a, a=b, b=t; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 17 if 語句的形式語句的形式3多分支結(jié)構(gòu)多分支結(jié)構(gòu) 格式格式: if (表達式表達式1) 語句語句1 else if (表達式表達式2) 語句語句
13、2 else if (表達式表達式3) 語句語句3 : : else if (表達式表達式n) 語句語句n else 語句語句n+1假假語句語句1真真表達式表達式1 1表達式表達式2 2表達式表達式3 3表達式表達式n n語句語句n+1語句語句n語句語句3語句語句2真真真真真真假假假假假假 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 18 if語句舉例語句舉例2 例例 根據(jù)所輸入的根據(jù)所輸入的x之值,求之值,求解法一:用多分支解法一:用多分支if 語句語句 #include int main ( ) int x,y; scanf(%d,&x); if
14、(x0) y=1; else if(x=0) y=0; else y=-1; printf(x=%d,y=%dn,x,y); return 0; 1 (x0)y= 0 (x=0) -1 (x0) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 19 if語句舉例語句舉例2解法二:用多個單分支解法二:用多個單分支if 語句語句#include int main ( ) int x,y; scanf(%d,&x); if(x0) y=1; if(x=0) y=0; if(x0) y=-1; printf(x=%d,y=%dn,x,y); return 0;
15、C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 20 if語句舉例語句舉例2解法三:用雙分支解法三:用雙分支if 語句的嵌套語句的嵌套 #include int main ( ) int x,y; scanf(%d,&x); if (x=0) if (x0) y=1; else y=0; else y=-1; printf(x=%d,y=%dn,x,y); return 0;這是一個這是一個嵌套結(jié)構(gòu)嵌套結(jié)構(gòu) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 21 if 語句的嵌套語句的嵌套 在在if 語句中又包含一個或多個語
16、句中又包含一個或多個if 語句語句,稱為稱為if 語句語句的嵌套的嵌套 一般形式一般形式: if (條件條件1 ) if (條件條件2 ) 語句語句1 else 語句語句2 else if (條件條件3) 語句語句3 else 語句語句4if 與與 else 的配對關(guān)系:從最內(nèi)層開始的配對關(guān)系:從最內(nèi)層開始, else 總是與總是與它上面最近的且尚未配對的它上面最近的且尚未配對的 if 配對。配對。 為了使邏輯關(guān)系清晰,為了使邏輯關(guān)系清晰,建議采用建議采用“分層縮進書分層縮進書寫格式寫格式”。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 22 在內(nèi)嵌在內(nèi)嵌i
17、f語句中要注意配對關(guān)系語句中要注意配對關(guān)系 結(jié)合右圖,觀察以下程序:結(jié)合右圖,觀察以下程序:#include int main ( ) int x,y; scanf(%d,&x); y= -1; if (x!=0) if (x0) y=1; else y=0; printf(x=%d,y=%dn,x,y); 輸入輸入 0 輸出結(jié)果:輸出結(jié)果:x=0,y= -1真正的配對真正的配對結(jié)果錯誤結(jié)果錯誤假假y=1真真 x!=0 x!=0 x0 x0y=-1y=0真真假假 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 23 在內(nèi)嵌在內(nèi)嵌if語句中要注意配對關(guān)系語
18、句中要注意配對關(guān)系在內(nèi)嵌在內(nèi)嵌if語句中加花括號改變配對關(guān)系語句中加花括號改變配對關(guān)系#include int main ( ) int x,y; scanf(%d,&x); y=-1; if (x!=0) if (x0) y=1; else y=0; printf(x=%d,y=%dn,x,y); return 0;結(jié)論:如果內(nèi)層結(jié)論:如果內(nèi)層if 語句為單邊結(jié)構(gòu),要加花括號語句為單邊結(jié)構(gòu),要加花括號花括號改變配花括號改變配對關(guān)系對關(guān)系結(jié)果正確結(jié)果正確正確配對正確配對 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 24 條件運算符的應(yīng)用條件運算符的應(yīng)
19、用例:輸入一個字符,判斷它是否大寫字母,若是例:輸入一個字符,判斷它是否大寫字母,若是將其轉(zhuǎn)換為小寫;否則原樣輸出。將其轉(zhuǎn)換為小寫;否則原樣輸出。 #include int main( ) char ch ; scanf(%c,&ch); ch=(ch=A & ch=Z)? ch+32:ch; printf (%cn,ch) return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 25 switch 語句(多分支選擇語句,開關(guān)語句)語句(多分支選擇語句,開關(guān)語句) switch 語句的格式語句的格式: switch (表達式表達式)
20、case 常量表達式常量表達式1 : 語句語句1; break; case 常量表達式常量表達式2 : 語句語句2; break; case 常量表達式常量表達式3 : 語句語句3; break; case 常量表達式常量表達式n : 語句語句n;break; default : 語句語句n+1 執(zhí)行過程:執(zhí)行過程: 先計算先計算switch后面表達式的值,后面表達式的值,如果與某個如果與某個case后的常量值相等,則執(zhí)行其后后的常量值相等,則執(zhí)行其后的語句;若所有的語句;若所有case中的常量值都不能與之匹中的常量值都不能與之匹配,則執(zhí)行配,則執(zhí)行default后的語句后的語句n+1。根據(jù)此
21、表達式的根據(jù)此表達式的值找入口值找入口一般為常量,一般為常量,VC要要求為求為int或或char型型 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 26 switch 語句流程圖(無語句流程圖(無break語句)語句)注意注意: 執(zhí)行完入口語句后執(zhí)行完入口語句后,則自動轉(zhuǎn)到下一個則自動轉(zhuǎn)到下一個case后面的語句執(zhí)行;后面的語句執(zhí)行;表達式表達式語句語句1語句語句2語句語句3語句語句n語句語句n+1=常量常量3=常量常量2=常量常量1=其它其它=常量常量n C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 27 switch 語句
22、流程圖(有語句流程圖(有break語句)語句)注意注意: 如果語句中有如果語句中有break;,則執(zhí)行完一個入,則執(zhí)行完一個入口語句后跳出口語句后跳出switch選擇結(jié)構(gòu)。選擇結(jié)構(gòu)。 表達式表達式語句語句1語句語句2語句語句3語句語句n語句語句n+1=常量常量3=常量常量2=常量常量1=其它其它=常量常量n C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 28 switch語句舉例語句舉例例:輸入成績等級例:輸入成績等級,打印出百分制分數(shù)段。打印出百分制分數(shù)段。#include int main( ) char c; printf(Please enter a
23、charn); c=getchar( ); c=(c=a & c=z)?c-32:c; switch(c) case A : printf(“90100n); break; case B : printf(“8089n); break; case C : printf(“7079n); break; case D : printf(“6069n); break; case E : printf(60n); break; default : printf(errorn); return 0;注意:注意:case后面應(yīng)為字后面應(yīng)為字符常量符常量A、B等,不等,不能為變量能為變量A、B等。等
24、。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 29 switch語句舉例(無語句舉例(無break語句的效果)語句的效果)例例4.9:輸入成績等級:輸入成績等級,打印出百分制分數(shù)段。打印出百分制分數(shù)段。#include int main( ) char c; printf(Please enter a charn); c=getchar( ); c=(c=a & c=z)?c-32:c; switch(c) case A : printf(“90100n); case B : printf(“8089n); case C : printf(“707
25、9n); case D : printf(“6069n); case E : printf(60n); default : printf(errorn); return 0;去掉去掉break語句,程序語句,程序運行后,從鍵盤上輸入運行后,從鍵盤上輸入b,則程序運行,則程序運行的順序和結(jié)果如下:的順序和結(jié)果如下: 8089 70796069 60 error C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 30 switch 語句使用說明語句使用說明 各個分支中如果沒有各個分支中如果沒有break語句,則執(zhí)行了相語句,則執(zhí)行了相應(yīng)的操作后,會自動轉(zhuǎn)到下一個應(yīng)的操
26、作后,會自動轉(zhuǎn)到下一個case后面的語后面的語句執(zhí)行。句執(zhí)行。case后面的常量值不能相同。后面的常量值不能相同。各個分支中允許有多個語句,可以不用各個分支中允許有多個語句,可以不用 括起括起來。來。各個各個case和和default分支的順序可以改變,但分支的順序可以改變,但default總是最后考慮的入口。如果各個分支中總是最后考慮的入口。如果各個分支中均有均有break語句,各個分支的出現(xiàn)次序不影響語句,各個分支的出現(xiàn)次序不影響執(zhí)行結(jié)果。執(zhí)行結(jié)果。可以使多個可以使多個case共用同一組執(zhí)行語句。共用同一組執(zhí)行語句。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) P
27、age 31 例例4.10 輸入百分制成績,要求輸出相應(yīng)的五級制成績。輸入百分制成績,要求輸出相應(yīng)的五級制成績。百分制成績與五級制成績之間的轉(zhuǎn)換標準為:百分制成績與五級制成績之間的轉(zhuǎn)換標準為:90分以分以上為上為“A”,80-89分為分為“B”,70-79分為分為“C”,60-69分分為為“D”,60分以下為分以下為“E”。#include int main ( ) int score; scanf(%d,&score); switch (score/10) case 10: case 9: printf(An);break; case 8: printf(Bn);break; cas
28、e 7: printf(Cn);break; case 6: printf(Dn);break; default: printf(En); return 0; switch 語句舉例語句舉例 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 32 上題也可用多分支上題也可用多分支if語句實現(xiàn),見課本語句實現(xiàn),見課本P71例例4.7。#include int main ( ) int score; scanf(%d,&score); if (score=90) printf(An); else if (score=80) printf(Bn); else i
29、f (score=70) printf(Cn); else if (score=60) printf(Dn); else printf(En); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 33 選擇結(jié)構(gòu)程序設(shè)計舉例選擇結(jié)構(gòu)程序設(shè)計舉例 判斷字母、數(shù)字判斷字母、數(shù)字 分段函數(shù)值的計算分段函數(shù)值的計算 三個數(shù)中求最大數(shù)三個數(shù)中求最大數(shù) 求三角形面積求三角形面積判斷閏年判斷閏年計算器程序計算器程序求一元二次方程的根求一元二次方程的根 對三個數(shù)進行升序排序?qū)θ齻€數(shù)進行升序排序 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu)
30、 Page 34 例例1:從鍵盤上輸入一個字符判斷是數(shù)字、字母:從鍵盤上輸入一個字符判斷是數(shù)字、字母或其它字符。課本或其它字符。課本P81 例例4.13 #include int main( ) char c; c=getchar( ) ; if ( c=A&c=a & c=0 & c=9 ) printf(digitn); else printf(othern); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 35 例例2:計算分段函數(shù)。課本:計算分段函數(shù)。課本P73 例例4.8#include int main
31、( ) float x,y; scanf(%f,&x); if(x0) y=0; else if(xmax,則,則max改為改為b; v 將將c與與max進行比較,若進行比較,若cmax,則,則max改為改為c. 于于是變量是變量max中存放的就是三個數(shù)中的最大數(shù)。中存放的就是三個數(shù)中的最大數(shù)。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 37 解解1) #include int main( ) int a,b,c,t; scanf(%d,%d,%d, &a,&b,&c); if(ab) t=a;a=b;b=t; if(ac)
32、 t=a;a=c;c=t; printf(“max=%dn,a); return 0;解解2) #include int main( ) int a,b,c,max; scanf(%d,%d,%d, &a,&b,&c); max=a; if(bmax) max=b; if(cmax) max=c; printf(“max=%dn,max); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 38 例:對三個數(shù)進行升序排序例:對三個數(shù)進行升序排序 思路:思路:1.先將先將a、b進行比較,將二者之中的較小者放入進行比較,將二
33、者之中的較小者放入變量變量a中,較大者放入中,較大者放入b中,這樣中,這樣a中就是中就是a、b中較小數(shù);中較小數(shù);2.再將變量再將變量a與變量與變量c進行比較,將進行比較,將a、c中的較小中的較小者放到者放到a中,較大者放到中,較大者放到c中,這樣,變量中,這樣,變量a中存中存放的就一定是三個數(shù)中的最小數(shù);放的就一定是三個數(shù)中的最小數(shù);3.最后將最后將b和和c進行比較,將二者之中較小者放入進行比較,將二者之中較小者放入變量變量b中,較大者放入變量中,較大者放入變量c中,就完成了對三中,就完成了對三個數(shù)的升序排序。個數(shù)的升序排序。 也就是說,對三個數(shù)進行排序,需要進行也就是說,對三個數(shù)進行排序,
34、需要進行3次比較。次比較。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 39 #include int main( ) int a,b,c,t; scanf(%d,%d,%d,&a,&b,&c); if(ab) t=a;a=b;b=t; if(ac) t=a;a=c;c=t; if(bc) t=b;b=c;c=t; printf(%d,%d,%dn,a,b,c); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 40 例例4 輸入三角形三邊長,求三角形面積。課本輸入三角形三邊長,求三
35、角形面積。課本P82 例例4.14#include #include int main() float a,b,c,s,area; scanf(%f,%f,%f,&a,&b,&c); if ( a+bc & a+cb & b+ca ) s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c); printf(area=%7.2fn,area); else printf(Not a triangle.n); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 41 例例5:判斷閏年
36、算法,閏年的條件:判斷閏年算法,閏年的條件:能被能被4整除,整除,但不能被但不能被100整除;整除;能被能被100整除,又能被整除,又能被400整除。整除。 否否輸出輸出year不不是閏年是閏年 是是year%4!=0 year%100!=0 year%400!=0 輸出輸出year是是閏年閏年 輸出輸出year不不是閏年是閏年 輸出輸出year是是閏年閏年 是是是是否否否否 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 42 解解1)用多邊)用多邊if語句實現(xiàn)語句實現(xiàn) #include int main() int year; scanf(%d,&y
37、ear); if (year%4!=0) printf (%d is not a leap yearn,year); else if (year%100!=0) printf (%d is a leap yearn,year); else if (year%400!=0) printf (%d is not a leap yearn,year); else printf (%d is a leap yearn,year); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 43 解解2)多邊)多邊if語句語句+用變量用變量leap標識是否閏年標
38、識是否閏年 #include int main( ) int year,leap; scanf(%d,&year); if (year%4!=0) leap=0; else if (year%100!=0) leap=1; else if (year%400!=0) leap=0; else leap=1; if (leap) printf(%d is a leap yearn,year); else printf(%d is not a leap yearn,year); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 44 解解3
39、)直接用復(fù)合條件判斷閏年)直接用復(fù)合條件判斷閏年 #include int main( ) int year,leap; scanf(%d,&year); if (year%4=0&year%100!=0) | (year%400=0) printf(%d is a leap yearn,year); else printf(%d is not a leap yearn,year); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 45 例例6 計算器程序。用戶輸入運算數(shù)和四則運算符,輸出運計算器程序。用戶輸入運算數(shù)和四則運算
40、符,輸出運算結(jié)果。當輸入運算符不是算結(jié)果。當輸入運算符不是“+”、“-”、“*”或或“/”時時提示出錯,當輸入除數(shù)為提示出錯,當輸入除數(shù)為0時也提示出錯。時也提示出錯。課本課本P80 例例4.12#include #include int main() float a,b; char c; scanf(%f%c%f,&a,&c,&b); switch(c) case +: printf(=%fn,a+b);break; case -: printf(=%fn,a-b);break; case *: printf(=%fn,a*b);break; case /: if(
41、b=0 ) printf(Division by zero!n); else printf(=%fn,a/b); break; default: printf(Operator error!n); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 46 例例7 求一元二次方程的根算法。課本求一元二次方程的根算法。課本P85 例例4.17輸入輸入 a,b,c a=0 輸出輸出“非非二次方程二次方程”disc=b2-4ac disc=0 輸出兩個實根輸出兩個實根 輸出兩個復(fù)根輸出兩個復(fù)根 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序
42、控制結(jié)構(gòu) Page 47 #include int main( ) float a,b,c,disc,x1,x2,real,imag; scanf(%f,%f,%f,&a,&b,&c); if( fabs(a)=1e-6) printf(“not a quadraticn); else disc=b*b-4*a*c; if( fabs(disc)0) x1=(-b+sqrt(disc)/(2*a); x2=(-b-sqrt(disc)/(2*a); printf(distinct real roots: %8.4f and %8.4f, x1,x2); else rea
43、l=-b/(2*a); imag=sqrt(-disc)/(2*a); printf(complex roots: n); printf(%8.4f+%8.4fin,real,imag); printf(%8.4f-%8.4fin,real,imag); return 0;表示表示a等于等于0表示表示disc等于等于0注意注意a= =0 這種這種表示不夠準確!表示不夠準確! C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 48 4.4 循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)C語言的循環(huán)結(jié)構(gòu)共有下列三種:語言的循環(huán)結(jié)構(gòu)共有下列三種:v while 語句語句 v do-while 語句語
44、句 v for 語句語句 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 49 4.4 循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)舉例舉例 求求1100之間所有整數(shù)的和之間所有整數(shù)的和 開始開始0sum1ii=100sum+isumi+1i否否是是輸出輸出sum的值的值;開始開始0sum1ii=100sum+isumi+1i否否是是輸出輸出sum的值的值;當當型型循循環(huán)環(huán)直直到到型型循循環(huán)環(huán) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 50 while 語句語句 格式:格式: while (表達式表達式) 語句語句 語句語句循環(huán)體循環(huán)體假假(0)真真(
45、非非0)表達式表達式注:循環(huán)體可能一注:循環(huán)體可能一次也不執(zhí)行。次也不執(zhí)行。當表達式為真時當表達式為真時 語句語句 (循環(huán)體)(循環(huán)體) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 51 while 語句語句例例4.18 用用while語句求語句求1100之間整數(shù)和之間整數(shù)和#include int main( ) int i,sum; sum=0; i=1; while( i=100) sum=sum+i; i+; printf(i=%d,sum=%dn,i,sum); return 0;語句語句sum=sum+i;和語句和語句i+;能否能否改變位置?程序
46、的哪些地方應(yīng)作改變位置?程序的哪些地方應(yīng)作相應(yīng)的改動?相應(yīng)的改動? 如果在如果在while語句之前對變量語句之前對變量sum賦初值為賦初值為1,是否可以?程序的哪,是否可以?程序的哪些地方應(yīng)作相應(yīng)的改動?些地方應(yīng)作相應(yīng)的改動?循循環(huán)環(huán) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 52 while 語句語句例例4.19 根據(jù)公式計算圓周率根據(jù)公式計算圓周率的值。的值。部分程序:部分程序:int i=1,n;double pi=0;scanf(%d,&n);while(i=n) pi+=1.0/(i*i); i+; pi=sqrt(pi*6);2222n
47、1312116 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 53 do-while 語句語句 格式:格式:do 語句語句 while (表達式表達式) ; 語句語句循環(huán)體循環(huán)體假假(0)真真(非非0)表達式表達式 循環(huán)體循環(huán)體當表達式為真當表達式為真注:循環(huán)體至少執(zhí)行一次。注:循環(huán)體至少執(zhí)行一次。用用do-while語句實語句實現(xiàn)直到現(xiàn)直到循環(huán)循環(huán) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 54 do-while 語句語句例例4.18 用用do-while語句求語句求100以內(nèi)正整數(shù)的和以內(nèi)正整數(shù)的和#include i
48、nt main( ) int i,sum; sum=0; i=1; do sum=sum+i; i+; while( i1e-6);pi=pi*4;printf(pi=%10.6fn,pi);71513114 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 56 for 語句語句 格式格式: for (表達式表達式1;表達式表達式2;表達式表達式3) 語句語句 語句語句 (循環(huán)體循環(huán)體)假假(0)真真(非非0)表 達 式表 達 式2求解表達式求解表達式1求解表達式求解表達式3實質(zhì)是當型循環(huán)!實質(zhì)是當型循環(huán)! C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)
49、構(gòu)程序控制結(jié)構(gòu) Page 57 for 語句語句在在for語句中,通常表達式語句中,通常表達式1用來為循環(huán)用來為循環(huán)變量賦初值;表達式變量賦初值;表達式2一般用來設(shè)置循環(huán)一般用來設(shè)置循環(huán)條件;表達式條件;表達式3一般用于循環(huán)變量增值。一般用于循環(huán)變量增值。for 語句的最常用格式:語句的最常用格式: for (for (循環(huán)變量賦初值循環(huán)變量賦初值; ;循環(huán)條件循環(huán)條件; ;循環(huán)變量增值循環(huán)變量增值) ) 語句語句 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 58 for 語句語句例例4.18 用用for語句求語句求1100之間的整數(shù)之和之間的整數(shù)之和#in
50、clude int main( ) int i,sum; sum=0; for ( i=1; i=100; i+ ) sum=sum+i; printf(i=%d,sum=%dn,i,sum); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 59 for 語句語句例例4.26 統(tǒng)計從鍵盤輸入一行字符的個數(shù),以回車統(tǒng)計從鍵盤輸入一行字符的個數(shù),以回車結(jié)束。結(jié)束。#include int main() int n; char c; printf(Input a string: n); for(n=0;(c=getchar()!=n;n+); p
51、rintf(%d,n); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 60 for 語句語句例例4.27 編程輸出編程輸出“斐波那契數(shù)列斐波那契數(shù)列”的前的前20項。項。#includeint main() int i,x1=1,x2=1; for(i=1;i=10;i+) printf(%10d %10d ,x1,x2); if(i%2=0) printf(n); x1=x1+x2; x2=x2+x1; return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 61 for 語句的靈活使用語句的
52、靈活使用 循環(huán)之前的賦初值語句可以放在表達式循環(huán)之前的賦初值語句可以放在表達式1中,中,中間用逗號間隔。中間用逗號間隔。 表達式表達式3可缺省(但其前的分號不能省略),可缺省(但其前的分號不能省略),將表達式將表達式3作為語句放到循環(huán)體的末尾。作為語句放到循環(huán)體的末尾。循環(huán)體中的內(nèi)容可以放在表達式循環(huán)體中的內(nèi)容可以放在表達式3中,但要在中,但要在for語句圓括號的后面加一個分號。語句圓括號的后面加一個分號。 表達式表達式1、表達式、表達式3可同時缺省,但表達式可同時缺省,但表達式2前前后的分號都不能省略。后的分號都不能省略。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu)
53、 Page 62 for 語句的靈活使用語句的靈活使用表達式表達式2可缺省,放在循環(huán)體之中,但可缺省,放在循環(huán)體之中,但for語句語句中的兩個分號都不能省略;且判斷與退出放在中的兩個分號都不能省略;且判斷與退出放在循環(huán)體中。循環(huán)體中。 int i,sum; sum=0; for ( i=1; ; i+) if ( i=100 ) sum=sum+i; else break; /*退出循環(huán)退出循環(huán)*/ printf(i=%d,sum=%dn,i,sum); return 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 63 幾種循環(huán)的比較幾種循環(huán)的比較 1)
54、while循環(huán)、循環(huán)、do while循環(huán)、循環(huán)、for循環(huán)都可以用循環(huán)都可以用來處理同一個問題,一般可以互相代替。來處理同一個問題,一般可以互相代替。2)在)在while和和do-while循環(huán)的循環(huán)體中,應(yīng)包括循環(huán)的循環(huán)體中,應(yīng)包括使循環(huán)趨于結(jié)束的語句。使循環(huán)趨于結(jié)束的語句。3)用)用while和和do-while循環(huán)時,循環(huán)變量初始化循環(huán)時,循環(huán)變量初始化的操作應(yīng)在的操作應(yīng)在while和和do-while語句之前完成,語句之前完成,而而for語句可以在表達式語句可以在表達式1中實現(xiàn)循環(huán)變量的中實現(xiàn)循環(huán)變量的初始化。初始化。4)三種循環(huán)均可用)三種循環(huán)均可用break語句跳出循環(huán),用語句跳
55、出循環(huán),用continue語句結(jié)束本輪循環(huán)。語句結(jié)束本輪循環(huán)。5)for語句功能最強。語句功能最強。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 64 break語句和語句和continue語句語句 break 語句語句v格式格式: break;v功能功能: 提前結(jié)束循環(huán)提前結(jié)束循環(huán),從循環(huán)體中無條件跳轉(zhuǎn)從循環(huán)體中無條件跳轉(zhuǎn)到循環(huán)語句后面執(zhí)行。到循環(huán)語句后面執(zhí)行。v可用于可用于switch語句和循環(huán)結(jié)構(gòu)中。語句和循環(huán)結(jié)構(gòu)中。continue語句語句 v格式格式: continue; v功能功能: 結(jié)束本次循環(huán)結(jié)束本次循環(huán),即在本次循環(huán)中,不再即在本次循環(huán)中,
56、不再執(zhí)行循環(huán)體中執(zhí)行循環(huán)體中continue后面的語句。后面的語句。 v只能用于循環(huán)結(jié)構(gòu)。只能用于循環(huán)結(jié)構(gòu)。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 65 break語句的使用語句的使用 例例4.28 將數(shù)字將數(shù)字512表示成兩個數(shù)的和,這兩個數(shù)分別為表示成兩個數(shù)的和,這兩個數(shù)分別為15和和13的倍數(shù)。的倍數(shù)。 #include int main() int i; for(i=1;i+) if(!(512-i*15)%13) break; printf(%d+%d=512n,i*15,512-i*15); return 0; !(512-i*15)%13
57、) 等價于等價于 (512-i*15)%13=0 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 66 continue語句的使用語句的使用 例例4.29 輸出輸出100200之間所有能夠被之間所有能夠被7或或9整除的數(shù)。整除的數(shù)。 #include int main( ) int i,n=0; for(i=100;i=200;i+) if(i%7!=0)&(i%9!=0) continue; printf(%5d ,i); n+; if(n%5=0) printf(n); /*當當n被被5整除時換行,即一行輸出整除時換行,即一行輸出5個數(shù)個數(shù)*/ re
58、turn 0; C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 67 break與與continue的區(qū)別的區(qū)別分析以下兩個程序,程序一:分析以下兩個程序,程序一:#include int main()int i; for(i=1;i=10;i+) if (i%3=0) continue; printf(%3d,i); printf (n); return 0; 結(jié)果輸出結(jié)果輸出 1 2 4 5 7 8 10 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 68 break與與continue的區(qū)別的區(qū)別程序二:程序二:#incl
59、ude int main()int i; for(i=1;ik 假假 輸出輸出m是素數(shù)是素數(shù) 輸出輸出m不是素數(shù)不是素數(shù) 或者或者i=k+1 循環(huán)結(jié)束后根循環(huán)結(jié)束后根據(jù)據(jù) i的值來決定的值來決定m是否為素數(shù)是否為素數(shù) C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 71 #include #include int main( ) int m,i,k; scanf(%d,&m); k=sqrt(m); for ( i=2 ; i=k ; i+ ) if (m%i=0) break; if (i=k+1) printf(n%d是素數(shù)是素數(shù)n,m); else
60、 printf(n%d不是素數(shù)不是素數(shù)n,m); return 0;for 語句有兩個出口:語句有兩個出口:i=k+1 和和 break 不是結(jié)構(gòu)化程序!不是結(jié)構(gòu)化程序!判斷整數(shù)判斷整數(shù)m是否為素數(shù)程序是否為素數(shù)程序1 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 72 判斷整數(shù)判斷整數(shù)m是否為素數(shù)程序是否為素數(shù)程序2 #include #include int main( ) int m,i,k; scanf(%d,&m); k=sqrt(m); for ( i=2 ; ik| m%i=0 是結(jié)構(gòu)化程序是結(jié)構(gòu)化程序 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控制結(jié)構(gòu) Page 73 循環(huán)嵌套循環(huán)嵌套 一個循環(huán)體中又包含了另一個完整的循環(huán)結(jié)構(gòu),一個循環(huán)體中又包含了另一個完整的循環(huán)結(jié)構(gòu),叫做循環(huán)的嵌套。叫做循環(huán)的嵌套。 三種循環(huán)結(jié)構(gòu)可以互相嵌套。三種循環(huán)結(jié)構(gòu)可以互相嵌套。 循環(huán)嵌套的執(zhí)行過程是:外循環(huán)執(zhí)行一次,內(nèi)循環(huán)嵌套的執(zhí)行過程是:外循環(huán)執(zhí)行一次,內(nèi)循環(huán)執(zhí)行一個全過程。循環(huán)執(zhí)行一個全過程。 C語言語言程序設(shè)計程序設(shè)計 第第4 4章章 程序控制結(jié)構(gòu)程序控
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 露臺花園維修方案模板(3篇)
- 商品銷售監(jiān)管方案(3篇)
- 工地遠程監(jiān)控方案(3篇)
- 物業(yè)售后規(guī)劃方案(3篇)
- 裝修方案事宜清單(3篇)
- 酒店套間改造方案(3篇)
- 茶室年輕經(jīng)營方案(3篇)
- 民俗小院-改造方案(3篇)
- 中山火炬職業(yè)技術(shù)學院《工程力學A(I)》2023-2024學年第二學期期末試卷
- 黑龍江商業(yè)職業(yè)學院《智慧牧場》2023-2024學年第二學期期末試卷
- 夏令營安全管理工作制度
- 2024年黑龍江、吉林、遼寧高考生物試卷(含答案解析)
- 5【選必下】高中語文部編版教材選必下冊課內(nèi)文言文精練
- 中醫(yī)疾病癥狀評分總表(終極版)
- 實驗室安全教育課件
- 透析病人不安腿綜合征
- 市政病媒生物防制基礎(chǔ)知識練習題及答案(200題)
- 2024年國資委研究中心事業(yè)單位招聘5人歷年(高頻重點復(fù)習提升訓(xùn)練)共500題附帶答案詳解
- 2024江蘇省揚州市高一下學期期末考生物試題及答案
- 2024年個人勞務(wù)承包合同書
- 2023-2024學年河北省唐山市路南區(qū)數(shù)學五年級第二學期期末監(jiān)測試題含解析
評論
0/150
提交評論