C語(yǔ)言程序設(shè)計(jì)第2章-1數(shù)據(jù)類型、運(yùn)算符和表達(dá)式_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)第2章-1數(shù)據(jù)類型、運(yùn)算符和表達(dá)式_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)第2章-1數(shù)據(jù)類型、運(yùn)算符和表達(dá)式_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)第2章-1數(shù)據(jù)類型、運(yùn)算符和表達(dá)式_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)第2章-1數(shù)據(jù)類型、運(yùn)算符和表達(dá)式_第5頁(yè)
已閱讀5頁(yè),還剩33頁(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、12C數(shù)據(jù)類型基本類型構(gòu)造類型指針類型(*)空類型(void)字符類型(char)枚舉類型(enum)整型實(shí)型單精度型(float)雙精度型(double)數(shù)組( )結(jié)構(gòu)體(struct)共用體(union)短整型(short)長(zhǎng)整型(long)整型(int)C數(shù)據(jù)類型基本類型基本類型構(gòu)造類型構(gòu)造類型指針類型指針類型(*)空類型空類型(void)字符類型字符類型(char)枚舉類型枚舉類型(enum)整型整型實(shí)型實(shí)型單精度型單精度型(float)雙精度型雙精度型(double)數(shù)組數(shù)組( )結(jié)構(gòu)體結(jié)構(gòu)體(struct)共用體共用體(union)短整型短整型(short)長(zhǎng)整型長(zhǎng)整型(long)

2、整型整型(int)數(shù)據(jù)類型決定:數(shù)據(jù)類型決定:1. 數(shù)據(jù)占用的存儲(chǔ)空間的數(shù)據(jù)占用的存儲(chǔ)空間的長(zhǎng)度長(zhǎng)度2. 數(shù)據(jù)的取值范圍數(shù)據(jù)的取值范圍3. 數(shù)據(jù)的處理方法數(shù)據(jù)的處理方法3452.2.1 機(jī)器數(shù)和真值機(jī)器數(shù)和真值 機(jī)器數(shù)機(jī)器數(shù): :通常把一個(gè)數(shù)的最高位作為符號(hào)位,稱為數(shù)符,用通常把一個(gè)數(shù)的最高位作為符號(hào)位,稱為數(shù)符,用“0”0”表示正,表示正,“1”1”表示負(fù),其余位仍然表示數(shù)值。表示負(fù),其余位仍然表示數(shù)值。 6 真值真值: : 帶符號(hào)位的機(jī)器數(shù)對(duì)應(yīng)的數(shù)值稱為機(jī)器數(shù)的真值。帶符號(hào)位的機(jī)器數(shù)對(duì)應(yīng)的數(shù)值稱為機(jī)器數(shù)的真值。 (10100011)2= -35 無(wú)符號(hào)數(shù)無(wú)符號(hào)數(shù):當(dāng)計(jì)算機(jī)字長(zhǎng)的所有二進(jìn)位都

3、用來(lái)表示數(shù)值時(shí),當(dāng)計(jì)算機(jī)字長(zhǎng)的所有二進(jìn)位都用來(lái)表示數(shù)值時(shí),稱為無(wú)符號(hào)數(shù)。稱為無(wú)符號(hào)數(shù)。 7 補(bǔ)碼補(bǔ)碼 整數(shù)整數(shù) X X 的補(bǔ)碼指:對(duì)于正數(shù)與原碼相同;對(duì)于負(fù)數(shù),數(shù)的補(bǔ)碼指:對(duì)于正數(shù)與原碼相同;對(duì)于負(fù)數(shù),數(shù)符位為符位為 1 1,其數(shù)值部分就是,其數(shù)值部分就是 X X 的絕對(duì)值取反后最低位加的絕對(duì)值取反后最低位加 1 1。 -1補(bǔ)補(bǔ) = 11111111, -127補(bǔ)補(bǔ) = 10000001 浮點(diǎn)數(shù)浮點(diǎn)數(shù) 浮點(diǎn)數(shù)表示法與科學(xué)計(jì)數(shù)法相似,例如十進(jìn)制數(shù)浮點(diǎn)數(shù)表示法與科學(xué)計(jì)數(shù)法相似,例如十進(jìn)制數(shù) 2002168.00222002168.0022可以寫成:可以寫成:2002168.0022 = 0.200

4、21680022X102002168.0022 = 0.20021680022X107 7 = 2.0021680022X10 = 2.0021680022X106 6 = = 200216800.22X10200216800.22X10-2-28任何一個(gè)二進(jìn)制的浮點(diǎn)數(shù)可以表示成:任何一個(gè)二進(jìn)制的浮點(diǎn)數(shù)可以表示成: 100011 = 10001.12-010 = 0.1000112+011 =0.01000112+100在計(jì)算機(jī)中規(guī)定浮點(diǎn)數(shù)的尾數(shù)采用純小數(shù)形式在計(jì)算機(jī)中規(guī)定浮點(diǎn)數(shù)的尾數(shù)采用純小數(shù)形式 ,如果尾數(shù)最,如果尾數(shù)最高位為高位為 1 1 ,稱為規(guī)格化數(shù)。,稱為規(guī)格化數(shù)。 9浮點(diǎn)數(shù)在計(jì)算

5、機(jī)內(nèi)部的表示形式如下:浮點(diǎn)數(shù)在計(jì)算機(jī)內(nèi)部的表示形式如下:例如二進(jìn)制數(shù)例如二進(jìn)制數(shù) N = -0.1011 2 11 N = -0.1011 2 11 在機(jī)器中的存放方式如在機(jī)器中的存放方式如下所示下所示( (階符一位階符一位, ,階碼兩位原碼階碼兩位原碼, ,數(shù)符一位數(shù)符一位, ,尾數(shù)四位原碼尾數(shù)四位原碼) )2.2.42.2.4字符編碼字符編碼對(duì)字符的編碼方法很多,使用最普遍的是美國(guó)標(biāo)準(zhǔn)信息交換碼對(duì)字符的編碼方法很多,使用最普遍的是美國(guó)標(biāo)準(zhǔn)信息交換碼(American Standard Code for Information InterchangeAmerican Standard Cod

6、e for Information Interchange),),簡(jiǎn)稱簡(jiǎn)稱ASCIIASCII碼。碼。 10整數(shù)類型整數(shù)類型根據(jù)數(shù)據(jù)所占的二進(jìn)制位數(shù)分為:int、short、long;同樣存儲(chǔ)長(zhǎng)度的數(shù)據(jù)又分unsigned、signed;故可組合出六種類型。其值域由機(jī)器中數(shù)據(jù)的存儲(chǔ)長(zhǎng)度決定,如Turbo C中,有 short(2字節(jié))int(2字節(jié)) long(4字節(jié))。實(shí)數(shù)類型實(shí)數(shù)類型 實(shí)型數(shù)據(jù)又稱為浮點(diǎn)型數(shù)據(jù) ,分為float和double兩類,其中:float 型實(shí)數(shù)能接收7位有效數(shù)字, double型實(shí)數(shù)能接收15位有效數(shù)字。字符類型字符類型 其類型標(biāo)識(shí)符為char,在內(nèi)存中占一個(gè)字節(jié)

