第2章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式_第1頁(yè)
第2章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式_第2頁(yè)
第2章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式_第3頁(yè)
第2章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式_第4頁(yè)
第2章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式_第5頁(yè)
已閱讀5頁(yè),還剩48頁(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、第二章第二章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式數(shù)據(jù)類型、運(yùn)算符與表達(dá)式2000H2001H2002H2003H2004H33+5=?5運(yùn)算器運(yùn)算器(2000H)+(2002H)用一個(gè)字節(jié)表示整數(shù),范圍為用一個(gè)字節(jié)表示整數(shù),范圍為-128127;用兩個(gè)字節(jié)表;用兩個(gè)字節(jié)表示整數(shù),范圍為示整數(shù),范圍為-32768 32767。一般用四個(gè)字節(jié)表示整。一般用四個(gè)字節(jié)表示整數(shù)。數(shù)。(舉例舉例)內(nèi)存內(nèi)存CPU內(nèi)存內(nèi)存data外存外存Program8硬盤(pán)硬盤(pán) 軟盤(pán)軟盤(pán)15 14 13 12 11 109876543210有符號(hào)數(shù)有符號(hào)數(shù)無(wú)符號(hào)數(shù)無(wú)符號(hào)數(shù)0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 13

2、2767327670 1 1 1 1 1 1 1 1 1 1 1 1 1 1 032766327660 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1110 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1-1(補(bǔ)碼補(bǔ)碼)655351 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0-2655341 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1-32767327691 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-3276832768常量與變量常量與變量常量:在程序運(yùn)行

3、過(guò)程中,其值一直保持不變的常量:在程序運(yùn)行過(guò)程中,其值一直保持不變的量為常量。量為常量。常量也區(qū)分不同的類型:常量也區(qū)分不同的類型:30,40 為整型,為整型,30.0,40.0為實(shí)型,為實(shí)型,編輯器只是根據(jù)其表面形式來(lái)判斷其編輯器只是根據(jù)其表面形式來(lái)判斷其類型。類型。變量:在程序運(yùn)行過(guò)程中,其值可以改變的量為變量:在程序運(yùn)行過(guò)程中,其值可以改變的量為變量。變量。變量在程序的執(zhí)行中能夠賦值,發(fā)生變化變量在程序的執(zhí)行中能夠賦值,發(fā)生變化。變量。變量有一個(gè)名字,有一個(gè)名字,并在使用之前要說(shuō)明其類型并在使用之前要說(shuō)明其類型,一經(jīng),一經(jīng)說(shuō)明,說(shuō)明,就在內(nèi)存中占據(jù)與其類型相應(yīng)的存儲(chǔ)單元。就在內(nèi)存中占據(jù)與

4、其類型相應(yīng)的存儲(chǔ)單元。#include#define PRICE 30 /常量,在程序中保持不變常量,在程序中保持不變void main(void) int num, total; /定義變量定義變量,在內(nèi)存中開(kāi)辟區(qū)間在內(nèi)存中開(kāi)辟區(qū)間 num=10; /變量賦值變量賦值,10為常量為常量 total=num*PRICE; cout“total=“total; /輸出結(jié)果輸出結(jié)果其中:其中:num=10 total=num*PRICE 是賦值號(hào),不同于數(shù)學(xué)意義上的等號(hào)。是賦值號(hào),不同于數(shù)學(xué)意義上的等號(hào)。numtotal10300PRICE30C+中有多種數(shù)據(jù)類型,均有常量與變量之分,各中有多種數(shù)

5、據(jù)類型,均有常量與變量之分,各占不同的內(nèi)存空間,正確定義與使用數(shù)據(jù)是編寫(xiě)占不同的內(nèi)存空間,正確定義與使用數(shù)據(jù)是編寫(xiě)程序的基本前提。程序的基本前提。變量名的命名方法:變量名的命名方法:變量名、數(shù)組名、函數(shù)名變量名、數(shù)組名、函數(shù)名稱為稱為標(biāo)識(shí)符標(biāo)識(shí)符。標(biāo)識(shí)符只能由標(biāo)識(shí)符只能由字母、數(shù)字、下劃線字母、數(shù)字、下劃線這三種字符組成,且第這三種字符組成,且第一個(gè)字符必須為字母或下劃線,長(zhǎng)度不大于一個(gè)字符必須為字母或下劃線,長(zhǎng)度不大于247個(gè)字符,個(gè)字符,大小寫(xiě)不通用大小寫(xiě)不通用。(關(guān)鍵字不能作為標(biāo)識(shí)符)。(關(guān)鍵字不能作為標(biāo)識(shí)符)。關(guān)鍵字即是關(guān)鍵字即是VC+的語(yǔ)法要求中使用的字的語(yǔ)法要求中使用的字。如如 i

6、nt if while 等。等。 正確的標(biāo)識(shí)符:正確的標(biāo)識(shí)符:INT, sum , de12, SUM等。等。變量必須使變量必須使用前定義,以分配空間。用前定義,以分配空間。舉例說(shuō)明舉例說(shuō)明abc English 2xy x-y if Else b(3) def Chine_bb b3y AbsFloat float一般變量都是用匈牙利命名法命名的。一般變量都是用匈牙利命名法命名的。int nCount; char chChoice;整型數(shù)據(jù)整型數(shù)據(jù)整型常量:整型常量:常量是根據(jù)其表面形式來(lái)判定,整型量即是沒(méi)有小數(shù)點(diǎn)的常量是根據(jù)其表面形式來(lái)判定,整型量即是沒(méi)有小數(shù)點(diǎn)的整數(shù),范圍:整數(shù),范圍:-

7、231(231-1) ,有三種形式,有三種形式:1)十進(jìn)制(默認(rèn)方式)十進(jìn)制(默認(rèn)方式)43 1345 876542)八進(jìn)制)八進(jìn)制 以以0開(kāi)頭開(kāi)頭 043, 056, 0113)十六進(jìn)制)十六進(jìn)制 以以0 x開(kāi)頭開(kāi)頭 0 x12 0 xa3 0 x34 0 xdf(舉例說(shuō)明)(舉例說(shuō)明)#includevoid main(void)int int10,int8,int16; /定義定義3個(gè)整型變量個(gè)整型變量int10=10;/默認(rèn)為十進(jìn)制默認(rèn)為十進(jìn)制int8=010;/八進(jìn)制八進(jìn)制int16=0 x10;/十六進(jìn)制十六進(jìn)制coutint10=int10endl;coutint8=int8en

