第3章數(shù)據(jù)類(lèi)型、運(yùn)算符與表達(dá)式_第1頁(yè)
第3章數(shù)據(jù)類(lèi)型、運(yùn)算符與表達(dá)式_第2頁(yè)
第3章數(shù)據(jù)類(lèi)型、運(yùn)算符與表達(dá)式_第3頁(yè)
第3章數(shù)據(jù)類(lèi)型、運(yùn)算符與表達(dá)式_第4頁(yè)
第3章數(shù)據(jù)類(lèi)型、運(yùn)算符與表達(dá)式_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、計(jì)算機(jī)程序語(yǔ)言(計(jì)算機(jī)程序語(yǔ)言(C C)【教學(xué)主要內(nèi)容教學(xué)主要內(nèi)容】n數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型nC+C+運(yùn)算符運(yùn)算符n運(yùn)算符和表達(dá)式運(yùn)算符和表達(dá)式要求要求n理解:理解:C+C+數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型n掌握:掌握:C+C+運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 3.1 3.1 數(shù)據(jù)數(shù)據(jù).2 C+.2 C+運(yùn)算運(yùn)算符符3.3 3.3 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 (1 1)數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型(2 2)常量和變量常量和變量(3 3)整型數(shù)據(jù)整型數(shù)據(jù)(4 4)字符型數(shù)據(jù)字符型數(shù)據(jù)(5 5)浮點(diǎn)型數(shù)據(jù)浮點(diǎn)型數(shù)據(jù)n所謂所謂類(lèi)型類(lèi)型,就是對(duì)數(shù)據(jù)分配存儲(chǔ)單元的安,就是對(duì)數(shù)據(jù)分配存儲(chǔ)單元的安排,包括存儲(chǔ)單元的長(zhǎng)度排,包括存儲(chǔ)單元的長(zhǎng)度(

2、 (占多少字節(jié)占多少字節(jié)) )以以及數(shù)據(jù)的存儲(chǔ)形式及數(shù)據(jù)的存儲(chǔ)形式n不同的類(lèi)型分配不同的長(zhǎng)度和存儲(chǔ)形式不同的類(lèi)型分配不同的長(zhǎng)度和存儲(chǔ)形式數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型基本類(lèi)型基本類(lèi)型整型整型 短整型短整型( (short int)short int) 整型整型( (int) int) 長(zhǎng)整型長(zhǎng)整型( (long int)long int)字符型字符型( (char)char)浮點(diǎn)型浮點(diǎn)型 單精度型單精度型( (float)float)雙精度型雙精度型( (double)double) 長(zhǎng)雙精度型長(zhǎng)雙精度型( (long double)long double) 布爾型布爾型( (bool)bool) 空類(lèi)型空

3、類(lèi)型( (void)void) 構(gòu)造類(lèi)型構(gòu)造類(lèi)型 枚舉類(lèi)型枚舉類(lèi)型( (enum)enum)數(shù)組類(lèi)型數(shù)組類(lèi)型 結(jié)構(gòu)體類(lèi)型結(jié)構(gòu)體類(lèi)型( (struct)struct) 共用體類(lèi)型共用體類(lèi)型( (union)union)指針類(lèi)型指針類(lèi)型 a. a.常量常量:在程序運(yùn)行過(guò)程中,其值在程序運(yùn)行過(guò)程中,其值不能被改變的量不能被改變的量n整型常量整型常量:如如10001000,1234512345,0 0,-345-345n實(shí)型常量實(shí)型常量n十進(jìn)制小數(shù)形式十進(jìn)制小數(shù)形式:如如0 0. .34 -5634 -56. .79 079 0. .0 0n指數(shù)形式指數(shù)形式:如如12.3412.34e e3 (3 (

4、代表代表12.3412.34 10103 3) )n字符常量字符常量:如:如? ?n轉(zhuǎn)義字符轉(zhuǎn)義字符:如:如nnn字符串常量字符串常量:如如”boyboy”n符號(hào)常量符號(hào)常量:#define #define PIPI 3.1416 3.1416 b b. .變量變量:在程序運(yùn)行期間,變量的值是可以改變的在程序運(yùn)行期間,變量的值是可以改變的n變量必須變量必須先定義先定義,后使用后使用n定義定義變量變量時(shí)指定該變量的時(shí)指定該變量的名字名字和和類(lèi)型類(lèi)型n變量名變量名和和變量值變量值是是兩個(gè)不同的概念兩個(gè)不同的概念n變量名實(shí)際上是以一個(gè)名字代表的一個(gè)變量名實(shí)際上是以一個(gè)名字代表的一個(gè)存儲(chǔ)地址存儲(chǔ)地址n

5、從變量中取值,實(shí)際上是通過(guò)變量名找到相應(yīng)的內(nèi)從變量中取值,實(shí)際上是通過(guò)變量名找到相應(yīng)的內(nèi)存地址,從該存儲(chǔ)單元中讀取數(shù)據(jù)存地址,從該存儲(chǔ)單元中讀取數(shù)據(jù) c c. .常變量常變量:const int a=3;const int a=3; d. d.標(biāo)識(shí)符標(biāo)識(shí)符:一個(gè)對(duì)象的名字一個(gè)對(duì)象的名字n語(yǔ)言規(guī)定標(biāo)識(shí)符只能由語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母字母、數(shù)字?jǐn)?shù)字和和下劃線(xiàn)下劃線(xiàn)3 3種種字符組成,且字符組成,且第一個(gè)字符必須為字母或下劃線(xiàn)第一個(gè)字符必須為字母或下劃線(xiàn)n合法的標(biāo)識(shí)符:合法的標(biāo)識(shí)符:如如sumsum,average, _total, Class, average, _total, Class, da

