第二章 C語言基本數(shù)據(jù)類型及表示_第1頁
第二章 C語言基本數(shù)據(jù)類型及表示_第2頁
第二章 C語言基本數(shù)據(jù)類型及表示_第3頁
第二章 C語言基本數(shù)據(jù)類型及表示_第4頁
第二章 C語言基本數(shù)據(jù)類型及表示_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第二章第二章 C C語言基本數(shù)據(jù)類型語言基本數(shù)據(jù)類型及表示方法及表示方法 計(jì)算機(jī)應(yīng)用基礎(chǔ)計(jì)算機(jī)應(yīng)用基礎(chǔ)2第一節(jié)第一節(jié) C語言數(shù)據(jù)類型語言數(shù)據(jù)類型 空類型空類型數(shù)據(jù)類型數(shù)據(jù)類型構(gòu)造數(shù)據(jù)類型構(gòu)造數(shù)據(jù)類型基本數(shù)據(jù)類型基本數(shù)據(jù)類型指針類型指針類型整型整型字符型字符型實(shí)型(浮點(diǎn)型)實(shí)型(浮點(diǎn)型)單精度型單精度型雙精度型雙精度型數(shù)組數(shù)組結(jié)構(gòu)結(jié)構(gòu)聯(lián)合聯(lián)合枚舉枚舉3第二節(jié)第二節(jié) 字符集及詞法規(guī)則字符集及詞法規(guī)則 一、字符集一、字符集字符是語言的最小構(gòu)成單位,由一個語言使用的所字符是語言的最小構(gòu)成單位,由一個語言使用的所有字符構(gòu)成的集合稱為該語言的字符有字符構(gòu)成的集合稱為該語言的字符(一一)ASCII字符集字符

2、集ASCII字符集中列出了所有可以使用的字符,共字符集中列出了所有可以使用的字符,共128個,它個,它具有以下特征:具有以下特征: 每個字符都有一個唯一的次序值,即每個字符都有一個唯一的次序值,即ASCII碼。碼。 數(shù)字字符數(shù)字字符0、1、2、9的的ASCII碼從碼從48開始,按升序連續(xù)排列。開始,按升序連續(xù)排列。 大寫字母大寫字母A、B、C、Z的的ASCII碼從碼從65開始,按升序連續(xù)排列。開始,按升序連續(xù)排列。 小寫字母小寫字母a、b、c、z的的ASCII碼從碼從97開開始,按升序連續(xù)排列。始,按升序連續(xù)排列。 4轉(zhuǎn)義字符轉(zhuǎn)義字符nC語言也經(jīng)常使用轉(zhuǎn)義字符,用于表示一些控制字符語言也經(jīng)常使

3、用轉(zhuǎn)義字符,用于表示一些控制字符或其他字符集無法表示的字符。或其他字符集無法表示的字符。n轉(zhuǎn)義字符由反斜杠跟上一個字符或數(shù)字組成,它把反轉(zhuǎn)義字符由反斜杠跟上一個字符或數(shù)字組成,它把反斜杠后面的字符或數(shù)字轉(zhuǎn)換成別的意義。雖然轉(zhuǎn)義字斜杠后面的字符或數(shù)字轉(zhuǎn)換成別的意義。雖然轉(zhuǎn)義字符形式上由多個字符組成,但它只代表一個字符。符形式上由多個字符組成,但它只代表一個字符。5字符含義ASCII碼n t b r f ddd xhh 換行 向跳格(即跳到下一個輸出區(qū)) 退格 車 紙換頁 斜杠 輸出單引號 輸出雙引號 13 位八進(jìn)制所代表的字符 12 位十六進(jìn)制所代表的字符 10981312923934 6二、詞