8、dl;coutint16=int16endl;輸出輸出int10=10int8=8int16=16整型變量:整型變量:分為有符號(hào)型與無(wú)符號(hào)型。分為有符號(hào)型與無(wú)符號(hào)型。有符號(hào)型:有符號(hào)型: short 在內(nèi)存中占兩個(gè)字節(jié),范圍為在內(nèi)存中占兩個(gè)字節(jié),范圍為-215(215-1) int 在內(nèi)存中占四個(gè)字節(jié),范圍為在內(nèi)存中占四個(gè)字節(jié),范圍為-231(231-1)long在內(nèi)存中占四個(gè)字節(jié),范圍為在內(nèi)存中占四個(gè)字節(jié),范圍為-2-31231-1無(wú)符號(hào)型:無(wú)符號(hào)型:最高位不表示符號(hào)位最高位不表示符號(hào)位unsigned short 在內(nèi)存中占兩個(gè)字節(jié),范圍為在內(nèi)存中占兩個(gè)字節(jié),范圍為0216-1unsign

9、ed int 在內(nèi)存中占四個(gè)字節(jié),范圍為在內(nèi)存中占四個(gè)字節(jié),范圍為0232-1unsigned long在內(nèi)存中占四個(gè)字節(jié),范圍為在內(nèi)存中占四個(gè)字節(jié),范圍為0232-11)整型常量整型常量亦有長(zhǎng)短之分,常量中無(wú)亦有長(zhǎng)短之分,常量中無(wú)unsigned型,但一型,但一個(gè)非負(fù)的整型常量可以賦給個(gè)非負(fù)的整型常量可以賦給unsigned型的變量。型的變量。 2)若一個(gè)常量定義為長(zhǎng)整型數(shù),則在其后加)若一個(gè)常量定義為長(zhǎng)整型數(shù),則在其后加l或或L進(jìn)行區(qū)進(jìn)行區(qū)分。分。如:如:32l 32L 564L等,內(nèi)存為其分配四個(gè)字節(jié)存儲(chǔ)。等,內(nèi)存為其分配四個(gè)字節(jié)存儲(chǔ)。 一個(gè)數(shù)在內(nèi)存中為一個(gè)數(shù)在內(nèi)存中為1 1 1 1 1