6、y, BASIC, li_lingday, BASIC, li_lingn不合法的標(biāo)識(shí)符不合法的標(biāo)識(shí)符:M.D.JohnM.D.John,¥,¥123123,3333,3D643D64,a ab b大小寫(xiě)字母是不同的字符大小寫(xiě)字母是不同的字符 a. a.整型數(shù)據(jù)的分類(lèi)整型數(shù)據(jù)的分類(lèi)n最基本的整型類(lèi)型最基本的整型類(lèi)型n基本整型基本整型(int(int型型) ):占:占2 2個(gè)或個(gè)或4 4個(gè)字節(jié)個(gè)字節(jié)n短整型短整型(short int)(short int):VC+6.0VC+6.0中占中占2 2個(gè)字節(jié)個(gè)字節(jié)n長(zhǎng)整型長(zhǎng)整型(long int)(long int):VC+6.0VC+6.0中占中占4

7、 4個(gè)字節(jié)個(gè)字節(jié)n雙長(zhǎng)整型雙長(zhǎng)整型(long long int)(long long int):C99C99新增的新增的b.b.整型變量的符號(hào)屬性整型變量的符號(hào)屬性n整型變量的值的范圍包括負(fù)數(shù)到正數(shù)整型變量的值的范圍包括負(fù)數(shù)到正數(shù)n可以將變量定義為可以將變量定義為“無(wú)符號(hào)無(wú)符號(hào)”類(lèi)型類(lèi)型擴(kuò)充的整型類(lèi)型:擴(kuò)充的整型類(lèi)型:n有符號(hào)基本整型有符號(hào)基本整型 signed int; signed int;n無(wú)符號(hào)基本整型無(wú)符號(hào)基本整型 unsigned int; unsigned int;n有符號(hào)短整型有符號(hào)短整型 signed short int; signed short int;n無(wú)符號(hào)短整型無(wú)符

8、號(hào)短整型 unsigned short int; unsigned short int;n有符號(hào)長(zhǎng)整型有符號(hào)長(zhǎng)整型 signed long int; signed long int;n無(wú)符號(hào)長(zhǎng)整型無(wú)符號(hào)長(zhǎng)整型 unsigned long int unsigned long intn有符號(hào)雙長(zhǎng)整型有符號(hào)雙長(zhǎng)整型 signed long long int; signed long long int; n無(wú)符號(hào)雙長(zhǎng)整型無(wú)符號(hào)雙長(zhǎng)整型 unsigned long long int unsigned long long int a.a.字符與字符代碼字符與字符代碼大多數(shù)系統(tǒng)采用大多數(shù)系統(tǒng)采用ASCIIA

9、SCII字符集字符集n字母:字母:A-Z(65-90)A-Z(65-90),a-z(97-122)a-z(97-122)n數(shù)字:數(shù)字:0 09(489(485 57)7)n專(zhuān)門(mén)符號(hào):專(zhuān)門(mén)符號(hào):2929個(gè):個(gè):! ! ” # & # & ( ) ( ) * *等等n空格符:空格、水平制表符、換行空格符:空格、水平制表符、換行等等n不能顯示的字符:不能顯示的字符:空空(null)(null)字符字符( (以以00表示表示) )、警告警告( (以以aa表示表示) )、退格、退格( (以以bb表示表示) )、回車(chē)回車(chē)( (以以rr表示表示) )等等n字符字符1 1和整數(shù)和整數(shù)1 1是不同的概念是不同的