7、,字符型數(shù)據(jù)在內(nèi)存中以ASCII碼存儲(chǔ),其ASCII碼值為0127,如字符 a的ASCII碼值為97,用01100001表示。11類型符號(hào)關(guān)鍵字?jǐn)?shù)的表示范圍所占位數(shù)整型有無(wú)(signed) int(signed) short (int)(signed) long (int)Unsigned intUnsigned shortUnsigned long實(shí)型字符型有有有無(wú)floatdoublecharUnsigned char161632161632326488-3276832767065535-3276832767-2147483648214748364706553504294967295約3.

8、4E-383.4E38約1.7E-3081.7E308-1281270255說(shuō)明說(shuō)明:數(shù)據(jù)類型所占字節(jié)數(shù)隨機(jī)器硬件不同而不同數(shù)據(jù)類型所占字節(jié)數(shù)隨機(jī)器硬件不同而不同,上表以上表以IBM PC機(jī)為例。機(jī)為例。1213注意注意:l在程序中是根據(jù)前綴來(lái)區(qū)分各種進(jìn)制數(shù)的,一定要前綴 正確。l八進(jìn)制與十六進(jìn)制一般只表示正數(shù)。l長(zhǎng)整型常數(shù)的表示方法是加后綴 “L”或 “l(fā)”。l無(wú)符號(hào)數(shù)可用后綴 “U”或 “u”來(lái)表示。l常量的前后綴可同時(shí)使用以表示各種類型的數(shù), 如: 98L,78u,017lu,0 xaau,0X1fL。問(wèn)題:135= ( )100135 = ( )100 x135 = ( )10問(wèn)題:1