10、 1 1 1 1 1 1 1 1 1 1 1當(dāng)這個(gè)數(shù)為有符號(hào)數(shù)時(shí),是當(dāng)這個(gè)數(shù)為有符號(hào)數(shù)時(shí),是-1;為無(wú)符號(hào)數(shù)時(shí),是;為無(wú)符號(hào)數(shù)時(shí),是232-1內(nèi)存中的數(shù)是以內(nèi)存中的數(shù)是以補(bǔ)碼補(bǔ)碼的形式存放的。(舉例說(shuō)明)的形式存放的。(舉例說(shuō)明)1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1#include void main() unsigned short a; short int b= -1; a=b; couta=aendl;結(jié)果:結(jié)果:65535 不同類型的整型數(shù)據(jù)間不同類型的整型數(shù)據(jù)間的賦值歸根到底就是一的賦值歸根到底就是一條:條:按存儲(chǔ)單元中的存按存儲(chǔ)單元中的存儲(chǔ)形式直接傳送。儲(chǔ)

11、形式直接傳送。 a1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1b1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1unsigned short a;實(shí)型數(shù)據(jù)實(shí)型數(shù)據(jù)實(shí)型數(shù)又稱浮點(diǎn)數(shù),有兩種表示方式:實(shí)型數(shù)又稱浮點(diǎn)數(shù),有兩種表示方式:1)十進(jìn)制形式:)十進(jìn)制形式: 23.0 24.5 3.56789 2) 指數(shù)形式:指數(shù)形式: 23E1 145e-1 356789e1 e前有數(shù)字,后前有數(shù)字,后面必須是整數(shù)。面必須是整數(shù)。實(shí)型變量分單精度實(shí)型變量分單精度 float 和雙精度和雙精度 double 兩種形式:兩種形式:float:占四個(gè)字節(jié),提供占四個(gè)字節(jié),提供78

12、位有效數(shù)字。位有效數(shù)字。double: 占八個(gè)字節(jié),提供占八個(gè)字節(jié),提供1516位有效數(shù)字。位有效數(shù)字。舉例說(shuō)明舉例說(shuō)明#includevoid main(void)float a, b;double c, d;a=0.01;b=3.45678e-2;c=3.45678e-2;d=9.7654e-5;couta=atb=bendl;coutc=ctd=dendl;a=0.01 b=0.0345678c=0.0345678 d=9.7654e-005Press any key to continue如果為實(shí)數(shù),則用浮點(diǎn)數(shù)的形式在內(nèi)存存儲(chǔ),表示如下:如果為實(shí)數(shù),則用浮點(diǎn)數(shù)的形式在內(nèi)存存儲(chǔ),表示如下

13、:JtJSfS階符階符階碼階碼數(shù)符數(shù)符尾數(shù)尾數(shù)實(shí)數(shù)是既有整數(shù)又有小數(shù)的數(shù)。實(shí)數(shù)是既有整數(shù)又有小數(shù)的數(shù)。實(shí)數(shù)可以表示成:實(shí)數(shù)可以表示成:N=SRJS 稱為尾數(shù),尾數(shù)決定有效數(shù)字,即數(shù)字的精度。稱為尾數(shù),尾數(shù)決定有效數(shù)字,即數(shù)字的精度。J 表示指數(shù)(階碼)。表示指數(shù)(階碼)。R 是基數(shù),可取是基數(shù),可取2,4,8,16等,對(duì)具體機(jī)器而言,基數(shù)等,對(duì)具體機(jī)器而言,基數(shù)取好后,就不能再變了。取好后,就不能再變了。數(shù)有正有負(fù)數(shù)有正有負(fù), 所以設(shè)置數(shù)符所以設(shè)置數(shù)符; 階碼亦有正負(fù)階碼亦有正負(fù), 所以設(shè)置階符所以設(shè)置階符一般用一般用4個(gè)字節(jié)表示一個(gè)浮點(diǎn)數(shù),也有用個(gè)字節(jié)表示一個(gè)浮點(diǎn)數(shù),也有用8個(gè)字個(gè)字節(jié)表示的