4、法規(guī)則二、詞法規(guī)則n程序設(shè)計(jì)語言中的單詞(也稱詞法元素),是由一個程序設(shè)計(jì)語言中的單詞(也稱詞法元素),是由一個或幾個字符構(gòu)成的有意義的最小語言單位。在或幾個字符構(gòu)成的有意義的最小語言單位。在C語言語言中,單詞一般被分成五類:中,單詞一般被分成五類:標(biāo)識符、關(guān)鍵字(保留標(biāo)識符、關(guān)鍵字(保留字)、常量和字符串、運(yùn)算符、其它分隔符。字)、常量和字符串、運(yùn)算符、其它分隔符。n(一一) 標(biāo)識符標(biāo)識符 n標(biāo)識符用來標(biāo)識或表示程序、函數(shù)、數(shù)據(jù)類型、變量標(biāo)識符用來標(biāo)識或表示程序、函數(shù)、數(shù)據(jù)類型、變量等。等。nC語言規(guī)定,標(biāo)識符由字母、數(shù)字及下劃線組成,語言規(guī)定,標(biāo)識符由字母、數(shù)字及下劃線組成,。標(biāo)識符所包含

5、的字符個數(shù)不。標(biāo)識符所包含的字符個數(shù)不限,但一般不要超過限,但一般不要超過32個字符,如果超過個字符,如果超過32個字符,個字符,系統(tǒng)只識別前系統(tǒng)只識別前32個字符,標(biāo)識符的英文字母區(qū)分大小個字符,標(biāo)識符的英文字母區(qū)分大小寫。寫。7例例n下面是合法的標(biāo)識符:下面是合法的標(biāo)識符:sum,_total, Class,student_name,lotus_1_2_3,li_lingn下面是不合法的標(biāo)識符:下面是不合法的標(biāo)識符:M.D.john,$123,3a54,abnC語言中,標(biāo)識符中的字母區(qū)分大小寫。語言中,標(biāo)識符中的字母區(qū)分大小寫。例如,例如,Sum和和sum是兩個不同的標(biāo)識符。是兩個不同的標(biāo)

6、識符。用戶自己定義標(biāo)識符時,不能使用以下列出的關(guān)鍵用戶自己定義標(biāo)識符時,不能使用以下列出的關(guān)鍵字。字。8關(guān)鍵字關(guān)鍵字n在在C語言中,關(guān)鍵字是有特定含義和專門用途的標(biāo)識語言中,關(guān)鍵字是有特定含義和專門用途的標(biāo)識符(在符(在C語言的學(xué)習(xí)進(jìn)程中,我們會一一認(rèn)識它們),語言的學(xué)習(xí)進(jìn)程中,我們會一一認(rèn)識它們),不能作為其他用途。不能作為其他用途。C語言中的關(guān)鍵字一共有語言中的關(guān)鍵字一共有32個:個:autobreakcasecharconstcontinue default dodouble elseenumextern floatforgotoifintlongregister return shor

7、signedsizeofstaticstruct switch typedef unionunsigned voidvolatile while9特定字特定字n特定字是特定字是C C語言定義的一些作為指令的標(biāo)識符,它們語言定義的一些作為指令的標(biāo)識符,它們主要用在預(yù)處理命令中,習(xí)慣將它們看作是關(guān)鍵字。主要用在預(yù)處理命令中,習(xí)慣將它們看作是關(guān)鍵字。特定字主要有以下特定字主要有以下7 7個:個:ndefine, include, undef, ifdef, ifndef, endifdefine, include, undef, ifdef, ifndef, endif, , line line 1

8、0第三節(jié)第三節(jié) 常量常量n在程序運(yùn)行過程中,其值不能改變的量稱為常量。在程序運(yùn)行過程中,其值不能改變的量稱為常量。nC C語言中,常量是有數(shù)據(jù)類型的,它的類型由書寫格語言中,常量是有數(shù)據(jù)類型的,它的類型由書寫格式?jīng)Q定。式?jīng)Q定。1010、017017、0 x2f0 x2f是整型常量,是整型常量,123.23123.23、4.3e4.3e2 2是實(shí)型常量,是實(shí)型常量,aa、nn是字符常量,是字符常量,“12345”12345”、“China”China”是字符串常量。是字符串常量。11一、整型常量一、整型常量nC C語言中的整型常量(整數(shù))有十進(jìn)制、八進(jìn)制、十語言中的整型常量(整數(shù))有十進(jìn)制、八進(jìn)

