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

下載本文檔

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

文檔簡介

1、第三章C語言中的數(shù)據(jù)類型、運(yùn)算符和表達(dá)式。本章要點(diǎn):數(shù)據(jù)描述規(guī)則、數(shù)據(jù)操作規(guī)則、教學(xué)要求:1 .掌握C語言中數(shù)據(jù)類型的分類。2.掌握整數(shù)數(shù)據(jù)、實(shí)數(shù)數(shù)據(jù)和字符數(shù)據(jù)的使用規(guī)則。3.掌握C語言常量和變量的使用。執(zhí)行摘要:3.1基本字符、標(biāo)識符和關(guān)鍵字3.2基本數(shù)據(jù)類型3.3常數(shù)和變量3.4整數(shù)數(shù)據(jù)3.5實(shí)數(shù)數(shù)據(jù)3.6字符數(shù)據(jù),執(zhí)行摘要:3.7變量賦值初始值3.8各種數(shù)字?jǐn)?shù)據(jù)之間的混合運(yùn)算3.9運(yùn)算符和算術(shù)表達(dá)式,3.1基本字符、標(biāo)識符和關(guān)鍵字,1。符號集(字符集)在C語言中有五種基本符號:(1)大寫字母AZ (2)小寫字母az (3)阿拉伯?dāng)?shù)字09 (4)下劃線_ (5)標(biāo)點(diǎn)符號和運(yùn)算符;和(2)標(biāo)

2、識符,它標(biāo)識符號常量、變量、函數(shù)、類型名和文件的有效字符序列。標(biāo)識符的構(gòu)成規(guī)則:(1)標(biāo)識符只能由字母、數(shù)字和下劃線組成,第一個字符必須是字母或下劃線。例如:X y3 _ IMAX ECSE X _ A _ to _ B(合法)7x int #沒有一個壞的reg-input(非法)(2)在c語言中,大寫和小寫字母是不相等的。a和a,I和I,sum和Sum是兩個不同的標(biāo)識符。(3)用戶定義的標(biāo)識符不能與保留字(關(guān)鍵字)同名。關(guān)鍵詞(保留詞),概念:它是一個具有特定含義的標(biāo)識符,不能用作用戶定義的標(biāo)識符。C語言中的關(guān)鍵詞很少,ANSI標(biāo)準(zhǔn)推薦的關(guān)鍵詞有32個。(1)數(shù)據(jù)類型相關(guān)(14):char

3、int float double signed short long void struct union typedef enum size of(2)存儲類型相關(guān):auto extern register static,Third,關(guān)鍵字(continued),(3)與程序控制結(jié)構(gòu)相關(guān)(12):Do while for if else switch case default get continue break return注意:所有關(guān)鍵字都有固定的含義,不能用作其他關(guān)鍵字。例如,else和ELSE的意思不同。對于3.2 C的數(shù)據(jù)類型,C語言提供了以下數(shù)據(jù)類型:數(shù)據(jù)類型、構(gòu)造類型、指針類型、

4、空類型(無值類型)、空、3.3常量和變量、3.3.1常量和符號常量1。在程序運(yùn)行過程中其值不能改變的常量稱為常量和常量,分為不同的類型:整數(shù)1000。125,-100,0實(shí)數(shù)類型3.14,0.125,-3.789字符類型a,b,2字符串a(chǎn),ab,1232,2,符號常量,使用標(biāo)識符表示常量定義方法定義標(biāo)識符常量,示例3.1使用符號常量#定義pi 3.14159 #包含無效主()浮點(diǎn)數(shù);描述:由程序中的#define命令行定義的圓周率代表常數(shù)3.14,然后出現(xiàn)在這個文件中的圓周率代表3.14159,它可以像常數(shù)一樣操作。符號常量:表示帶有標(biāo)識符的常量。符號常量的值不能在其范圍內(nèi)更改,也不能再賦值。

