C++講解-文檔資料_第1頁(yè)
C++講解-文檔資料_第2頁(yè)
C++講解-文檔資料_第3頁(yè)
C++講解-文檔資料_第4頁(yè)
C++講解-文檔資料_第5頁(yè)
已閱讀5頁(yè),還剩46頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1一、基本概念數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu) + + 算法算法 = = 程序程序1 1、算法:、算法:是對(duì)特定問(wèn)題求解步驟的一種描述是對(duì)特定問(wèn)題求解步驟的一種描述2 2、數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)的組織形式及其相互關(guān)系、數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)的組織形式及其相互關(guān)系2二、算法舉例1 1、求、求1 1* *2 2* *3 3* *4 4* *5 5的值。的值。2 2、判斷一個(gè)數(shù)、判斷一個(gè)數(shù)n n是否為素?cái)?shù)。(是否為素?cái)?shù)。(n2n2)3四、算法的表示四、算法的表示1 1、自然語(yǔ)言、自然語(yǔ)言2 2、流程圖、流程圖3 3、偽代碼、偽代碼4 4、計(jì)算機(jī)語(yǔ)言、計(jì)算機(jī)語(yǔ)言4五、結(jié)構(gòu)化程序設(shè)計(jì)方法五、結(jié)構(gòu)化程序設(shè)計(jì)方法1 1、含義:規(guī)范程序設(shè)計(jì)

2、風(fēng)格和程序結(jié)構(gòu)。、含義:規(guī)范程序設(shè)計(jì)風(fēng)格和程序結(jié)構(gòu)。2 2、思路:將復(fù)雜的問(wèn)題分階段處理、思路:將復(fù)雜的問(wèn)題分階段處理3 3、方法:自頂向下、逐步細(xì)化、模塊化、方法:自頂向下、逐步細(xì)化、模塊化設(shè)計(jì)、結(jié)構(gòu)化編碼設(shè)計(jì)、結(jié)構(gòu)化編碼5S1:求:求1 2,得到結(jié)果,得到結(jié)果2.S2:將第:將第1步所得結(jié)果步所得結(jié)果2乘以乘以3,得到結(jié)果,得到結(jié)果6.S3:將:將6乘以乘以4,得,得24.S4: 將將24乘以乘以5,得,得120.求求1 1* *2 2* *3 3* *4 4* *5 5的值。的值。( (思路一思路一) )6設(shè)設(shè)p p為被乘數(shù),為被乘數(shù),i i為乘數(shù)為乘數(shù)S1S1:使:使p=1.p=1.S

3、2S2:使:使i=2.i=2.S3S3:使:使p p i, i,乘積賦給乘積賦給p.p.S4: S4: 使使i i的值加的值加1.1.S5: S5: 若若i=5,i=5,執(zhí)行執(zhí)行S3S3;否則程序結(jié)束;否則程序結(jié)束. .求求1 1* *2 2* *3 3* *4 4* *5 5的值。的值。( (思路二思路二) )7S1:輸入:輸入n的值的值.S2:置變量:置變量i的值為的值為2.S3:求解:求解m=n%i ;若若m=0,轉(zhuǎn)向轉(zhuǎn)向S6,否則執(zhí)行否則執(zhí)行S4.S4: 變量變量i的值自加的值自加1.S5: 判斷判斷in是否成立是否成立;若為真則轉(zhuǎn)向若為真則轉(zhuǎn)向S3,否則執(zhí)行否則執(zhí)行S6.S6: 判斷

4、判斷i2n2)8棋盤(pán)上的麥粒棋盤(pán)上的麥粒 在國(guó)際象棋棋盤(pán)上第在國(guó)際象棋棋盤(pán)上第1 1格放格放1 1粒麥粒,粒麥粒,第第2 2格放格放2 2粒麥粒,第粒麥粒,第3 3格放格放4 4粒麥粒,第粒麥粒,第4 4格放格放8 8粒麥粒,如此直到放滿棋盤(pán)的粒麥粒,如此直到放滿棋盤(pán)的6464格為止。請(qǐng)計(jì)算共需要多少麥粒?格為止。請(qǐng)計(jì)算共需要多少麥粒?18,446,744,073,709,551,61598 8皇后互不攻擊皇后互不攻擊 在國(guó)際象棋棋盤(pán)上放在國(guó)際象棋棋盤(pán)上放8 8個(gè)皇后,要求個(gè)皇后,要求任何任何1 1個(gè)皇后都不會(huì)攻擊其他皇后。請(qǐng)個(gè)皇后都不會(huì)攻擊其他皇后。請(qǐng)問(wèn)有多少種放法?問(wèn)有多少種放法?10漢諾