14、。節(jié)表示的。字長(zhǎng)一定,尾數(shù)越多,精度越高;階碼越多,字長(zhǎng)一定,尾數(shù)越多,精度越高;階碼越多,范圍越大。范圍越大。當(dāng)計(jì)算機(jī)中出現(xiàn)小于機(jī)器所能表示的最小數(shù)當(dāng)計(jì)算機(jī)中出現(xiàn)小于機(jī)器所能表示的最小數(shù)時(shí),機(jī)器只能當(dāng)零來(lái)處理時(shí),機(jī)器只能當(dāng)零來(lái)處理,當(dāng)出現(xiàn)超過(guò)機(jī)器所能當(dāng)出現(xiàn)超過(guò)機(jī)器所能表示的最大數(shù)時(shí),出現(xiàn)溢出現(xiàn)象表示的最大數(shù)時(shí),出現(xiàn)溢出現(xiàn)象,一旦出現(xiàn)溢出,一旦出現(xiàn)溢出,就會(huì)停止運(yùn)算。就會(huì)停止運(yùn)算。定點(diǎn)數(shù),浮點(diǎn)數(shù)均會(huì)出現(xiàn)溢出現(xiàn)定點(diǎn)數(shù),浮點(diǎn)數(shù)均會(huì)出現(xiàn)溢出現(xiàn)象。象。字符型數(shù)據(jù)(字符型數(shù)據(jù)(char)字符型數(shù)據(jù)實(shí)際上是作為字符型數(shù)據(jù)實(shí)際上是作為整型數(shù)據(jù)整型數(shù)據(jù)在內(nèi)存中存儲(chǔ)的。在內(nèi)存中存儲(chǔ)的。計(jì)算機(jī)是以字符編碼的形式處

15、理字符的,因此,我們?cè)谟?jì)算機(jī)內(nèi)部計(jì)算機(jī)是以字符編碼的形式處理字符的,因此,我們?cè)谟?jì)算機(jī)內(nèi)部是以是以ASCII碼碼的形式表示所有字符的。所以的形式表示所有字符的。所以7位二進(jìn)制數(shù)即可表示出位二進(jìn)制數(shù)即可表示出一個(gè)字符,一個(gè)字符,我們用一個(gè)字節(jié)的容量(我們用一個(gè)字節(jié)的容量(8位)存儲(chǔ)一個(gè)字符。位)存儲(chǔ)一個(gè)字符。例如:字符例如:字符A的的ASCII碼為碼為0 x41或或65,在內(nèi)存中表示為:,在內(nèi)存中表示為:01000001在程序中表示為:在程序中表示為:char grade ;/定義一個(gè)字符型的變量空間定義一個(gè)字符型的變量空間(1個(gè)字節(jié)個(gè)字節(jié))grade=A; /必須用必須用 表示,否則易與標(biāo)識(shí)符

16、混同表示,否則易與標(biāo)識(shí)符混同 內(nèi)括起來(lái)的字符表示該字符的內(nèi)括起來(lái)的字符表示該字符的ASCII碼。碼。進(jìn)一步,由于在內(nèi)存中的形式與整型數(shù)據(jù)相同,所以,進(jìn)一步,由于在內(nèi)存中的形式與整型數(shù)據(jù)相同,所以,可以直接用可以直接用其整型值給變量賦值。其整型值給變量賦值。char grade;grade=65;以下的賦值形式均是等同的。以下的賦值形式均是等同的。grade=A; grade=65 ; grade=0 x41; grade=0101;#includevoid main(void) char a,b; a=A; /輸入輸入ASCII碼碼 b=65; /輸入十進(jìn)制數(shù)輸入十進(jìn)制數(shù) couta=aend