9、制、十六進(jìn)制六進(jìn)制3 3種表現(xiàn)形式。種表現(xiàn)形式。 十進(jìn)制整數(shù)。由正、負(fù)號和數(shù)字十進(jìn)制整數(shù)。由正、負(fù)號和數(shù)字0 09 9組成,但組成,但首位數(shù)字不能是首位數(shù)字不能是0 0。如。如123123、0 0、1212等。等。 八進(jìn)制整數(shù)。由正、負(fù)號和數(shù)字八進(jìn)制整數(shù)。由正、負(fù)號和數(shù)字0 07 7組成,組成,首首位數(shù)字必須是位數(shù)字必須是0 0。如。如01230123、011011等。等。 十六進(jìn)制整數(shù)。由正、負(fù)號和數(shù)字十六進(jìn)制整數(shù)。由正、負(fù)號和數(shù)字0 09 9、英文、英文字符字符a af f或或A AF F組成,組成,首位數(shù)字前必須有前綴首位數(shù)字前必須有前綴0 x0 x或或0X0X. .。如。如0 x12a

10、0 x12a、0X34D0X34D等。等。12例例2.1 2.1 不同形式的整數(shù)的賦值和輸出不同形式的整數(shù)的賦值和輸出main()main() int int a, b, c; a, b, c; a = 13; a = 13; b = 013; b = 013; c = 0 x13; c = 0 x13; printf printf (%d,%d,%d n,a, b, c); (%d,%d,%d n,a, b, c); printf printf (%x,%x,%x n,a, b, c); (%x,%x,%x n,a, b, c); printf printf (%o,%o,%o n,a, b

11、, c); (%o,%o,%o n,a, b, c); 上機(jī)驗(yàn)證上機(jī)驗(yàn)證13二、實(shí)型常量二、實(shí)型常量n實(shí)型常量又稱為浮點(diǎn)數(shù),可以用十進(jìn)制浮點(diǎn)數(shù)表示法和科學(xué)計(jì)實(shí)型常量又稱為浮點(diǎn)數(shù),可以用十進(jìn)制浮點(diǎn)數(shù)表示法和科學(xué)計(jì)數(shù)法表示,與數(shù)學(xué)中實(shí)數(shù)的表示類似。數(shù)法表示,與數(shù)學(xué)中實(shí)數(shù)的表示類似。n(一)(一) 點(diǎn)數(shù)表示法點(diǎn)數(shù)表示法例如,例如,3.14、0.0n(二)科學(xué)計(jì)數(shù)法(二)科學(xué)計(jì)數(shù)法例如,例如,123e3或或123E3 123103 e3、2.1e3.5、.e3 是非法的實(shí)數(shù)。是非法的實(shí)數(shù)。一個實(shí)數(shù)可以用科學(xué)計(jì)數(shù)法表示為多種指數(shù)形式。一個實(shí)數(shù)可以用科學(xué)計(jì)數(shù)法表示為多種指數(shù)形式。v例如:例如:123.45

12、6v 123.456e0 v 12.3456e1 v 1.23456e2 規(guī)范化的指數(shù)形式規(guī)范化的指數(shù)形式 v 0.0123456e414例例2.22.2實(shí)型數(shù)據(jù)的輸出實(shí)型數(shù)據(jù)的輸出main()main() float a = 123.45; float a = 123.45; printf printf (%f n,a); (%f n,a); printf printf (%e n,a); (%e n,a); 上機(jī)驗(yàn)證上機(jī)驗(yàn)證15三、字符常量和字符串常量三、字符常量和字符串常量n(一)字符常量(一)字符常量n字符常量是指單個字符,用一對單引號及其所括起的字符常量是指單個字符,用一對單引號及其