5、塔漢諾塔 在古代有一座塔,塔里有在古代有一座塔,塔里有3 3個(gè)座個(gè)座A A、B B、C C,A A座上有座上有6464個(gè)大小不等的盤(pán)子,大盤(pán)在個(gè)大小不等的盤(pán)子,大盤(pán)在下,小盤(pán)在上。要求把下,小盤(pán)在上。要求把A A座上座上6464個(gè)盤(pán)子移到個(gè)盤(pán)子移到C C座,但每次只能移動(dòng)座,但每次只能移動(dòng)1 1個(gè)盤(pán),且要始終保個(gè)盤(pán),且要始終保持大盤(pán)在下,小盤(pán)在上,在移動(dòng)過(guò)程中可持大盤(pán)在下,小盤(pán)在上,在移動(dòng)過(guò)程中可以利用以利用B B座。問(wèn)如何移動(dòng)?座。問(wèn)如何移動(dòng)?11N-SN-S流程圖流程圖AB順序結(jié)構(gòu)順序結(jié)構(gòu)P成立成立不成立不成立AB選擇結(jié)構(gòu)選擇結(jié)構(gòu)當(dāng)當(dāng)P P成立成立A循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)12打印打印x x的絕對(duì)

6、值(偽代碼)的絕對(duì)值(偽代碼)If x is positive thenIf x is positive thenPrint xPrint xElse Else Print -xPrint -x13打印打印x x的絕對(duì)值(的絕對(duì)值(C C源程序段)源程序段)if ( x 0 )if ( x 0 )printf( |x|=%d , x );printf( |x|=%d , x );else else printf( |x|=%d , -x );printf( |x|=%d , -x );14l:用:用 括起來(lái)的一組語(yǔ)句括起來(lái)的一組語(yǔ)句一般形式:一般形式: 數(shù)據(jù)說(shuō)明部分;數(shù)據(jù)說(shuō)明部分; 執(zhí)行語(yǔ)句部

7、分;執(zhí)行語(yǔ)句部分; 說(shuō)明:說(shuō)明:l“”后不加分號(hào)后不加分號(hào)l語(yǔ)法上和單一語(yǔ)句相同語(yǔ)法上和單一語(yǔ)句相同l復(fù)合語(yǔ)句可嵌套復(fù)合語(yǔ)句可嵌套復(fù)合語(yǔ)句復(fù)合語(yǔ)句15算法的基本控制結(jié)構(gòu)算法的基本控制結(jié)構(gòu)問(wèn)題的提出問(wèn)題的提出: (1) -1 (x0)(2)統(tǒng)計(jì)任意一個(gè)人群的平均身高統(tǒng)計(jì)任意一個(gè)人群的平均身高算法算法算法的基本控制結(jié)構(gòu):算法的基本控制結(jié)構(gòu):順序結(jié)構(gòu)順序結(jié)構(gòu)分支結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)程序流程圖程序流程圖16結(jié)構(gòu)化程序設(shè)計(jì)l基本思想:任何程序都可以用三種基本結(jié)構(gòu)表示,限制使用無(wú)條件轉(zhuǎn)移語(yǔ)句(goto)l結(jié)構(gòu)化程序:由三種基本結(jié)構(gòu)反復(fù)嵌套構(gòu)成的程序叫l(wèi)優(yōu)點(diǎn):結(jié)構(gòu)清晰,易讀,提高程序設(shè)計(jì)質(zhì)量和效率三

8、種基本結(jié)構(gòu)l順序結(jié)構(gòu)ABAB流程圖N-S圖程序的三種基本結(jié)構(gòu)程序的三種基本結(jié)構(gòu)17PAB真假PBA真假A1A2AiAnk=k2k=k1k=knk=ki.l二分支選擇結(jié)構(gòu)二分支選擇結(jié)構(gòu)l多分支選擇結(jié)構(gòu)多分支選擇結(jié)構(gòu)18l當(dāng)型循環(huán)結(jié)構(gòu)l直到型循環(huán)結(jié)構(gòu)PA假真當(dāng)P為真AAP真假A直到P為真注:A,B,A1.An可以是一個(gè)簡(jiǎn)單語(yǔ)句,也可以是一個(gè)基本結(jié)構(gòu)循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)19l格式:賦值表達(dá)式;l賦值語(yǔ)句與賦值表達(dá)式的區(qū)別: 賦值表達(dá)式可以包含在其它表達(dá)式中,而賦值語(yǔ)句不可。例:if (a=b)0) t=a;不可寫(xiě)為:if (a=b;)0) t=a;20這是這是C中新加的非常簡(jiǎn)單易用的輸入、輸出方式,中新