17、l; coutb=bendl;輸出:輸出:a=Ab=A即在內(nèi)存中的表示均是相同的即在內(nèi)存中的表示均是相同的01000001非打印字符非打印字符有些有些ASCII的字符代表某些操作,不能打印出來(lái),的字符代表某些操作,不能打印出來(lái),如回車(chē)、退格等,可用兩種方式表示這些字符。如回車(chē)、退格等,可用兩種方式表示這些字符。1)用)用ASCII碼的形式碼的形式 char re=13;2)用轉(zhuǎn)義字符)用轉(zhuǎn)義字符 char re=n;(p15)轉(zhuǎn)義字符轉(zhuǎn)義字符含含 義義 ASCII代碼代碼a響鈴響鈴7換行,將當(dāng)前位置移到下一行開(kāi)頭換行,將當(dāng)前位置移到下一行開(kāi)頭10水平制表(跳到下一個(gè)水平制表(跳到下一個(gè)tab位

18、置)位置)9退格,將當(dāng)前位置移到前一列退格,將當(dāng)前位置移到前一列8回車(chē),將當(dāng)前位置移到本行開(kāi)頭回車(chē),將當(dāng)前位置移到本行開(kāi)頭13換頁(yè),將當(dāng)前位置移到下頁(yè)開(kāi)頭換頁(yè),將當(dāng)前位置移到下頁(yè)開(kāi)頭12 v豎向跳格豎向跳格8 反斜杠字符反斜杠字符“”92單引號(hào)(撇號(hào))字符單引號(hào)(撇號(hào))字符39雙引號(hào)字符雙引號(hào)字符340空字符空字符0ddd1到到3位位8進(jìn)制數(shù)所代表的字符進(jìn)制數(shù)所代表的字符 xhh1到到2位位16進(jìn)制數(shù)所代表的字符進(jìn)制數(shù)所代表的字符 轉(zhuǎn)義字符雖然包含轉(zhuǎn)義字符雖然包含2個(gè)或多個(gè)字符,但它只代個(gè)或多個(gè)字符,但它只代表一個(gè)字符。表一個(gè)字符。編譯系統(tǒng)在見(jiàn)到字符編譯系統(tǒng)在見(jiàn)到字符“”時(shí),時(shí),會(huì)接著找它后面

19、的字符,把它處理成一個(gè)字會(huì)接著找它后面的字符,把它處理成一個(gè)字符,在內(nèi)存中只占一個(gè)字節(jié)。符,在內(nèi)存中只占一個(gè)字節(jié)。 典型轉(zhuǎn)義字符典型轉(zhuǎn)義字符 :n換行換行 b 退格退格 t 下一個(gè)輸出下一個(gè)輸出區(qū)區(qū)若輸出中包含這些特定格式,則再加一個(gè)若輸出中包含這些特定格式,則再加一個(gè)輸出輸出 c:tctc 表示為表示為coutc:tctc;可以用轉(zhuǎn)義字符表示任一一個(gè)可以用轉(zhuǎn)義字符表示任一一個(gè)ASCII字符字符 ddd (八進(jìn)制)八進(jìn)制) xhh (十六進(jìn)制)(十六進(jìn)制)101 x41 x61 141 #includevoid main(void) char c1,c2,c3,c4; char n1,n2;

20、c1=a;/字符常量字符常量 c2=97;/十進(jìn)制十進(jìn)制 c3=x61;/轉(zhuǎn)義字符轉(zhuǎn)義字符 c4=0141;/八進(jìn)制八進(jìn)制 coutc1=c1tc2=c2endl; coutc3=c3tc4=c4endl; n1=n; /轉(zhuǎn)義字符:回車(chē)轉(zhuǎn)義字符:回車(chē) n2=t; /轉(zhuǎn)義字符:下一個(gè)輸出區(qū)轉(zhuǎn)義字符:下一個(gè)輸出區(qū)(Tab) cout使用轉(zhuǎn)義字符使用轉(zhuǎn)義字符n; coutc1=c1n2c2=c2n1; coutc3=c3n2c4=c4n1;輸出:輸出:c1=a c2=a c3=a c4=a使用轉(zhuǎn)義字符使用轉(zhuǎn)義字符c1=a c2=a c3=a c4=a字符串常量:字符串常量:用用 表示,表示,在內(nèi)存中

21、順序存放,以在內(nèi)存中順序存放,以0結(jié)束。結(jié)束。如:如:CHINA 0 x430 x480 x490 x550 x410a在內(nèi)存中占一個(gè)字節(jié)在內(nèi)存中占一個(gè)字節(jié) a占兩個(gè)字節(jié)占兩個(gè)字節(jié)aa0實(shí)際上實(shí)際上內(nèi)存是對(duì)應(yīng)字符的內(nèi)存是對(duì)應(yīng)字符的ASCII碼形式碼形式010000110100100001001001010101010100000100000000CHINA00110000101100001 00000000標(biāo)識(shí)符常量標(biāo)識(shí)符常量在在C+中有二種方法定義中有二種方法定義標(biāo)識(shí)符常量標(biāo)識(shí)符常量,一種是使用編譯預(yù),一種是使用編譯預(yù)處理指令;另一種是使用處理指令;另一種是使用C+的常量說(shuō)明符的常量說(shuō)明符c