13、所括起的字符來表示。字符來表示。例如,例如,AA、aa、11、&是字符常量,是字符常量,它們分別表示字母它們分別表示字母A A、a a、數(shù)字字符、數(shù)字字符1 1和符號和符號& &。每個。每個字符在內(nèi)存中占用一個字節(jié),用于存儲它的字符在內(nèi)存中占用一個字節(jié),用于存儲它的ASCIIASCII碼。碼。所以所以C C語言中的字符具有數(shù)值特征,可以像整數(shù)一語言中的字符具有數(shù)值特征,可以像整數(shù)一樣參加運(yùn)算,例如,樣參加運(yùn)算,例如,A+1= 66A+1= 66,對應(yīng)于字符,對應(yīng)于字符BB,因?yàn)樽址?,因?yàn)樽址鸅B的的ASCIIASCII碼是碼是6666。 16(二)字符串常量(二)字符串

14、常量n字符串常量是一對雙引號括起來的字符序列。字符串常量是一對雙引號括起來的字符序列?!癏ow are you?”How are you?”、“student”student”、“a”a”、“123.456”123.456”注意注意aa是字符常量,而是字符常量,而“a”a”是字符串常量。是字符串常量。n兩者有什么區(qū)別呢?兩者有什么區(qū)別呢?C C語言規(guī)定,在每一個字符串的結(jié)尾加一語言規(guī)定,在每一個字符串的結(jié)尾加一個字符串結(jié)束標(biāo)志個字符串結(jié)束標(biāo)志00。00是一個是一個“空操作字符空操作字符”,它,它不引起任何控制動作,也不是一個可顯示字符。不引起任何控制動作,也不是一個可顯示字符。例如例如: :字

15、符串字符串“StudentStudent”,存放在內(nèi)存中是,存放在內(nèi)存中是S St tu ud de en nt t00n系統(tǒng)在尾部自動加上了系統(tǒng)在尾部自動加上了00,它僅用來判斷字符串是否結(jié)束,它僅用來判斷字符串是否結(jié)束,在輸出時并不輸出在輸出時并不輸出00。所以字符串。所以字符串“a”a”實(shí)際上包含了實(shí)際上包含了aa和和00兩個字符。兩個字符。17四、符號常量四、符號常量一個常量也可以用一個標(biāo)識符來代表,稱為符號常量。一個常量也可以用一個標(biāo)識符來代表,稱為符號常量。例例2.3 2.3 輸入球的半徑,計(jì)算圓面積、球表面積和體積輸入球的半徑,計(jì)算圓面積、球表面積和體積#define P 3.1

16、4 #define P 3.14 main()main() float r, s1, s2, v; float r, s1, s2, v; scanf(%f,&r scanf(%f,&r); ); s1= P s1= P* *r r* *r; r; s2 = 4 s2 = 4* *P P* *r r* *r; r; v = 4.0/3 v = 4.0/3* *P P* *r r* *r r* *r; r; printf(s1=%f,s2=%f,v=%fn,s1, s2, v); printf(s1=%f,s2=%f,v=%fn,s1, s2, v); 18 例例2.4寫出以下程

17、序的運(yùn)行結(jié)果寫出以下程序的運(yùn)行結(jié)果main() char c1=a,c2=b,c3 =c; char c4 =101,c5 =116; printf(a%d b%d t c%c t abcn,c1, c2, c3); printf( t b %c%c,c4, c5);運(yùn)行驗(yàn)證運(yùn)行驗(yàn)證19第四節(jié)第四節(jié) 變量及其類型說明變量及其類型說明 n在程序運(yùn)行過程中,其值可以改變的量稱為變量。在程序運(yùn)行過程中,其值可以改變的量稱為變量。n一旦定義了某個變量,該變量表示的都將是同一個內(nèi)一旦定義了某個變量,該變量表示的都將是同一個內(nèi)存位置,程序員只需提供一個名字,就可在程序的其存位置,程序員只需提供一個名字,就