5、運(yùn)行結(jié)果:2區(qū)域=12.566360,說明:使用賦值語句賦值PRICE PI=3.14是錯誤的;/*錯誤,不能給符號常量賦值,3.3常量和變量,3.3.2變量概念:它的值可以在程序運(yùn)行時改變。由標(biāo)識符(變量名)表示。變量表示內(nèi)存中具有特定屬性的存儲單元,用于存儲數(shù)據(jù),這是變量的值。從變量中取值實(shí)際上是通過變量名找到相應(yīng)的內(nèi)存地址,并從內(nèi)存位置讀取數(shù)據(jù)。變量定義方法:類型標(biāo)識符,3.3常量和變量(續(xù)),變量命名規(guī)則:語言規(guī)定標(biāo)識符只能由字母、數(shù)字和下劃線組成,第一個字符必須是字母或下劃線。示例:sum,_total,month,Student_name,lotus_1_2_,basic,Li _

6、 ling m.d. John, 123,3d64,ab,3.3常量和變量(續(xù)),注意:編譯系統(tǒng)將大寫字母和小寫字母視為兩個不同的字符。建議變量名的長度不要超過8個字符。看到名字,知道意思。先定義,然后使用。傳統(tǒng)上,符號常量用名稱大寫,變量名用小寫來表示不同。,3.4整數(shù)數(shù)據(jù),1。整數(shù)常量的表示方法整數(shù)常量是整數(shù)常量。在語言中,整數(shù)常數(shù)可以用以下三種形式表示:(1)十進(jìn)制整數(shù)。例如:123,-456,4。(2)八進(jìn)制整數(shù)。最高有效位必須使用0作為前導(dǎo)。例如,0123表示八進(jìn)制數(shù)123,等于十進(jìn)制數(shù)83,而-011表示八進(jìn)制數(shù)-11,即十進(jìn)制數(shù)-9。3.4整數(shù)數(shù)據(jù)(續(xù)),(3)十六進(jìn)制整數(shù)。以0

7、 x(0X)開頭的數(shù)字是十六進(jìn)制數(shù)字。例如,0 x123代表十六進(jìn)制數(shù)123,等于十進(jìn)制數(shù)291。-0 x12等于十進(jìn)制數(shù)10。2.整數(shù)變量(1)內(nèi)存中整數(shù)數(shù)據(jù)的存儲形式數(shù)據(jù)以二進(jìn)制形式存儲在內(nèi)存中。例如: int i。/*被定義為整數(shù)變量*/I=10;/*將整數(shù)10 */分配給I,3.4整數(shù)數(shù)據(jù)(續(xù)),注意:十進(jìn)制數(shù)10的二進(jìn)制形式是1010,Turbo C 2.0和Turbo C 3.0為整數(shù)變量分配2字節(jié)的內(nèi)存(不同的編譯系統(tǒng)為整數(shù)數(shù)據(jù)分配不同的字節(jié),而VC 6.0分配4字節(jié))。數(shù)值表示為補(bǔ)碼。3.4整數(shù)數(shù)據(jù)(續(xù)),(2)整數(shù)變量的分類,有六種,有符號的基本整數(shù)有符號的短整數(shù)有符號的長整

8、數(shù)無符號的基本整數(shù)無符號的短整數(shù)無符號的長整數(shù),(有符號的)int(有符號的)short(有符號的)int(有符號的)long(有符號的)int(無符號的)int short(無符號的)int(無符號的)long (int),注意:括號表示內(nèi)容是可選的。3.4整數(shù)數(shù)據(jù)(續(xù)),整數(shù)類型的相關(guān)數(shù)據(jù):類型描述符長度范圍基本整數(shù)2字節(jié)-3276832767短2字節(jié)-215215-1長4字節(jié)-231231-1無符號2字節(jié)065535無符號短2字節(jié)065535無符號長整數(shù)無符號長4字節(jié)0 (232-1),3.4整數(shù)數(shù)據(jù)(續(xù)),例如,內(nèi)存中整數(shù)13的實(shí)際存儲:3.4整數(shù)數(shù)據(jù)(續(xù)),(續(xù))定義的一般形式:類型