22、onst。例如:例如: #define PRICE 30 /在程序中凡是出現(xiàn)在程序中凡是出現(xiàn)PRICE均用均用30替代替代 #define PI 3.1415926 #define S “China”const float pi=3.1415926; /將將變量變量pi定義為定義為常量常量(舉例說(shuō)明)(舉例說(shuō)明)#include#define PI 3.14156#define S Chinavoid main(void) const float pi=3.14156;/變量作為常量使用變量作為常量使用 coutPI=PIendl; cout10*PI=10*PIendl; coutSendl

23、;/ PI=PI+3;/ pi=pi+4; coutPI=PIendl; coutpi=piendl;輸出:輸出:PI=3.1415610*PI=31.4156ChinaPI=3.14156pi=3.14156下列常量的表示在下列常量的表示在C+C+中是否合法?若不合法,指出原因;中是否合法?若不合法,指出原因;若合法,則指出常量的數(shù)據(jù)類型。若合法,則指出常量的數(shù)據(jù)類型。32767 35u 1.25e3.43L 0.0086e-3287 “Computer System” “a” a 9645-0+0.5-.567變量變量1) 在程序的執(zhí)行過(guò)程中,其值可以改變的量在程序的執(zhí)行過(guò)程中,其值可以改

24、變的量稱為變量。稱為變量。2) 變量名必須用標(biāo)識(shí)符來(lái)標(biāo)識(shí)。變量名必須用標(biāo)識(shí)符來(lái)標(biāo)識(shí)。3) 變量根據(jù)其取值的不同值域,分為不同類變量根據(jù)其取值的不同值域,分為不同類型的變量:整型變量、實(shí)型變量、字符型變型的變量:整型變量、實(shí)型變量、字符型變量、構(gòu)造型變量、指針型變量等等。量、構(gòu)造型變量、指針型變量等等。4) 對(duì)于任一變量,對(duì)于任一變量,編譯程序要為其分配若干編譯程序要為其分配若干個(gè)字節(jié)(連續(xù)的)的內(nèi)存單元,以便保存變個(gè)字節(jié)(連續(xù)的)的內(nèi)存單元,以便保存變量的取值量的取值。5) 當(dāng)要改變一個(gè)變量的值時(shí),就是把變量的當(dāng)要改變一個(gè)變量的值時(shí),就是把變量的新的取值存放到為該變量所分配的內(nèi)存單元新的取值存

25、放到為該變量所分配的內(nèi)存單元中;用到一個(gè)變量的值時(shí),就是從該內(nèi)存單中;用到一個(gè)變量的值時(shí),就是從該內(nèi)存單元中取出數(shù)據(jù)。元中取出數(shù)據(jù)。6) 不管什么類型的變量,通常均是不管什么類型的變量,通常均是變量的說(shuō)變量的說(shuō)明在前,使用變量在后。明在前,使用變量在后。int i, j, k;/定義了三個(gè)整型變量定義了三個(gè)整型變量i,j,kfloat x,y,z;/定義了三個(gè)實(shí)型變量定義了三個(gè)實(shí)型變量x,y,zchar c1,c2; /說(shuō)明了二個(gè)字符型變量說(shuō)明了二個(gè)字符型變量c1,c2double dv1;/說(shuō)明了一個(gè)雙精度型變量說(shuō)明了一個(gè)雙精度型變量dv1k四個(gè)字節(jié)的四個(gè)字節(jié)的連續(xù)空間連續(xù)空間j四個(gè)字節(jié)的四