9、加的非常簡(jiǎn)單易用的輸入、輸出方式,C+中沒(méi)有專(zhuān)門(mén)的輸入輸出語(yǔ)句,是用中沒(méi)有專(zhuān)門(mén)的輸入輸出語(yǔ)句,是用I/O流類(lèi)來(lái)實(shí)現(xiàn)。流類(lèi)來(lái)實(shí)現(xiàn)。在程序的開(kāi)頭增加一行:在程序的開(kāi)頭增加一行:#include 1)用插入操作符用插入操作符“”向標(biāo)準(zhǔn)輸出流向標(biāo)準(zhǔn)輸出流cout中插入字符。中插入字符。n向標(biāo)準(zhǔn)輸出設(shè)備(顯示器)輸出向標(biāo)準(zhǔn)輸出設(shè)備(顯示器)輸出例:例:int x; cout“x=“”從標(biāo)準(zhǔn)輸入流從標(biāo)準(zhǔn)輸入流cin中抽取字符中抽取字符n從標(biāo)準(zhǔn)輸入設(shè)備(鍵盤(pán))輸入從標(biāo)準(zhǔn)輸入設(shè)備(鍵盤(pán))輸入例:例:int x; cinx; int a,b; cinab;) 使用控制符使用控制符 有時(shí)缺省輸出格式不能滿足要求,

10、這時(shí)可以用控制符控制輸出的格有時(shí)缺省輸出格式不能滿足要求,這時(shí)可以用控制符控制輸出的格式。式。 在程序的開(kāi)頭增加一行:在程序的開(kāi)頭增加一行:#include22例:例:#include#includevoid main()coutsetw(5)setprecision(3)3.1415endl; 3.1423u C語(yǔ)言無(wú)語(yǔ)言無(wú)I/O語(yǔ)句,語(yǔ)句,I/O操作由函數(shù)實(shí)現(xiàn)操作由函數(shù)實(shí)現(xiàn) u #include C語(yǔ)言中的輸入輸出語(yǔ)言中的輸入輸出24printf和和scanfprintf函數(shù)函數(shù)l(1)printf函數(shù)的一般格式為:函數(shù)的一般格式為:printf(格式控制字符串,輸出項(xiàng)格式控制字符串,輸出

11、項(xiàng)1,輸出項(xiàng),輸出項(xiàng)2,)括號(hào)中的格式控制字符串和輸出項(xiàng)都是函數(shù)參數(shù)。括號(hào)中的格式控制字符串和輸出項(xiàng)都是函數(shù)參數(shù)。printf()函數(shù)的功能是將后面函數(shù)的功能是將后面的參數(shù)按給定的格式輸出。的參數(shù)按給定的格式輸出。l格式控制字符串中有格式說(shuō)明,也有普通字符。格式說(shuō)明由格式控制字符串中有格式說(shuō)明,也有普通字符。格式說(shuō)明由”%”和格式字符組和格式字符組成,如成,如%d, %f 等。它的作用是將輸出的數(shù)據(jù)轉(zhuǎn)換成指定的格式輸出。普通字等。它的作用是將輸出的數(shù)據(jù)轉(zhuǎn)換成指定的格式輸出。普通字符按原樣輸出,如:符按原樣輸出,如:#include stdio.hvoid main()int a = 10, b

12、 = 20;printf(%d, %d, a, b);輸出結(jié)果為:輸出結(jié)果為:10,2025(2)%d 格式符格式符用來(lái)輸出用來(lái)輸出10進(jìn)制整數(shù),可以有長(zhǎng)度修飾。如:進(jìn)制整數(shù),可以有長(zhǎng)度修飾。如:#include stdio.hvoid main()int a = 28, b = 38;long c = 123456;printf(%5d, %5dn%ldn, a, b, c);printf(%3ldn%7ldn%dn, c, c, c);輸出結(jié)果為:輸出結(jié)果為: 28, 38123456123456 123456123456%5d表示輸出寬度為表示輸出寬度為5,%ld表示輸出為長(zhǎng)整型表示輸出