18、可在程序的其它部分引用該內(nèi)存位置,直到釋放該變量。它部分引用該內(nèi)存位置,直到釋放該變量。 20變量具有名字和數(shù)據(jù)類型兩個基本屬性變量具有名字和數(shù)據(jù)類型兩個基本屬性n每一變量被指定為一確定數(shù)據(jù)類型,在編譯時就能為每一變量被指定為一確定數(shù)據(jù)類型,在編譯時就能為其分配相應(yīng)的存儲單元。其分配相應(yīng)的存儲單元。如指定如指定a、b為為int 型,編譯系統(tǒng)將為型,編譯系統(tǒng)將為a和和b各分配兩各分配兩個字節(jié),并按整數(shù)方式存儲數(shù)據(jù)。個字節(jié),并按整數(shù)方式存儲數(shù)據(jù)。n一個變量在一個時刻只能存放一個值。如果某一個變一個變量在一個時刻只能存放一個值。如果某一個變量在程序運(yùn)行中數(shù)據(jù)發(fā)生變化,則現(xiàn)行值將取代原來量在程序運(yùn)行中

19、數(shù)據(jù)發(fā)生變化,則現(xiàn)行值將取代原來的數(shù)據(jù)。的數(shù)據(jù)。 21一、整型變量一、整型變量 表表2.1 2.1 整數(shù)類型整數(shù)類型 名稱名稱 類型名類型名 數(shù)據(jù)長度數(shù)據(jù)長度 最小取值范圍最小取值范圍 有符號整型有符號整型 intint 16 16位位 327683276832767 32767 (2 215152 215151 1) 無符號整型無符號整型 unsigned intunsigned int 16 16位位 0 065535 65535 (0 02 216161 1) 有符號短整型有符號短整型 short intshort int 16 16位位 327683276832767 32767 (2

20、 215152 215151 1) 無符號短整型無符號短整型 unsigned shortintunsigned shortint 16 16位位 0 065535 65535 (0 02 216161 1) 有符號長整型有符號長整型 long intlong int 32 32位位 214748364821474836482147483647 2147483647 (2 231312 231311 1)無符號長整型無符號長整型 unsigned long intunsigned long int 32 32位位 0 04294967295 4294967295 (0 02 232321 1)

21、22例例 2.5 整型變量的定義與使用整型變量的定義與使用 main() int a, b, c, d; unsigned u; a =12; b = 24; u = 10; c = a+u; d = b+u; printf(a+u = %d, b+u = %d n, c, d); 23二、實(shí)型變量二、實(shí)型變量 n單精度(單精度( floatfloat型)型)每個每個floatfloat型在內(nèi)存中占用型在內(nèi)存中占用4 4個字節(jié)個字節(jié),它的有效數(shù)字,它的有效數(shù)字一般有一般有7 78 8位,取值范圍約為位,取值范圍約為(10(10-37-3710103838) ) 。單精度實(shí)型變量只能保證單精度實(shí)

22、型變量只能保證8 8位有效數(shù)字位有效數(shù)字 n雙精度(雙精度(doubledouble型)型)double double 型所占的存儲空間是型所占的存儲空間是floatfloat型的兩倍,型的兩倍,即即8 8個字節(jié)個字節(jié),它的有效數(shù)字一般有,它的有效數(shù)字一般有15151616位,取值范圍位,取值范圍約為約為(10(10-307-3071010308308) )。24例例 2.6實(shí)型數(shù)據(jù)的舍入誤差實(shí)型數(shù)據(jù)的舍入誤差main()main() float a; double b; float a; double b; a = 1234567.89; b = 1234567.89; a = 123456

23、7.89; b = 1234567.89; a = a +10; b = b + 10; a = a +10; b = b + 10; printf(%f,%lf,a printf(%f,%lf,a, b); , b); 輸出結(jié)果中,輸出結(jié)果中,a a的結(jié)果沒有的結(jié)果沒有b b的結(jié)果精確的結(jié)果精確運(yùn)行驗(yàn)證運(yùn)行驗(yàn)證25三、字符型變量三、字符型變量n字符型變量用來存儲字符常量。它在定義時使用類字符型變量用來存儲字符常量。它在定義時使用類型名型名char,例如例如: char c1,c2;n定義了兩個字符變量,各可以放一個字符,因此可定義了兩個字符變量,各可以放一個字符,因此可以用下面的語句對它們賦