26、個(gè)字節(jié)的連續(xù)空間連續(xù)空間i四個(gè)字節(jié)的四個(gè)字節(jié)的連續(xù)空間連續(xù)空間z四個(gè)字節(jié)的四個(gè)字節(jié)的連續(xù)空間連續(xù)空間y四個(gè)字節(jié)的四個(gè)字節(jié)的連續(xù)空間連續(xù)空間x四個(gè)字節(jié)的四個(gè)字節(jié)的連續(xù)空間連續(xù)空間dv1八個(gè)字節(jié)的八個(gè)字節(jié)的連續(xù)空間連續(xù)空間c21個(gè)字節(jié)的個(gè)字節(jié)的空間空間c11個(gè)字節(jié)的個(gè)字節(jié)的空間空間開(kāi)辟空間后開(kāi)辟空間后, 空空間中為隨機(jī)值間中為隨機(jī)值變量賦初值變量賦初值在定義變量的在定義變量的同時(shí)同時(shí)給變量賦值,即在內(nèi)存中開(kāi)辟出一個(gè)空給變量賦值,即在內(nèi)存中開(kāi)辟出一個(gè)空間后馬上給此空間賦值。間后馬上給此空間賦值。但這個(gè)空間的值并不是固定不變的,但這個(gè)空間的值并不是固定不變的,在程序的運(yùn)行中一樣在程序的運(yùn)行中一樣可以改

27、變??梢愿淖儭?char a=x64, b=d; int a1=6, a2=98; a=A; b=n; a1=011; a2=121; int a=4; /定義語(yǔ)句,在開(kāi)辟空間后馬上為空間賦值定義語(yǔ)句,在開(kāi)辟空間后馬上為空間賦值 a=6; /重新為該空間賦值重新為該空間賦值a4 6算術(shù)運(yùn)算符和算術(shù)表達(dá)式算術(shù)運(yùn)算符和算術(shù)表達(dá)式一、算術(shù)運(yùn)算符和算術(shù)表達(dá)式一、算術(shù)運(yùn)算符和算術(shù)表達(dá)式+ * % 用算術(shù)運(yùn)算符連接起來(lái)的式子是算術(shù)表達(dá)式用算術(shù)運(yùn)算符連接起來(lái)的式子是算術(shù)表達(dá)式兩個(gè)整數(shù)相除結(jié)果為整數(shù)兩個(gè)整數(shù)相除結(jié)果為整數(shù) 1/2=0 5/2=2整數(shù)才可求余,余數(shù)的符號(hào)與左邊數(shù)的符號(hào)相同。整數(shù)才可求余,余數(shù)的符

28、號(hào)與左邊數(shù)的符號(hào)相同。3%2=1 -3%2=-1 3%-2=1 -3%-2=-1 8%4=0二、優(yōu)先級(jí)與結(jié)合性二、優(yōu)先級(jí)與結(jié)合性()() * / % + 三、強(qiáng)制轉(zhuǎn)換類型三、強(qiáng)制轉(zhuǎn)換類型(類型名)(表達(dá)式)(類型名)(表達(dá)式)(double) a (int) (x+y) (int) 6.2%4=2在強(qiáng)制類型運(yùn)算后原變量不變,但得到一個(gè)所需在強(qiáng)制類型運(yùn)算后原變量不變,但得到一個(gè)所需類型的中間變量。類型的中間變量。如:如:int x; float y=5.8; x=(int)y;x=5y=5.8y的值沒(méi)有改的值沒(méi)有改變,仍是單精變,仍是單精度浮點(diǎn)型度浮點(diǎn)型四、自增、自減運(yùn)算符四、自增、自減運(yùn)算符

29、(難點(diǎn))難點(diǎn)) + i6i37 int i, j; i=3; j = +i;i=4 j=4 +在前在前, 先運(yùn)算先運(yùn)算,后賦值后賦值 int i, j; i=3; j = i+;i=4 j=3 +在后在后, 先賦值先賦值,后運(yùn)算后運(yùn)算j44i3j34i=6; i+; i=i+1 i=7 +i; i=i+1 i=7 i=6; i; i=i1 i=5 i ; i=i1 i=5i6 71)自增、自減運(yùn)算符只能用于變量,不可用于常量和表自增、自減運(yùn)算符只能用于變量,不可用于常量和表達(dá)式達(dá)式因?yàn)楸磉_(dá)式在內(nèi)存內(nèi)沒(méi)有具體空間,常量所占的空間不能因?yàn)楸磉_(dá)式在內(nèi)存內(nèi)沒(méi)有具體空間,常量所占的空間不能重新賦值重新賦