13、為長(zhǎng)整型如果整數(shù)的位數(shù)多于指定寬度,則按實(shí)際位數(shù)輸出如果整數(shù)的位數(shù)多于指定寬度,則按實(shí)際位數(shù)輸出26(3)%o和和%x格式符格式符用來(lái)輸出用來(lái)輸出8進(jìn)制、進(jìn)制、16進(jìn)制整數(shù)。進(jìn)制整數(shù)。8進(jìn)制和進(jìn)制和16進(jìn)制都是無(wú)符號(hào)整數(shù),進(jìn)制都是無(wú)符號(hào)整數(shù),輸出時(shí)不帶符號(hào)。如:輸出時(shí)不帶符號(hào)。如:#include stdio.hvoid main()int a = 1200;printf(%d, %o, %x, %X, %6xn, a, a, a, a, a);輸出結(jié)果為:輸出結(jié)果為: 1200, 2260, 4b0, 4B0, 4b027(4)%u 格式符格式符用來(lái)輸出無(wú)符號(hào)用來(lái)輸出無(wú)符號(hào)10進(jìn)制整數(shù)。進(jìn)制

14、整數(shù)。(5)%c 格式符格式符用來(lái)輸出一個(gè)字符。如果一個(gè)整數(shù),其值在用來(lái)輸出一個(gè)字符。如果一個(gè)整數(shù),其值在0255之間,也可以字之間,也可以字符方式輸出。它們都可以指定格式寬度。例如:符方式輸出。它們都可以指定格式寬度。例如:char ch = a;int a = 65;printf(%c, %d, %3cn, ch, ch, ch);printf(%c, %d, %3dn, a , a, a);輸出結(jié)果為:輸出結(jié)果為:a, 97, aA, 65, 6528(6)%s 格式符格式符用來(lái)輸出字符串??梢灾付ǜ袷綄挾龋绻址L(zhǎng)小于指定的寬度時(shí),用來(lái)輸出字符串??梢灾付ǜ袷綄挾龋绻址L(zhǎng)小于

15、指定的寬度時(shí),可以選擇左對(duì)齊或右對(duì)齊。另外,還可以選擇輸出字符中的前可以選擇左對(duì)齊或右對(duì)齊。另外,還可以選擇輸出字符中的前n個(gè)字符。個(gè)字符。例如:例如:printf(%s, Hellon);printf(Hellon);printf(%3s, %-5.3s, %5.2sn, Hello, Hello, Hello);輸出結(jié)果為:輸出結(jié)果為:HelloHelloHello, Hel , He如果輸出的只有一個(gè)字符串,可以省略格式參數(shù),因?yàn)楦袷絽?shù)本身可以如果輸出的只有一個(gè)字符串,可以省略格式參數(shù),因?yàn)楦袷絽?shù)本身可以是原樣輸出的普通字符串。是原樣輸出的普通字符串?!?-5.3s”中的負(fù)號(hào)表示左對(duì)

16、齊,如果沒(méi)有負(fù)號(hào),則默認(rèn)為右對(duì)齊。中的負(fù)號(hào)表示左對(duì)齊,如果沒(méi)有負(fù)號(hào),則默認(rèn)為右對(duì)齊。5表示表示格式寬度,格式寬度,3表示截取字符串中表示截取字符串中3個(gè)字符。個(gè)字符。29(7)%f 格式符格式符用來(lái)以小數(shù)方式輸出。可指定格式寬度,也可以指定小數(shù)位數(shù),還用來(lái)以小數(shù)方式輸出。可指定格式寬度,也可以指定小數(shù)位數(shù),還可以規(guī)定左對(duì)齊或右對(duì)齊。如:可以規(guī)定左對(duì)齊或右對(duì)齊。如:float x = 123.456;double y = 321.654321;printf(%f, %-7.2f, %10.4fn, x, x, x);printf(%lf, %-7.2lf, %10.4lfn, y, y, y);