9、描述符變量名1,變量名2;例如: int a,b;/*將變量指定為整數(shù)*/無符號短c,d;/*將變量指定為無符號短整數(shù)*/鱷龍,f;/*指定變量,變量是長整數(shù)*/。變量的定義和使用。注:(1)允許在一個類型描述符后定義多個相同類型的變量。變量名用逗號分隔;類型描述符應(yīng)該與變量名至少分隔一個空格。(2)最后一個變量名必須后跟“;”在的末尾。(3)變量定義必須放在使用變量之前。3.4整數(shù)數(shù)據(jù)(續(xù))例整數(shù)變量的定義和使用。#包括void main() inta,b,c。請輸入兩個數(shù)字:“”;Scanf (%d,%d ,示例:整數(shù)變量#的定義和使用包括void main() int a,b,c,d;/

10、*指定、為整數(shù)變量*無符號;*指定為無符號整數(shù)變量* 12;-24歲;10;printf(,);描述:可以看出不同種類的整數(shù)數(shù)據(jù)可以進(jìn)行算術(shù)運(yùn)算。運(yùn)行結(jié)果:示例:整數(shù)數(shù)據(jù)溢出#包括void main() int a,b;a=32767b=a 1。printf(%d,%dn ,a,b);說明:數(shù)值表示為補(bǔ)碼。整數(shù)變量只能包含-3276832767范圍內(nèi)的數(shù)字,不能表示大于32767或小于-32768的數(shù)字。在這種情況下,會發(fā)生“溢出”。運(yùn)行結(jié)果:32767,-32768,3.4整數(shù)數(shù)據(jù)(續(xù)),3。整數(shù)常量的類型(1)一個整數(shù),如果它的值在-32768到32767的范圍內(nèi),它被認(rèn)為是整型,并且它可

11、以被分配給整型和長整型變量。(2)如果一個整數(shù)的值超過上述范圍,并且在-2147483637 2147483647的范圍內(nèi),則該整數(shù)被認(rèn)為是長整數(shù)。您可以將其分配給一個長整型變量。3.4整數(shù)數(shù)據(jù)(續(xù)),(3)如果分配給短整型的C版本(如Turbo C)和整型數(shù)據(jù)在內(nèi)存中占用相同的長度,則其表號范圍與整型相同。因此,一個int常量也是一個短int常量,它可以賦給int或short int變量。,3.4整數(shù)數(shù)據(jù)(續(xù)),(4)一個整數(shù)常數(shù)后面跟一個字母u或u,這被認(rèn)為是無符號整型。例如12345u,以無符號int指定的方式存儲在存儲器中(存儲器單元中的最高位不用作符號位,而是用于存儲數(shù)據(jù))。如果寫成

12、-12345u,-12345被轉(zhuǎn)換成它的補(bǔ)碼53191,然后作為無符號數(shù)存儲。(5)如果一個整數(shù)常數(shù)后跟一個字母L或L,它被認(rèn)為是一個長整型常數(shù)。3.5浮點(diǎn)數(shù)據(jù)(實(shí)數(shù)),3.5.1實(shí)數(shù)常數(shù)的表示方法,兩種表示法,十進(jìn)制指數(shù),0.123 3e-3,注意在:字母e(或e)之前必須有一個數(shù)字,e之后的指數(shù)必須是一個整數(shù),1e3,1.8e-3,-123e-6,指數(shù)形式:它由三部分組成:“小數(shù)”、“E(或E)”和“十進(jìn)制整數(shù)”。例如, 3.4 4。 3例如, 12.5e-6表示12.510-6、十進(jìn)制小數(shù)、e(或e)、十進(jìn)制整數(shù)、注:小數(shù)點(diǎn)不能單獨(dú)出現(xiàn);e或e兩邊都必須有數(shù)字,后面必須跟整數(shù);例如:0。