9、35= ( 135 )100135 = ( 93 )100 x135 = ( 309 )1014注意注意:l小數(shù)點(diǎn)不能單獨(dú)出現(xiàn),如:. 是錯(cuò)誤的。l指數(shù)形式表示中 “e”或 “E”兩邊必須有數(shù)據(jù)且后面必須為整數(shù)l實(shí)型常量默認(rèn)為double類型,可以通過(guò)在常量后加 f 或 F使常量轉(zhuǎn)換為float類型。例如:3.56F1516l可把一個(gè)字符常量賦值給一個(gè)字符變量,但不能把一個(gè)字符串常量賦值給一個(gè)字符變量。 例如: char m; m=“A”;注意注意:l一個(gè)字符常量占1個(gè)字節(jié)的內(nèi)存空間,而字符串常量所占內(nèi)存字節(jié)數(shù)等于其長(zhǎng)度加1。a a 0例 a“a”17例 符號(hào)常量舉例#define RATE

10、30main( ) int hour,salary; hour=10; salary=hour*RATE; printf(“salary1=%d,salary); hour=30; salary=hour*RATE; printf(“salary2=%d,salary);18注意注意:u變量必須先定義后使用,且定義一般放在函數(shù)體的開(kāi)頭部分。u比較變量名和變量值:變量名為合法標(biāo)識(shí)符,代表內(nèi)存中某一 存儲(chǔ)空間,該存儲(chǔ)空間中的數(shù)據(jù)就是該變量的值。如int,char,決定分配給變量的字節(jié)數(shù)和變量的表示范圍合法標(biāo)識(shí)符如int a;char x,y;其中:”=”為賦值符號(hào),不同于等于號(hào)”=“,賦值運(yùn)算自右

11、向左,賦值表達(dá)式的值是賦值后變量的值例如:int a=2,b,c=-1;int x=1,y=2,z=3;但不允許連續(xù)初始化多個(gè)變量,如int x=y=z=1錯(cuò)誤;同一函數(shù)中不允許變量重名;”=“左右的數(shù)據(jù)類型應(yīng)該一致。u變量賦值變量賦值:變量=賦值表達(dá)式編譯程序根據(jù)變量定義為其分配指定字節(jié)的內(nèi)存單元.地址int a=1, b=-3,c;abc2字節(jié)2字節(jié)2字節(jié)地址地址.內(nèi)存1-3隨機(jī)數(shù)191、按運(yùn)算符的功能分成:算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)、按運(yùn)算符的功能分成:算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符、位運(yùn)算符、條件運(yùn)算符、自增和自減算符、賦值運(yùn)算符、位運(yùn)算符、條件運(yùn)算符、自增和自減運(yùn)