17、輸出結(jié)果為:輸出結(jié)果為:123.456001, 123.46 , 123.4560321.654321, 321.65 , 321.6543以以%f 格式輸出時(shí),默認(rèn)的小數(shù)位數(shù)是格式輸出時(shí),默認(rèn)的小數(shù)位數(shù)是6位。位。%-7.2f表示左對(duì)齊,總表示左對(duì)齊,總長(zhǎng)度為長(zhǎng)度為7位,小數(shù)位數(shù)為位,小數(shù)位數(shù)為2位。位。30(8)%e,%E,%g,%G 格式符格式符用來(lái)以指數(shù)方式輸出浮點(diǎn)數(shù)。默認(rèn)的小數(shù)位數(shù)為用來(lái)以指數(shù)方式輸出浮點(diǎn)數(shù)。默認(rèn)的小數(shù)位數(shù)為6, 指數(shù)位數(shù)為指數(shù)位數(shù)為3(不包括不包括e+和和e-):float x = 123.456;double y = 321.654321;printf(%e, %

18、-7.2e, %10.4en, x, x, x);printf(%e, %-7.2e, %10.4en, y, y, y);輸出結(jié)果為:輸出結(jié)果為:1.234560e+002, 1.23e+002, 1.2346e+0023.216543e+002, 3.22e+002, 3.2165e+002%E 格式同格式同%e ,只是將輸出的小寫(xiě),只是將輸出的小寫(xiě) e 改為大寫(xiě)改為大寫(xiě) E 。%g根據(jù)數(shù)值的大小,自動(dòng)選取根據(jù)數(shù)值的大小,自動(dòng)選取f格式或格式或e格式。格式。31(9)注意事項(xiàng)注意事項(xiàng)l除除X, E, G格式外,其他格式必須用小寫(xiě)字母,例如格式外,其他格式必須用小寫(xiě)字母,例如%d不能寫(xiě)不能寫(xiě)

19、成成%Dl可以在可以在printf函數(shù)中的函數(shù)中的“格式控制格式控制”字符串內(nèi)使用字符串內(nèi)使用“轉(zhuǎn)義字符轉(zhuǎn)義字符”。l“格式控制格式控制”字符串中,在字符串中,在%后的后的d、o、x、u、c、s、f、e、g做為格式符做為格式符,否則做為普通字符,如:否則做為普通字符,如:printf(“c=%c, f=%f, s=%s”, c, f, s);l如果想輸出字符如果想輸出字符%,則應(yīng)該在,則應(yīng)該在“格式控制格式控制”字符串中連續(xù)用兩字符串中連續(xù)用兩個(gè)個(gè)%表示表示,如:如:printf(“%f%”, 1.0/3);32int i, j;scanf(“%3d%3d”, &i, &j);

20、/輸入輸入123456scanf(“%2d_%*3d_%2d”, &i, &j); /輸入輸入12_345_67scanf(“%d,%d”, &i, &j);/輸入輸入3,433(3)注意事項(xiàng)注意事項(xiàng)lscanf函數(shù)中的函數(shù)中的“格式控制格式控制”后面應(yīng)當(dāng)是變量地址,而不是變量名。后面應(yīng)當(dāng)是變量地址,而不是變量名。l如果在如果在“格式控制格式控制”字符串中除了格式說(shuō)明以外還有其他字符,則字符串中除了格式說(shuō)明以外還有其他字符,則在輸入數(shù)據(jù)時(shí)在對(duì)應(yīng)位置應(yīng)輸入與這些字符相同的字符。在輸入數(shù)據(jù)時(shí)在對(duì)應(yīng)位置應(yīng)輸入與這些字符相同的字符。l在使用在使用%c格式輸入字符時(shí),空格

21、字符和格式輸入字符時(shí),空格字符和“轉(zhuǎn)義字符轉(zhuǎn)義字符”都作為有效都作為有效字符輸入字符輸入l在輸入數(shù)據(jù)時(shí),遇以下情況時(shí)該數(shù)據(jù)認(rèn)為結(jié)束在輸入數(shù)據(jù)時(shí),遇以下情況時(shí)該數(shù)據(jù)認(rèn)為結(jié)束遇空格,或按遇空格,或按“回車(chē)回車(chē)”,或,或”Tab”鍵鍵按指定的寬度結(jié)束,如按指定的寬度結(jié)束,如%3d,只取,只取3列列遇非法輸入。遇非法輸入。34/*ch3_12.c*/#include #include main() float a,b,c,s,area; scanf(%f,%f,%f,&a,&b,&c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c