13、 0應(yīng)該是:如:6E0.2E56E、3.5.2實(shí)變量,分為三種類型:單精度(浮點(diǎn)型)、雙精度(雙精度型)和長雙精度。c編譯系統(tǒng)通常默認(rèn)所有實(shí)常量為雙精度類型。對于絕對值小于1的浮點(diǎn)數(shù),小數(shù)點(diǎn)前的零可以省略。Turbo C以默認(rèn)格式輸出浮點(diǎn)數(shù),最多只留下6個小數(shù)位。3.5.3內(nèi)存中真實(shí)數(shù)據(jù)的存儲形式,浮點(diǎn)數(shù)據(jù)以指數(shù)形式存儲。系統(tǒng)將實(shí)際數(shù)據(jù)分為小數(shù)部分和指數(shù)部分,并分別存儲。索引部分采用標(biāo)準(zhǔn)化的索引形式。示例3.4實(shí)際數(shù)據(jù)#的舍入誤差包括void main() float a,b;a=123456.789e5b=a20;printf(%fn ,b);描述:一個實(shí)變量只能保證的有效數(shù)字是7個有效數(shù)字

14、,下面的數(shù)字是沒有意義的,不能準(zhǔn)確的表示這個數(shù)字。我們應(yīng)該避免直接加減一個大數(shù)字和一個小數(shù)字,否則小數(shù)字就會“丟失”。運(yùn)行結(jié)果:12345678848.00000,3.6字符數(shù)據(jù),3.6.1字符常量。單引號中包含的一個字符是字符常量只能包含一個字符。例如,字符常量的縮寫,字符常量包括可視字符常量和轉(zhuǎn)義字符常量,1??梢曌址?,例如,請注意:(1)單引號不占用存儲空間;(2)在C語言中,A和A是不同的;(3)用單引號括起來的大寫字母和小寫字母代表不同的字符常量。例如,A和A (4)也是用單引號括起來的字符常量,它們存儲的是32,2的ASCII值。轉(zhuǎn)義字符,ASCII中的控制字符是不可見的字符,不能

15、直接用單引號表示。n,換行,水平跳過,r,回車,并在一些特定字符前面加上“”,表示一些特殊的含義或控制動作。這種形式的字符稱為轉(zhuǎn)義字符。描述:(1)轉(zhuǎn)義字符代表一個字符,在內(nèi)存中只占用一個字節(jié)的存儲空間。(2)轉(zhuǎn)義字符0,表示字符串常量的結(jié)尾。(DDDDD表示1-3個八進(jìn)制數(shù)字。(4)XHH表示1-2個十六進(jìn)制數(shù)字,3.6個字符數(shù)據(jù),3.6.2個字符變量。字符變量用于存儲字符常量。請注意,只能放置一個字符。字符變量定義如下:字符c1,C2;在此函數(shù)中,您可以使用以下語句為C1和C2賦值:C2 b;一個字符變量占用內(nèi)存中的一個字節(jié)。3.6字符數(shù)據(jù),3.6.3字符數(shù)據(jù)在存儲器中的存儲形式字符常量存儲在字符變量中,即把字符的相應(yīng)的ASCII碼存入存儲單元。使字符數(shù)據(jù)和整數(shù)數(shù)據(jù)通用。請注意,一個字符的數(shù)據(jù)可以以字符或整數(shù)的形式輸出。示例3.6將整數(shù)分配給字符變量。#包括void main() char c1,C2;c1=97c2=98printf(%c %cn ,c1,C2);printf(%d %dn ,c1,C2);描述:在第四行和第四行中,整數(shù)97和98分別賦給c1和c2,這相當(dāng)于下面兩個賦值語句:C1;C2;因?yàn)锳和B的ASCII碼是97

溫馨提示

  • 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

提交評論