12、算符、逗號(hào)運(yùn)算符、指針運(yùn)算符、強(qiáng)制類型轉(zhuǎn)換運(yùn)算符、運(yùn)算符、逗號(hào)運(yùn)算符、指針運(yùn)算符、強(qiáng)制類型轉(zhuǎn)換運(yùn)算符、分量運(yùn)算符、下標(biāo)運(yùn)算符、求字節(jié)數(shù)運(yùn)算符、函數(shù)調(diào)用運(yùn)分量運(yùn)算符、下標(biāo)運(yùn)算符、求字節(jié)數(shù)運(yùn)算符、函數(shù)調(diào)用運(yùn)算符等等。算符等等。 2、 C 語(yǔ)言的運(yùn)算符的優(yōu)先級(jí)與結(jié)合性語(yǔ)言的運(yùn)算符的優(yōu)先級(jí)與結(jié)合性 3、表達(dá)式:由操作數(shù)和運(yùn)算符組成的序列。、表達(dá)式:由操作數(shù)和運(yùn)算符組成的序列。202.5.1 2.5.1 算術(shù)運(yùn)算符與算術(shù)表達(dá)式算術(shù)運(yùn)算符與算術(shù)表達(dá)式 基本的算術(shù)運(yùn)算符:基本的算術(shù)運(yùn)算符:+ + (加法運(yùn)算符,或正值運(yùn)算符);(加法運(yùn)算符,或正值運(yùn)算符);- (減法運(yùn)算符,或負(fù)值運(yùn)算符);(減法運(yùn)算符,或負(fù)

13、值運(yùn)算符);* * (乘法運(yùn)算符);(乘法運(yùn)算符);/ / (除法運(yùn)算符);(除法運(yùn)算符);% % (求余運(yùn)算符或模運(yùn)算符)。(求余運(yùn)算符或模運(yùn)算符)。兩個(gè)類型相同的操作數(shù)進(jìn)行運(yùn)算,其結(jié)果類型與操作數(shù)兩個(gè)類型相同的操作數(shù)進(jìn)行運(yùn)算,其結(jié)果類型與操作數(shù)類型相同。例如類型相同。例如 7/4 7/4 的結(jié)果值為的結(jié)果值為1 1。不同類型的數(shù)據(jù)要。不同類型的數(shù)據(jù)要先轉(zhuǎn)換成同一類型,然后進(jìn)行運(yùn)算。先轉(zhuǎn)換成同一類型,然后進(jìn)行運(yùn)算。 21 求余運(yùn)算要求運(yùn)算符求余運(yùn)算要求運(yùn)算符 % 的兩邊的操作數(shù)必須為整數(shù),余數(shù)的兩邊的操作數(shù)必須為整數(shù),余數(shù)的符號(hào)與被除數(shù)符號(hào)相同。的符號(hào)與被除數(shù)符號(hào)相同。 15%(-7)= 1

14、、(、(-15)%7=-1。 算術(shù)表達(dá)式算術(shù)表達(dá)式(1 1)用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象連接起來(lái)的式子稱為算)用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象連接起來(lái)的式子稱為算術(shù)表達(dá)式。運(yùn)算對(duì)象包括常量、變量、函數(shù)等等。例如術(shù)表達(dá)式。運(yùn)算對(duì)象包括常量、變量、函數(shù)等等。例如: : x x* *y/z +2002.168 15%(-7)+Ay/z +2002.168 15%(-7)+A。(2 2)C C 語(yǔ)言規(guī)定算術(shù)運(yùn)算符的優(yōu)先級(jí)為:先做語(yǔ)言規(guī)定算術(shù)運(yùn)算符的優(yōu)先級(jí)為:先做 * *、/ /、% % ,后做后做 + +、- ,- ,即即“* *、/ /、%”%”屬同一優(yōu)先級(jí),屬同一優(yōu)先級(jí),“+ +、-”-”屬同一屬同一