10、概念:n字符字符1 1只是代表一個(gè)形狀為只是代表一個(gè)形狀為1 1的符號(hào),在需的符號(hào),在需要時(shí)按原樣輸出,在內(nèi)存中以要時(shí)按原樣輸出,在內(nèi)存中以ASCIIASCII碼形式碼形式存儲(chǔ),占存儲(chǔ),占1 1個(gè)字節(jié)個(gè)字節(jié)n整數(shù)整數(shù)1 1是以整數(shù)存儲(chǔ)方式是以整數(shù)存儲(chǔ)方式( (二進(jìn)制補(bǔ)碼方式二進(jìn)制補(bǔ)碼方式) )存儲(chǔ)的,占存儲(chǔ)的,占2 2個(gè)或個(gè)或4 4個(gè)字節(jié)個(gè)字節(jié)0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1b.b.字符變量字符變量例例1.1.將字符賦給整型變量。將字符賦給整型變量。 # #include include using namespace std; u

11、sing namespace std; int main( ) int main( ) int i; /i int i; /i是整型變量是整型變量 i= i=A A; /; /將字符常量賦給整型變量將字符常量賦給整型變量i i couti coutin; /n; /輸出整型變量輸出整型變量i i值,值,n n 是換行符是換行符 return 0; return 0; n執(zhí)行時(shí)輸出執(zhí)行時(shí)輸出6565浮點(diǎn)型數(shù)據(jù)是用來(lái)表示具有小數(shù)點(diǎn)的實(shí)數(shù)浮點(diǎn)型數(shù)據(jù)是用來(lái)表示具有小數(shù)點(diǎn)的實(shí)數(shù)其一般形式為:其一般形式為:數(shù)符數(shù)符 數(shù)字部分?jǐn)?shù)字部分 指數(shù)部分指數(shù)部分 + .314159 + .314159 3 3nflo

12、atfloat型型( (單精度浮點(diǎn)型單精度浮點(diǎn)型) )u編譯系統(tǒng)為編譯系統(tǒng)為floatfloat型變量分配型變量分配4 4個(gè)字節(jié)個(gè)字節(jié)ndoubledouble型型( (雙精度浮點(diǎn)型雙精度浮點(diǎn)型) )u編譯系統(tǒng)為編譯系統(tǒng)為doubledouble型變量分配型變量分配8 8個(gè)字節(jié)個(gè)字節(jié)nlong double(long double(長(zhǎng)雙精度長(zhǎng)雙精度) )型型u編譯系統(tǒng)為編譯系統(tǒng)為doubledouble型變量分配型變量分配8 8個(gè)或個(gè)或1616個(gè)字節(jié)個(gè)字節(jié)(1) (1) 算術(shù)運(yùn)算符算術(shù)運(yùn)算符 +( +(加加)-()-(減減) ) * *( (乘乘) /() /(除除) %() %(整除整除求余

13、求余)+()+(自加自加) -() -(自減自減) )(2) (2) 關(guān)系運(yùn)算符關(guān)系運(yùn)算符( (大于大于) )( (小于小于) ) ( (等于等于) )( (大大于或等于于或等于) )( (小于或等于小于或等于) )!( (不等不等于于) )( () ) 邏輯運(yùn)算符邏輯運(yùn)算符 ( (邏輯與邏輯與) |() |(邏輯或邏輯或) ) !( (邏輯非邏輯非) )( () ) 位運(yùn)算符位運(yùn)算符 () (按位右移按位右移) ) ( (按位與按位與) |() |(按位按位或或) () (按位異或按位異或) ) ( (按位取反按位取反) )( () ) 賦值運(yùn)算符賦值運(yùn)算符 ( (及其擴(kuò)展賦值運(yùn)算符及其擴(kuò)展

14、賦值運(yùn)算符) )( () ) 條件運(yùn)算符條件運(yùn)算符 (?:) (?:)( () ) 逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符 ( (,) )( () ) 指針運(yùn)算符指針運(yùn)算符 ( (* *) )(9 9)引用運(yùn)算符和地址運(yùn)算符)引用運(yùn)算符和地址運(yùn)算符 ( () )(10) (10) 求字節(jié)數(shù)運(yùn)算符(求字節(jié)數(shù)運(yùn)算符(sizeofsizeof)(11) (11) 強(qiáng)制類(lèi)型轉(zhuǎn)換運(yùn)算符(強(qiáng)制類(lèi)型轉(zhuǎn)換運(yùn)算符( ( (類(lèi)型類(lèi)型) ) 或類(lèi)型或類(lèi)型( )( ))(1 1)算術(shù)運(yùn)算符與算術(shù)表達(dá)式)算術(shù)運(yùn)算符與算術(shù)表達(dá)式(2 2)賦值運(yùn)算符與賦值表達(dá)式)賦值運(yùn)算符與賦值表達(dá)式(3 3)逗號(hào)運(yùn)算符與逗號(hào)表達(dá)式)逗號(hào)運(yùn)算符與逗號(hào)表達(dá)式