24、值:以用下面的語句對它們賦值:c1 = A; c2 = #;26字符變量的特點(diǎn)字符變量的特點(diǎn)n將一個字符常量賦予一個字符變量,實(shí)際上是把該字將一個字符常量賦予一個字符變量,實(shí)際上是把該字符的符的ASCII碼存放到字符變量的存儲單元中。碼存放到字符變量的存儲單元中。例如字符例如字符A的的ASCII碼是碼是65,即將,即將65以存儲整數(shù)以存儲整數(shù)數(shù)據(jù)的方式進(jìn)行存儲。數(shù)據(jù)的方式進(jìn)行存儲。n字符型數(shù)據(jù)和整型數(shù)據(jù)之間就可以通用。既可以用一字符型數(shù)據(jù)和整型數(shù)據(jù)之間就可以通用。既可以用一個字符對字符變量賦值,也可以用一個整數(shù)對字符變個字符對字符變量賦值,也可以用一個整數(shù)對字符變量賦值(此時整數(shù)的取值范圍應(yīng)是

25、有效的量賦值(此時整數(shù)的取值范圍應(yīng)是有效的ASCII碼)。碼)。同樣,一個字符數(shù)據(jù)既可以以字符形式輸出,也同樣,一個字符數(shù)據(jù)既可以以字符形式輸出,也可以以整數(shù)形式(字符的可以以整數(shù)形式(字符的ASCII碼)輸出。碼)輸出。對字符數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算,相當(dāng)于對它們的對字符數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算,相當(dāng)于對它們的ASCII碼進(jìn)行相應(yīng)運(yùn)算。碼進(jìn)行相應(yīng)運(yùn)算。27例例2.7 字符變量的輸入、輸出字符變量的輸入、輸出main () char c1,c2; c1 = 65; c2 = B; printf(%c,%cn,c1,c2); printf(%d,%dn,c1,c2); 28例例2.8 譯密碼程序譯密碼程序n要將

26、要將“China”譯成密碼,密碼規(guī)律是:用原來的字母后面譯成密碼,密碼規(guī)律是:用原來的字母后面第第4個字母代替原來的字母。例如,字母個字母代替原來的字母。例如,字母“A”后面第后面第4個字個字母是母是“E”,用,用“E”代替代替“A”。因此,。因此,“China”應(yīng)譯成應(yīng)譯成“Glmre”。請編一程序,首先對。請編一程序,首先對c1、c2、c3、c4、c5這這5個變量分別賦值個變量分別賦值C、h、i、n 、a,經(jīng)過運(yùn)算,經(jīng)過運(yùn)算,使使c1、c2、c3、c4、c5分別變?yōu)榉謩e變?yōu)镚、l、m、r 、e,并輸出。,并輸出。main () char c1=C,c2=h,c3=i,c4=n,c5=a;

27、c1=c1+4;c2=c2+4;c3=c3+4;c3=c4+4;c5=c5+4; printf(密碼是密碼是%c%c%c%c%cn,c1, c2, c3, c4, c5); 29四、變量賦值四、變量賦值n變量可以看作是用來存放常量的盒子。將常量存放于變量可以看作是用來存放常量的盒子。將常量存放于變量中通常稱為對變量賦值。變量中通常稱為對變量賦值。n變量賦值一般有三種方法:變量賦值一般有三種方法:定義變量的同時對變量賦值(也稱對變量初始化或定義變量的同時對變量賦值(也稱對變量初始化或者賦初值)者賦初值) 用賦值語句對變量賦值用賦值語句對變量賦值 使用使用scanfscanf()()輸入函數(shù)對變量