15、優(yōu)先級(jí),而且前者優(yōu)先級(jí)高于后者。在表達(dá)式求值時(shí),同一優(yōu)先級(jí),而且前者優(yōu)先級(jí)高于后者。在表達(dá)式求值時(shí),同一優(yōu)先級(jí)的運(yùn)算符的運(yùn)算順序規(guī)定為優(yōu)先級(jí)的運(yùn)算符的運(yùn)算順序規(guī)定為“自左至右自左至右”,即運(yùn)算對(duì),即運(yùn)算對(duì)象先與左面的運(yùn)算符結(jié)合。也稱為象先與左面的運(yùn)算符結(jié)合。也稱為“左結(jié)合性,如表左結(jié)合性,如表2-52-5所示。所示。例如算術(shù)表達(dá)式例如算術(shù)表達(dá)式 x-y/zx-y/z* *w w 的求值順序相當(dāng)于的求值順序相當(dāng)于 x(y/z)x(y/z)* *w)w)。22(3 3) 數(shù)學(xué)表達(dá)式寫成數(shù)學(xué)表達(dá)式寫成 C C 語(yǔ)言表達(dá)式語(yǔ)言表達(dá)式 232.5.2 2.5.2 賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表

16、達(dá)式 賦值運(yùn)算符用賦值運(yùn)算符用“=”=”來(lái)表示。它的作用是將一個(gè)表達(dá)式的來(lái)表示。它的作用是將一個(gè)表達(dá)式的值賦給一個(gè)變量,而不是數(shù)學(xué)中的等號(hào)。值賦給一個(gè)變量,而不是數(shù)學(xué)中的等號(hào)。變量變量 = = 表達(dá)式表達(dá)式 : x + = 3 : x + = 3 等價(jià)于等價(jià)于x = x + 3 x = x + 3 2.5.3 2.5.3 強(qiáng)制類型轉(zhuǎn)換運(yùn)算符強(qiáng)制類型轉(zhuǎn)換運(yùn)算符 強(qiáng)制類型轉(zhuǎn)換運(yùn)算符的一般形式為:強(qiáng)制類型轉(zhuǎn)換運(yùn)算符的一般形式為: (類型名)表達(dá)式(類型名)表達(dá)式 例如例如: (int)x, : (int)x, 可以得到一個(gè)可以得到一個(gè) int int 型的中間變量,它的值等于型的中間變量,它的值等于

17、 x x的整數(shù)部分,而的整數(shù)部分,而 x x 的類型并沒(méi)有改變。的類型并沒(méi)有改變。 242.5.4 2.5.4 加一、減一運(yùn)算符加一、減一運(yùn)算符 加一運(yùn)算符:加一運(yùn)算符:+ + +,用于使其運(yùn)算分量加,用于使其運(yùn)算分量加1 1 ;減一運(yùn)算符:;減一運(yùn)算符:- - -,用于使其運(yùn)算分量減,用于使其運(yùn)算分量減 。它們既可以用作前綴運(yùn)算符(用。它們既可以用作前綴運(yùn)算符(用在變量前面,如在變量前面,如+ + n + + n ),也可以用作后綴運(yùn)算符(用在變量),也可以用作后綴運(yùn)算符(用在變量后面,如后面,如n + +n + +)。)。 注意:注意: 增一、減一運(yùn)算符是單目運(yùn)算符,且操作對(duì)象不能是常量增

18、一、減一運(yùn)算符是單目運(yùn)算符,且操作對(duì)象不能是常量或表達(dá)式,只能是變量?;虮磉_(dá)式,只能是變量。 + + 和和 - - 的結(jié)合性是自右向左,例如,的結(jié)合性是自右向左,例如, i+ i+ 相當(dāng)于相當(dāng)于 (i+)(i+)。 建議不要使用不宜理解的表達(dá)式。例如,建議不要使用不宜理解的表達(dá)式。例如,i + ji + j,到底是,到底是(i+)+j(i+)+j,還是,還是i +(+j)i +(+j)?C C編譯系統(tǒng)在處理是盡可能多地(自編譯系統(tǒng)在處理是盡可能多地(自左到右)將若干個(gè)字符組成一個(gè)運(yùn)算符,所以左到右)將若干個(gè)字符組成一個(gè)運(yùn)算符,所以 i+j i+j 解釋成解釋成 (i+)+j(i+)+j,若直接