22、); printf(a=%7.2f, b=%7.2f, c=%7.2f, s=%7.2fn,a,b,c,s); printf(area=%7.2fn,area);輸入:3,4,6 輸出:a= 3.00, b= 4.00, c= 6.00 s= 6.50 area= 5.33)()()()(21csbsassareacbas文件包含預(yù)處理命令變量定義輸入數(shù)據(jù)輸出數(shù)據(jù)例例 輸入三角形邊長(zhǎng),求面積輸入三角形邊長(zhǎng),求面積35字符輸出格式格式: putchar( c ): putchar( c )參數(shù)參數(shù): c: c為字符常量、變量或表達(dá)式為字符常量、變量或表達(dá)式功能:把字符功能:把字符c c輸出到顯示

23、器上輸出到顯示器上返值:正常,為顯示的代碼值;出錯(cuò),為返值:正常,為顯示的代碼值;出錯(cuò),為EOF(-1)EOF(-1)字符輸出函數(shù)字符輸出函數(shù)36/*ch3_13.c*/#include stdio.hmain() char c1,c2; c1=getchar(); printf(%c,%dn,c1,c1); c2=c1+32; printf(%c,%dn,c2,c2);輸入:A 輸出:A,65 a,97例例 從鍵盤(pán)輸入大寫(xiě)字母,用小寫(xiě)字母輸出從鍵盤(pán)輸入大寫(xiě)字母,用小寫(xiě)字母輸出37第三章第三章 程序設(shè)計(jì)初步程序設(shè)計(jì)初步選擇結(jié)構(gòu)設(shè)計(jì)選擇結(jié)構(gòu)設(shè)計(jì)38l一般形式:一般形式:表達(dá)式表達(dá)式1 1?表達(dá)式

24、?表達(dá)式2 2:表達(dá)式:表達(dá)式3 3表達(dá)式表達(dá)式1 1 必須是必須是 bool bool 類(lèi)型類(lèi)型l執(zhí)行順序:執(zhí)行順序:先求解先求解表達(dá)式表達(dá)式1 1,若表達(dá)式若表達(dá)式1 1的值為的值為truetrue,則求解,則求解表達(dá)式表達(dá)式2 2,表達(dá)式,表達(dá)式2 2的的值為最終結(jié)果值為最終結(jié)果若表達(dá)式若表達(dá)式1 1的值為的值為falsefalse,則求解,則求解表達(dá)式表達(dá)式3 3,表達(dá)式表達(dá)式3 3的的值為最終結(jié)果值為最終結(jié)果例例 x=ab?a:b 該例是該例是IFELSE語(yǔ)句的一個(gè)替代語(yǔ)句的一個(gè)替代 if (ab)?a:b+1 (2)條件運(yùn)算符的結(jié)合性為條件運(yùn)算符的結(jié)合性為“自右向左自右向左” 例例

25、ab?a:cd?c:d 即即 ab?a:(cd?c:d) (3) 條件表達(dá)式與一般條件表達(dá)式與一般if的語(yǔ)句的關(guān)系的語(yǔ)句的關(guān)系 coutb?a:b;()表達(dá)式()表達(dá)式2 2、3 3的類(lèi)型可以不同,條件表達(dá)式的最終類(lèi)型為的類(lèi)型可以不同,條件表達(dá)式的最終類(lèi)型為 2 2 和和 3 3 中較高的類(lèi)型。中較高的類(lèi)型。40if (表達(dá)式表達(dá)式) 語(yǔ)句語(yǔ)句例:例:if (xy) couty) coutx; else couty;if (表達(dá)式表達(dá)式1) 語(yǔ)句語(yǔ)句1else if (表達(dá)式表達(dá)式2) 語(yǔ)句語(yǔ)句2else if (表達(dá)式表達(dá)式3) 語(yǔ)句語(yǔ)句3 else 語(yǔ)句語(yǔ)句 n41 (條件表達(dá)式)(條件表

26、達(dá)式)語(yǔ)句;語(yǔ)句; 或(條件表達(dá)式)或(條件表達(dá)式) 語(yǔ)句;語(yǔ)句;或(條件表達(dá)式);空語(yǔ)句作中的語(yǔ)句或(條件表達(dá)式);空語(yǔ)句作中的語(yǔ)句語(yǔ)句語(yǔ)句; ;0表達(dá)式語(yǔ)句142例(判輸入是否合理)例(判輸入是否合理) #include #include void main( )void main( ) unsigned int age; unsigned int age; cout What is the students age.; cout age; cin age; if (age10) if (age10) cout The age may be wrong; cout =0) if(x50) cout“x is okn”; else cout“x is not okn”;If 語(yǔ)句的嵌套二義性語(yǔ)句的嵌套二義性因?yàn)橐驗(yàn)?if 可以嵌套,所有在嵌套時(shí)有時(shí)會(huì)出可以嵌套,所有在嵌套時(shí)有時(shí)會(huì)出 歧義,例如上例中,歧義,例如上例中,else 是與第一個(gè)是與第一個(gè) if 配對(duì),配對(duì),還

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論