28、賦值。輸入函數(shù)對變量賦值。對于字符變量的賦值,除了以上對于字符變量的賦值,除了以上3 3種方法外,還可種方法外,還可以使用字符輸入函數(shù)以使用字符輸入函數(shù)getchargetchar()()。 30例例2.9 變量賦值的方法變量賦值的方法main () int a, b, c = 3; b = 3; scanf(%d,&a); printf(%d,%d,%d,a, b, c); 31賦值時要注意變量類型和常量類型保持一致賦值時要注意變量類型和常量類型保持一致 main() int a; a = 32789; /* 將超過最大允許值的一個數(shù)據(jù)賦予將超過最大允許值的一個數(shù)據(jù)賦予a */ pr

29、intf(%d,a);32五、變量類型轉(zhuǎn)換規(guī)則五、變量類型轉(zhuǎn)換規(guī)則 n在在C C語言中,不同類型的數(shù)據(jù)可以混合運(yùn)算,但這些語言中,不同類型的數(shù)據(jù)可以混合運(yùn)算,但這些數(shù)據(jù)首先要轉(zhuǎn)換成同一類型,然后再作運(yùn)算。數(shù)據(jù)首先要轉(zhuǎn)換成同一類型,然后再作運(yùn)算。n數(shù)據(jù)類型的轉(zhuǎn)換包括自動轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換。數(shù)據(jù)類型的轉(zhuǎn)換包括自動轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換。自動轉(zhuǎn)換根據(jù)運(yùn)算符是否為賦值運(yùn)算又有不同的轉(zhuǎn)自動轉(zhuǎn)換根據(jù)運(yùn)算符是否為賦值運(yùn)算又有不同的轉(zhuǎn)換規(guī)則,自動轉(zhuǎn)換由換規(guī)則,自動轉(zhuǎn)換由C C語言編譯系統(tǒng)自動完成。語言編譯系統(tǒng)自動完成。強(qiáng)制轉(zhuǎn)換則通過特定的運(yùn)算符完成強(qiáng)制轉(zhuǎn)換則通過特定的運(yùn)算符完成 。33普通算術(shù)運(yùn)算(非賦值運(yùn)算)的轉(zhuǎn)換規(guī)則

30、普通算術(shù)運(yùn)算(非賦值運(yùn)算)的轉(zhuǎn)換規(guī)則 doubledoublefloatfloatunsigned longunsigned longlonglongunsignedunsignedunsigned shortunsigned shortintintchar, shortchar, short高高低低從右到左,從低到高;從整到實(shí),從短到長從右到左,從低到高;從整到實(shí),從短到長34轉(zhuǎn)換規(guī)則轉(zhuǎn)換規(guī)則n1.1.水平方向的轉(zhuǎn)換:水平方向的轉(zhuǎn)換:是必定的轉(zhuǎn)換,所有是必定的轉(zhuǎn)換,所有charchar型和型和shortshort型自動地轉(zhuǎn)換型自動地轉(zhuǎn)換成成intint型;型;所有所有unsigned shortunsigned short型自動地轉(zhuǎn)換成型自動地轉(zhuǎn)換成unsignedunsigned型;型;所有所有l(wèi)onglong型自動地轉(zhuǎn)換成型自動地轉(zhuǎn)換成unsigned longunsigned long型;所有型;所有floatfloat型自動地轉(zhuǎn)換成型自動地轉(zhuǎn)換成doubledouble型。型。n2 2垂直方向的轉(zhuǎn)換:經(jīng)過水平方向的轉(zhuǎn)換,如果參垂直方向的轉(zhuǎn)換:經(jīng)過水平方向的轉(zhuǎn)換,如果參加運(yùn)算的數(shù)據(jù)的類型仍然不相同,再將這些數(shù)據(jù)自動加運(yùn)算的數(shù)據(jù)的類型仍然不相同,再將這些數(shù)據(jù)自動轉(zhuǎn)換成其中級別最高的類型轉(zhuǎn)換成其中級別最高的類型 35n設(shè)變量設(shè)變量i i為為i

溫馨提示

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

評論

0/150

提交評論