19、寫成,若直接寫成 (i+)+j (i+)+j 則清晰得多。則清晰得多。2.5.5 2.5.5 逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式 C C 語(yǔ)言中最低級(jí)別的運(yùn)算符是逗號(hào)運(yùn)算符語(yǔ)言中最低級(jí)別的運(yùn)算符是逗號(hào)運(yùn)算符, ,形如形如: :表達(dá)式表達(dá)式1 1,表達(dá),表達(dá)式式2,2,逗號(hào)表達(dá)式的值的求解過(guò)程是先求解表達(dá)式逗號(hào)表達(dá)式的值的求解過(guò)程是先求解表達(dá)式1 1,再求解表達(dá)式,再求解表達(dá)式2 2,整,整個(gè)逗號(hào)表達(dá)式的值為表達(dá)式個(gè)逗號(hào)表達(dá)式的值為表達(dá)式2 2的值。的值。 252.5.6 2.5.6 位運(yùn)算位運(yùn)算 說(shuō)明:除說(shuō)明:除“”以外,均為二元運(yùn)算符,且操作數(shù)只能是整型或以外,均為二元運(yùn)算符,且操

20、作數(shù)只能是整型或字符型數(shù)據(jù),不能為實(shí)型數(shù)據(jù)。字符型數(shù)據(jù),不能為實(shí)型數(shù)據(jù)。26 & & 運(yùn)算運(yùn)算例例: :求求3&73&7的值。的值。運(yùn)算過(guò)程為:運(yùn)算過(guò)程為: 0000 0000 0000 00110000 0000 0000 0011(3 3的補(bǔ)碼)的補(bǔ)碼) & &0000 0000 0000 01110000 0000 0000 0111(7 7的補(bǔ)碼)的補(bǔ)碼) 參加運(yùn)算的兩個(gè)操作數(shù),按二進(jìn)制位進(jìn)行參加運(yùn)算的兩個(gè)操作數(shù),按二進(jìn)制位進(jìn)行“與與”運(yùn)算。運(yùn)運(yùn)算。運(yùn)算規(guī)則為:算規(guī)則為:0 & 0 = 0;0 & 1 = 0;1 &

21、; 0 = 0;1 & 1 = 10 & 0 = 0;0 & 1 = 0;1 & 0 = 0;1 & 1 = 1。 & & 運(yùn)算經(jīng)運(yùn)算經(jīng)常用于屏蔽某些位。常用于屏蔽某些位。 0000 0000 0000 00110000 0000 0000 0011(3&7=3)3&7=3)27 | | 運(yùn)算運(yùn)算 參加運(yùn)算的兩個(gè)操作數(shù),按二進(jìn)制位進(jìn)行參加運(yùn)算的兩個(gè)操作數(shù),按二進(jìn)制位進(jìn)行“或或”運(yùn)算。運(yùn)算運(yùn)算。運(yùn)算規(guī)則為:規(guī)則為:0 | 0 = 0;0 | 1 = 1;1 | 0 = 1;1 | 1 = 10 | 0 = 0;0 | 1 =

22、 1;1 | 0 = 1;1 | 1 = 1。 例例: :求求3|73|7的值。的值。運(yùn)算過(guò)程為:運(yùn)算過(guò)程為: 0000 0000 0000 00110000 0000 0000 0011(3 3的補(bǔ)碼)的補(bǔ)碼) | |0000 0000 0000 01110000 0000 0000 0111(7 7的補(bǔ)碼)的補(bǔ)碼)0000 0000 0000 01110000 0000 0000 0111(3|7=7)3|7=7)28 運(yùn)算運(yùn)算 參加運(yùn)算的兩個(gè)操作數(shù),按二進(jìn)制位進(jìn)行參加運(yùn)算的兩個(gè)操作數(shù),按二進(jìn)制位進(jìn)行“異或異或”運(yùn)算。運(yùn)運(yùn)算。運(yùn)算規(guī)則為:算規(guī)則為:0 0 = 0;0 1 = 1;1 0 =