30、值3+ (x+y)+ (i)+若若i=3, j=2 (i+) +j 等于等于5i=4, j=22)結(jié)合方式自右至左,優(yōu)先級(jí)最高,向右取最大)結(jié)合方式自右至左,優(yōu)先級(jí)最高,向右取最大i+ (i+) i+j (i+) +j賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式bmw=2002=左邊左邊必須是變量名。必須是變量名。若若“ = ” 兩邊變量類型不同,在賦值時(shí)要進(jìn)兩邊變量類型不同,在賦值時(shí)要進(jìn)行行類型轉(zhuǎn)換類型轉(zhuǎn)換。轉(zhuǎn)換原則:根據(jù)左邊變量的類型轉(zhuǎn)換。轉(zhuǎn)換原則:根據(jù)左邊變量的類型轉(zhuǎn)換。少字節(jié)少字節(jié)多字節(jié)多字節(jié)1)若多字節(jié)變量為)若多字節(jié)變量為unsigned ,則轉(zhuǎn)換后多余字節(jié)補(bǔ)則轉(zhuǎn)換后多余字節(jié)補(bǔ)零。

31、零。0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1unsignedshort int a=-1;unsigned long b;b=a;a ab b1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1有符號(hào)型,符號(hào)擴(kuò)展有符號(hào)型,符號(hào)擴(kuò)展short int a=-1;long b;b=a;2)若多字節(jié)變量為有符號(hào)型,則轉(zhuǎn)換后擴(kuò)展少字)若多字節(jié)變量為有符號(hào)型,則轉(zhuǎn)換后擴(kuò)展少字節(jié)的最高位。節(jié)的最高位。轉(zhuǎn)換后,數(shù)據(jù)的符號(hào)不變。轉(zhuǎn)換后,數(shù)據(jù)的符號(hào)不變。a ab b多字節(jié)多字節(jié)少字節(jié)少字節(jié)低位照搬低位照搬1 1 1 1

32、1 1 1 1 1 1 1 1 1 1 1 1int a=-1;short int b;b=a;b=-1int a=65535;short int b;b=a;b=-1b ba a1 1 1 1 1 1 1 1賦值表達(dá)式賦值表達(dá)式a=b=5 ; b=5 a=5=的結(jié)合性為的結(jié)合性為自右至左自右至左復(fù)合的賦值運(yùn)算符復(fù)合的賦值運(yùn)算符a+=3 a=a+3 x*=y+3 x=x*(y+3)x/=x-4 x=x/(x-4) x+=y x=x+yi+=j- i=i+(j-)a=12; a+=a-=a*a;12a a=a-(a * a) =12-(12*12)=-132 a=a+(-132)=-132-13

33、2=-264-132-264關(guān)系運(yùn)算符和關(guān)系表達(dá)式關(guān)系運(yùn)算符和關(guān)系表達(dá)式關(guān)系運(yùn)算符(比較運(yùn)算)關(guān)系運(yùn)算符(比較運(yùn)算) = = = !=1. = = 與與 = a=5; 賦值運(yùn)算賦值運(yùn)算 a= =5;判斷是否相等;判斷是否相等2. = 的優(yōu)先級(jí)大于的優(yōu)先級(jí)大于= = !=3. 算術(shù)運(yùn)算符的優(yōu)先級(jí)大于關(guān)系運(yùn)算符的優(yōu)先級(jí)算術(shù)運(yùn)算符的優(yōu)先級(jí)大于關(guān)系運(yùn)算符的優(yōu)先級(jí)關(guān)系表達(dá)式:用關(guān)系運(yùn)算符將表達(dá)式連接起來(lái)稱關(guān)系表達(dá)式:用關(guān)系運(yùn)算符將表達(dá)式連接起來(lái)稱為關(guān)系表達(dá)式。其值非真即假。在為關(guān)系表達(dá)式。其值非真即假。在C+語(yǔ)言中,用語(yǔ)言中,用非非0代表真,用代表真,用0表示假。表示假。關(guān)系表達(dá)式的結(jié)果只有關(guān)系表達(dá)式的結(jié)果只有兩個(gè),真為兩個(gè),真為1,假為,假為0。 a=2 b=3 c=4a2 ab+c a= =2 a= =aaa b=a= =2aA b= =a+1c-a= =a001

溫馨提示

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