15、a.a.(加法運(yùn)算符,或正值運(yùn)算符。如(加法運(yùn)算符,或正值運(yùn)算符。如3+53+5,+3+3) (減法運(yùn)算符,或負(fù)值運(yùn)算符。如(減法運(yùn)算符,或負(fù)值運(yùn)算符。如5-25-2,-3-3) * * ( (乘法運(yùn)算符。如乘法運(yùn)算符。如3 3* *5)5) (除法運(yùn)算符。如(除法運(yùn)算符。如5/35/3) (模運(yùn)算符,或稱(chēng)求余運(yùn)算符,兩側(cè)均應(yīng)為(模運(yùn)算符,或稱(chēng)求余運(yùn)算符,兩側(cè)均應(yīng)為整型數(shù)據(jù),如整型數(shù)據(jù),如的值為的值為)。)。b.b.用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象(也稱(chēng)操作數(shù))用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象(也稱(chēng)操作數(shù))連接起來(lái)的、符合連接起來(lái)的、符合C C語(yǔ)法規(guī)則的式子,稱(chēng)語(yǔ)法規(guī)則的式子,稱(chēng)C C算術(shù)表達(dá)算術(shù)表達(dá)

16、式。式。c.c.在進(jìn)行運(yùn)算時(shí),不同類(lèi)型的數(shù)據(jù)要先轉(zhuǎn)換成在進(jìn)行運(yùn)算時(shí),不同類(lèi)型的數(shù)據(jù)要先轉(zhuǎn)換成同一類(lèi)型,然后進(jìn)行運(yùn)算。同一類(lèi)型,然后進(jìn)行運(yùn)算。d.d.自增自增(+)(+)和自減和自減(-)(-)運(yùn)算符作用運(yùn)算符作用+i i(在使用在使用i i之前,先使之前,先使i i的值加的值加1 1,如果,如果i i的原的原值為值為3 3,則執(zhí)行,則執(zhí)行j=+ij=+i后,后,j j的值為的值為4 4)-i (i (在使用在使用i i之前,先使之前,先使i i的值減的值減1 1,如果,如果i i的原的原值為值為3 3,則執(zhí)行,則執(zhí)行j=-ij=-i后,后,j j的值為的值為2)2)i+ (i+ (在使用在使用

17、i i之后,使之后,使i i的值加的值加1 1,如果,如果i i的原值的原值為為3 3,則執(zhí)行,則執(zhí)行j=i+j=i+后,后,j j的值為的值為3 3,然后,然后i i變?yōu)樽優(yōu)?)4)i-(i-(在使用在使用i i之后,使之后,使i i的值減的值減1 1,如果,如果i i的原值為的原值為3 3,則執(zhí)行,則執(zhí)行j=i-j=i-后,后,j j的值為的值為3 3,然后,然后i i變?yōu)樽優(yōu)?)2)(e)(e)可以利用強(qiáng)制類(lèi)型轉(zhuǎn)換運(yùn)算符將一個(gè)表達(dá)式可以利用強(qiáng)制類(lèi)型轉(zhuǎn)換運(yùn)算符將一個(gè)表達(dá)式轉(zhuǎn)換成所需類(lèi)型。轉(zhuǎn)換成所需類(lèi)型。強(qiáng)制類(lèi)型轉(zhuǎn)換強(qiáng)制類(lèi)型轉(zhuǎn)換的一般形式為的一般形式為: :(類(lèi)型名)(表達(dá)式)例如:(類(lèi)型名

18、)(表達(dá)式)例如:(intint)()(x+yx+y) (將(將x+yx+y的值轉(zhuǎn)換成整型)的值轉(zhuǎn)換成整型)( (double)double) (將(將a a轉(zhuǎn)換成轉(zhuǎn)換成doubledouble類(lèi)型)類(lèi)型)(intint)x+y(x+y(只將轉(zhuǎn)換成整型,然后與相加只將轉(zhuǎn)換成整型,然后與相加) )int(x) int(x) 或或 int(x+y)(int(x+y)(類(lèi)型名不加括號(hào),而變量類(lèi)型名不加括號(hào),而變量或表達(dá)式用括號(hào)括起來(lái)或表達(dá)式用括號(hào)括起來(lái)例例2. 2. 強(qiáng)制類(lèi)型轉(zhuǎn)換。強(qiáng)制類(lèi)型轉(zhuǎn)換。# #include include using namespace std;using namespac

19、e std;int main( )int main( ) float x; float x; int i; int i; x=3.6; x=3.6; i=(int)x; i=(int)x; coutx=x,i= iendl; coutx=x,i= iendl; return 0; return 0; 運(yùn)行結(jié)果如下:運(yùn)行結(jié)果如下:3.63.6,i=3i=3的型仍為的型仍為floatfloat型,值仍等于型,值仍等于3.63.6。a.a.賦值運(yùn)算符賦值運(yùn)算符賦值符號(hào)賦值符號(hào)“”就是賦值運(yùn)算符,它的作用就是賦值運(yùn)算符,它的作用是將一個(gè)數(shù)據(jù)或表達(dá)式的值賦給一個(gè)變量。是將一個(gè)數(shù)據(jù)或表達(dá)式的值賦給一個(gè)變量

20、。b.b.賦值過(guò)程中的類(lèi)型轉(zhuǎn)換賦值過(guò)程中的類(lèi)型轉(zhuǎn)換(1)(1)將浮點(diǎn)型數(shù)據(jù)(包括單、雙精度)賦給將浮點(diǎn)型數(shù)據(jù)(包括單、雙精度)賦給整型變量時(shí),舍棄其小數(shù)部分。整型變量時(shí),舍棄其小數(shù)部分。(2)(2)將整型數(shù)據(jù)賦給浮點(diǎn)型變量時(shí),數(shù)值不將整型數(shù)據(jù)賦給浮點(diǎn)型變量時(shí),數(shù)值不變,但以指數(shù)形式存儲(chǔ)到變量中。變,但以指數(shù)形式存儲(chǔ)到變量中。(3)(3)將一個(gè)將一個(gè)doubledouble型數(shù)據(jù)賦給型數(shù)據(jù)賦給floatfloat變量時(shí),變量時(shí),要注意數(shù)值范圍不能溢出。要注意數(shù)值范圍不能溢出。(4)(4)字符型數(shù)據(jù)賦給整型變量,將字符的字符型數(shù)據(jù)賦給整型變量,將字符的ASCIIASCII碼賦給整型變量碼賦給整型變

21、量。(5)(5)將一個(gè)將一個(gè)intint、shortshort或或longlong型數(shù)據(jù)賦給一個(gè)型數(shù)據(jù)賦給一個(gè)charchar型變量,只將其低型變量,只將其低8 8位原封不動(dòng)地送到位原封不動(dòng)地送到charchar型變量(發(fā)生截?cái)啵?。例如型變量(發(fā)生截?cái)啵?。例如short int i=289;short int i=289;char c;char c;c=i; /c=i; /將一個(gè)將一個(gè)intint型數(shù)據(jù)賦給一個(gè)型數(shù)據(jù)賦給一個(gè)charchar型變量型變量(6)(6)將將signed(signed(有符號(hào)有符號(hào)) )型數(shù)據(jù)賦給長(zhǎng)度相同的型數(shù)據(jù)賦給長(zhǎng)度相同的unsigned(unsigned(無(wú)符號(hào)

22、無(wú)符號(hào)) )型變量,將存儲(chǔ)單元內(nèi)容原樣型變量,將存儲(chǔ)單元內(nèi)容原樣照搬(連原有的符號(hào)位也作為數(shù)值一起傳送)。照搬(連原有的符號(hào)位也作為數(shù)值一起傳送)。例例3.3.將有符號(hào)數(shù)據(jù)傳送給無(wú)符號(hào)變量。將有符號(hào)數(shù)據(jù)傳送給無(wú)符號(hào)變量。# #include include using namespace std;using namespace std;int main( )int main( ) unsigned short a; unsigned short a; short int b=-1; short int b=-1; a=b; a=b; couta=aendl; couta=aendl; return 0; return 0;

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論