23、 1;1 1 = 00 0 = 0;0 1 = 1;1 0 = 1;1 1 = 0。 例例 2.17 2.17 將將int x int x 的低的低 5 5 位取反,可以用位取反,可以用 x =x( 00000000 00011111)x =x( 00000000 00011111)2 2。 運(yùn)算運(yùn)算 是一個(gè)單目運(yùn)算符,用來(lái)對(duì)一個(gè)二進(jìn)制數(shù)按位取反。是一個(gè)單目運(yùn)算符,用來(lái)對(duì)一個(gè)二進(jìn)制數(shù)按位取反。 例例 2.18 2.18 將將 int x int x 的低六位置為的低六位置為“0”0”,可以這樣運(yùn)算:,可以這樣運(yùn)算: x x = x & = x & 077;077;29 運(yùn)算符運(yùn)

24、算符 xn xn 表示把表示把 x x 的每一位向左移動(dòng)的每一位向左移動(dòng) n n 位,右邊空出的位填位,右邊空出的位填“0”0”,高位左移后溢出丟棄。,高位左移后溢出丟棄。 求求3232的值的值 0000 0000 0000 0110000 0000 0000 011(3 3的補(bǔ)碼)的補(bǔ)碼) 00000 0000 0000 11000000 0000 0000 110(6 6的補(bǔ)碼,即的補(bǔ)碼,即31=631=6) 00000 0000 0001 10000000 0000 0001 100(1212的補(bǔ)碼,即的補(bǔ)碼,即32=123 運(yùn)算符運(yùn)算符 xn xn 表示把表示把x x的每一位向右移動(dòng)的

25、每一位向右移動(dòng)n n位。移到右端的低位被位。移到右端的低位被丟棄,對(duì)無(wú)符號(hào)數(shù),高位補(bǔ)丟棄,對(duì)無(wú)符號(hào)數(shù),高位補(bǔ)“0”0”。 對(duì)有符號(hào)數(shù),對(duì)有符號(hào)數(shù),Turbo C Turbo C 左邊空位上填符號(hào)位上的值。左邊空位上填符號(hào)位上的值。 例如:無(wú)符號(hào)數(shù)例如:無(wú)符號(hào)數(shù) 15 15 右移兩位,即右移兩位,即 152152,相當(dāng)于,相當(dāng)于 (00000000 00001111)(00000000 00001111)2 222,結(jié)果為,結(jié)果為(00000000 00000011)(00000000 00000011)2 2。 有符號(hào)數(shù)有符號(hào)數(shù) 6 6 右移兩位,即右移兩位,即 6262,相當(dāng)于,相當(dāng)于 (1

26、1111111 11111010)(11111111 11111010)2 22, 2, 結(jié)果為結(jié)果為 (11111111 11111110)(11111111 11111110)2 2。 31#include main( ) int c; char a; c=65; a=B; putchar(c); putchar(n); putchar(a);運(yùn)行結(jié)果:運(yùn)行結(jié)果:A A B B例 int a=3,b=4; printf(“%d %dn”,a,b); printf(“a=%d , b=%dn”,a,b);輸出結(jié)果輸出結(jié)果: 3 : 3 4 a=3, b= a=3, b=43233例 :#in

27、clude “stdio.h”main( ) int a=1234; float f=123.456; char ch=a; printf(“%8d,%2dn”,a,a); printf(“%f,%8f,%8.1f,%.2f,%.2en”,f,f,f,f,f); printf(“%3cn”,ch);運(yùn)行 1234,1234結(jié)果: 123.456000,123.456000, 123.5,123.46,1.23e+02 a34#include main( ) char ch; printf(Enter a character:); ch=getchar( ); printf(“%c,%c”,ch,ch+2);運(yùn)行結(jié)果: Enter a character:輸入: A輸出: A,C35例:include “stdio.h”main( ) int a; scanf(“%d”,&a); printf(“a=%d”,a); 輸入:10 輸出:a=1036例 scanf(“%3d%*4d%f”

溫馨提示

  • 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)論