




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第二章§2.2常量、變量和標(biāo)識(shí)符一、標(biāo)識(shí)符
和其他高級(jí)語言一樣,用來標(biāo)識(shí)常量名、變量名、函數(shù)名、數(shù)組名、類型名、文件名等對(duì)象的有效字符序列稱為標(biāo)識(shí)符。簡(jiǎn)單的說,標(biāo)識(shí)符就是一個(gè)名字。1.標(biāo)識(shí)符的命名規(guī)則(1)C語言規(guī)定標(biāo)識(shí)符只能由字母(大小寫均可)、數(shù)字和下劃線3種字符組成。(2)第1個(gè)字符必須為字母或下劃線。2、組成:(1)只能由字母、數(shù)字、下劃線組成,且第一個(gè)字母必須是字母或下劃線。(2)大小寫敏感(3)不能使用關(guān)鍵字(4)長(zhǎng)度:最長(zhǎng)32個(gè)字符(5)命名原則:見名知意(name、time)不宜混淆如l與I,o與0標(biāo)識(shí)符有什么組成?3.注意事項(xiàng)(1)標(biāo)識(shí)符的命名是區(qū)分大小寫的,例如NAME、name及Name為3個(gè)不同的標(biāo)識(shí)符。習(xí)慣上變量名用小寫字母表示,符號(hào)常量一般使用大寫英文字母。(2)C語言中的關(guān)鍵字是一類特殊的標(biāo)識(shí)符,它們具有特定的含義,已被C語言本身使用,不能用作變量名、常量名、函數(shù)名等。(3)C語言中提供了大量的庫函數(shù)與頭文件,這些庫函數(shù)名和頭文件中定義的一些標(biāo)識(shí)符都統(tǒng)稱為預(yù)定義標(biāo)識(shí)符。用戶定義標(biāo)識(shí)符時(shí)應(yīng)注意避免和預(yù)定義標(biāo)識(shí)符重名。(1)關(guān)鍵字
關(guān)鍵字在程序中代表著固定的含義,不能另作他用。如用來說明變量類型的標(biāo)識(shí)符char、float以及for、if等都已有專門的用途,它們不能用作變量名或函數(shù)名。autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile注:C語言的關(guān)鍵字都是小寫的。4.標(biāo)識(shí)符的分類(2)預(yù)定義標(biāo)識(shí)符
預(yù)定義標(biāo)識(shí)符在C語言中也有特定的含義,如庫函數(shù)的名字和預(yù)編譯處理命令等。C語言語法允許用戶把這類標(biāo)識(shí)符另作他用,但是失去了在系統(tǒng)中規(guī)定的原意。為了避免誤解,建議用戶不要把這些預(yù)定義標(biāo)識(shí)符另作它用。(3)用戶標(biāo)識(shí)符
由用戶根據(jù)需要定義的標(biāo)識(shí)符稱為用戶標(biāo)識(shí)符。一般用來給變量、函數(shù)、數(shù)組或文件等命名。如果用戶標(biāo)識(shí)符與關(guān)鍵字相同,程序會(huì)給出出錯(cuò)信息;若與預(yù)定義標(biāo)識(shí)符相同,則預(yù)定義標(biāo)識(shí)符將失去原來的含義。
※重點(diǎn)提示:
標(biāo)識(shí)符的命名規(guī)則:(1)C語言規(guī)定標(biāo)識(shí)符只能由字母(大小寫均可,但區(qū)分大小寫)、數(shù)字和下劃線3種字符組成(2)第1個(gè)字符必須為字母或下劃線(3)已被C語言本身使用,不能用作變量名、常量名、函數(shù)名等。二、基本數(shù)據(jù)類型數(shù)據(jù)為什么有類型之分?
在程序中要處理大量的數(shù)據(jù),對(duì)于數(shù)據(jù)來說,它們有著某些相同的屬性,處理規(guī)律相同,存儲(chǔ)格式、取值范圍也相同。我們將具有相同屬性的數(shù)據(jù)稱為一類,即數(shù)據(jù)類型,符合計(jì)算機(jī)中數(shù)據(jù)的存儲(chǔ)方式。學(xué)習(xí)任何語言,首先要學(xué)習(xí)其數(shù)據(jù)類型.C語言有豐富的數(shù)據(jù)類型,可以表達(dá)復(fù)雜的數(shù)據(jù)結(jié)構(gòu)C語言的數(shù)據(jù)類型整型字符型浮點(diǎn)型(實(shí)型)單精度型雙精度型數(shù)組類型結(jié)構(gòu)類型共用體類型基本類型構(gòu)造類型空類型指針類型數(shù)據(jù)類型基本數(shù)據(jù)類型常量變量在計(jì)算機(jī)中存儲(chǔ)的數(shù)據(jù),按存儲(chǔ)的性質(zhì)分,可分為:1、常量類型十進(jìn)制:以非0開始八進(jìn)制:以”0“開始十六進(jìn)制:以”0x“開始小數(shù)形式表示指數(shù)形式表示整型常量實(shí)型常量字符型常量常量類型1、常量定義在程序執(zhí)行過程中,其值始終不變的量,常量不占用存儲(chǔ)空間。分類整型常數(shù)、實(shí)型常數(shù)、字符常數(shù)。特殊常量符號(hào)常量用一個(gè)符號(hào)名來表示一個(gè)常量。符合標(biāo)示符的命名規(guī)則。十進(jìn)制數(shù):非0開頭。例如:12340-1234八進(jìn)制數(shù):以0開頭。例如:0123401000-01234十六進(jìn)制數(shù):以0x開頭。例如:0x120x0-0xc41-1整型常量定義是由數(shù)字串組成的數(shù)據(jù)。分類十進(jìn)制常數(shù)、八進(jìn)制常數(shù)和十六進(jìn)制常數(shù)。
規(guī)定:實(shí)型常量只能用十進(jìn)制形式表示,不能用八進(jìn)制或十六進(jìn)制表示。實(shí)數(shù)在C語言中又稱浮點(diǎn)數(shù),它有兩種表示形式:
1.十進(jìn)制小數(shù)形式:由0~9數(shù)字和小數(shù)點(diǎn)組成(注意必須有小數(shù)點(diǎn))如:.123,0.123,123.0,123.,0.02.指數(shù)形式:就是用dEn的形式表示自然表示法的實(shí)型常數(shù),其中:d為數(shù)值部分;n為指數(shù)部分,必須為整數(shù)。注意:1、e或E之前必須有數(shù)字,e后面必須有數(shù)字且指數(shù)必須為整數(shù)。e3,2.1e3.5,e
2、實(shí)數(shù)在用指數(shù)形式輸出時(shí)是按規(guī)范化的指數(shù)形式輸出。1-2實(shí)型常量字符常量是由一對(duì)引號(hào)括起的一個(gè)或多個(gè)字符。當(dāng)一個(gè)字符時(shí),使用單引號(hào);當(dāng)是字符串(一個(gè)或者為多個(gè)字符)時(shí),采用雙引號(hào)。舉例:'a'"a""abc"'8'"123"1-3字符常量定義注明1.單引號(hào)和雙引號(hào)定義的字符常量的意義不同。2.單雙引號(hào)是英文的單雙引號(hào),而不是中文意義下的單雙引號(hào)。3.單字符可看成整形數(shù)和字符型數(shù)輸出,也可對(duì)單字符數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算。轉(zhuǎn)義字符定義:C語言中一些以\開頭的字符串具有特殊意義,具有控制功能,這些字符串稱為轉(zhuǎn)義字符,用單引號(hào)括起。常用的以′\′開頭的特殊字符如表2.3所示。字符形式功能\n換行\(zhòng)t橫向跳格(跳到下一個(gè)輸出區(qū))\v豎向跳格\b退格\r回車\f走紙換頁\\反斜杠字符\′單引號(hào)字符\″雙引號(hào)字符\a報(bào)警\0空值\ddd1到3位8進(jìn)制數(shù)所代表的字符\xhh1到2位16進(jìn)制數(shù)所代表的字符字符常量與字符串常量不同hello\0字符串“hello”在內(nèi)存中:aa\0‘a(chǎn)’“a”例空串“”:\0沒有字符串變量,用字符串用數(shù)組存放存儲(chǔ):每個(gè)字符串尾自動(dòng)加一個(gè)‘\0’作為字符串結(jié)束標(biāo)志.例1:例2:例3:1-4字符串常量2、變量定義變量就是在程序執(zhí)行過程中,其值可以改變的量。變量用來臨時(shí)保存程序運(yùn)行過程中的中間結(jié)果。
在程序中對(duì)變量的訪問(存入,讀取)都是通過變量名進(jìn)行的。變量在內(nèi)存占據(jù)存儲(chǔ)空間,變量實(shí)質(zhì)上是代表內(nèi)存中的某個(gè)存儲(chǔ)單元。
abcde7c=7實(shí)質(zhì):把數(shù)據(jù)7存入c所代表的存儲(chǔ)單元中。2、變量注意:在C語言程序中,所有的變量必須加以說明,沒有任何隱含的變量。變量說明主要是指出變量的名稱,確定變量的數(shù)據(jù)類型。在C語言程序中,變量必須“先定義、后使用”。數(shù)據(jù)類型
變量1[,變量2,…,變量n];格式:例:inta,b,c;變量類型基本型:用“int”表示短整型:用“short”表示長(zhǎng)整形:用“l(fā)ong”表示無符號(hào)型:用“unsigned”表示單精度型:用“float”表示雙精度型:用“double”表示整型變量實(shí)型變量字符型變量:用“char”表示變量類型基本數(shù)據(jù)類型的修飾符
修飾符含義signed帶符號(hào)修飾符unsigned無符號(hào)修飾符long長(zhǎng)型修飾符short短型修飾符表12-1短整型定義格式定義舉例取值范圍shortint變量名表;shortinti,j,k;shortn;當(dāng)n=5時(shí):0000000000000101當(dāng)n=-5時(shí):11111111111110112字節(jié)(16位):-32768~32767shortinta=123; 補(bǔ)充2-2基本整型定義格式定義舉例取值范圍int變量名表;inti,j,k;
intn=5;//定義變量同時(shí)進(jìn)行初始化當(dāng)n=5時(shí):當(dāng)n=-5時(shí):4字節(jié)(32位):-231~23110100000000000000000000000000000110111111111111111111111111111112-3長(zhǎng)整型定義格式定義舉例取值范圍longint變量名表;longinti,j,k;longn;當(dāng)n=5時(shí):當(dāng)n=-5時(shí):-231~2311010000000000000000000000000000011011111111111111111111111111111longinti=1234567;
4字節(jié)(32位):2-4無符號(hào)整數(shù)定義格式定義舉例取值范圍unsignedint變量名表;unsignedinti,j,k;unsignedn;當(dāng)n=5時(shí):00000000000001012字節(jié)(16位):0~65535
大于等于零unsignedintn=-29;unsignedintn=1234;2-5實(shí)型數(shù)據(jù)實(shí)型數(shù)據(jù)(又稱:浮點(diǎn)型)實(shí)型數(shù)分類單精度:雙精度float:占4字節(jié),提供7位有效數(shù)字double:占8字節(jié),提供15~16位有效數(shù)字floata,b,c;doublex,y;
例floata;a=111111.111;/*a=111111.1*/doubleb;b=111111.111;/*b=111111.111*/2-6字符變量
定義格式定義舉例變量性質(zhì)char變量名;charc1,c2,c3;charc4;一個(gè)字符變量在內(nèi)存中占一個(gè)字節(jié)。字符變量只能存放一個(gè)字符。字符在內(nèi)存中以ASCII碼值的形式存儲(chǔ),因此可以像整數(shù)一樣運(yùn)算。注明不能把字符串常量賦給字符變量。
沒有字符串變量,用字符串用數(shù)組存放按作用域的不同,變量分為局部變量和全局變量。在函數(shù)內(nèi)部說明的變量稱為局部變量。局部變量?jī)H由其被定義的模塊內(nèi)部的語句所訪問。全局變量又稱全程變量或外部變量。全局變量貫穿整個(gè)程序,并且可被任何一個(gè)模塊使用。變量的作用域§2.5算術(shù)表達(dá)式算術(shù)運(yùn)算符關(guān)系運(yùn)算符邏輯運(yùn)算符單目運(yùn)算符:一個(gè)運(yùn)算對(duì)象雙目運(yùn)算符:兩個(gè)運(yùn)算對(duì)象按性質(zhì)分類按操作個(gè)數(shù)分運(yùn)算符§2.5.1
算術(shù)運(yùn)算符+加法運(yùn)算符或正值運(yùn)算符。-減法運(yùn)算符或負(fù)值運(yùn)算符。*乘法運(yùn)算符。/除法運(yùn)算符。%模除運(yùn)算符,或稱為求余運(yùn)算符。運(yùn)算規(guī)則1.運(yùn)算的優(yōu)先順序?yàn)橄?、/、%,后+、-同等優(yōu)先級(jí)從左到右運(yùn)算。優(yōu)先級(jí)別相同時(shí),則按規(guī)定“自左至右”,即先左后右。舉例:1/21.0/2.02.5*8.02.兩個(gè)類型相同的操作數(shù),運(yùn)算結(jié)果類型也相同?!愋推ヅ涞脑瓌t!??!考點(diǎn)1運(yùn)算規(guī)則3.兩個(gè)類型不同的操作數(shù),運(yùn)算結(jié)果類型與其中類型較高的類型相同。舉例:1.0/21/2.02.5*84.求余運(yùn)算(%)的運(yùn)算結(jié)果其值為相除所得余數(shù),而符號(hào)與被除數(shù)的符號(hào)相同。注:運(yùn)算對(duì)象都是整型。舉例:-13%5=-313%(-5)=3考點(diǎn)2算術(shù)表達(dá)式
定義用算術(shù)運(yùn)算符將運(yùn)算對(duì)象連接起來的式子。
其中:運(yùn)算對(duì)象包括常量、變量、函數(shù)等。舉例a+bc+da+b/c+d(a+b)/(c+d)a+b2c(a+b)/2c(a+b)/2*c(a+b)/(2*c)1、C語言允許雙精度、單精度、整型及字符數(shù)據(jù)之間混合運(yùn)算10+'a'+1.5–8765.1234'b'是允許的。但有一個(gè)規(guī)則:先轉(zhuǎn)換成同一類型,再計(jì)算。2、強(qiáng)制類型轉(zhuǎn)換表達(dá)式:
(類型名)(表達(dá)式)例:(double)(10%3)=1.0(int)(3.14)=3§2.5.3強(qiáng)制類型轉(zhuǎn)換doublefloat高低圖中“”表示必定轉(zhuǎn)換。如'a'+'b',先轉(zhuǎn)換為int。結(jié)果為int。轉(zhuǎn)換方法:longunsignedintchar,short§2.6賦值運(yùn)算符其他語言的賦值語句≈C語言的賦值表達(dá)式算式格式變量名=表達(dá)式運(yùn)算過程1.賦值。2.求表達(dá)式值。舉例a=10Y=1+3*sin(x)*cos(x)賦值運(yùn)算符的優(yōu)先級(jí)別只高于逗號(hào)運(yùn)算符比其他的運(yùn)算符都低。賦值運(yùn)算的說明1.“=”不是等于號(hào),而是賦值運(yùn)算符。2.賦值運(yùn)算符左邊必須是變量,不能是表達(dá)式,并且賦值運(yùn)算要由右向左進(jìn)行。A+B=3;A=2+C=3;3.賦值運(yùn)算符的右邊還可是一賦值表達(dá)式,稱為多重賦值表達(dá)式。4.賦值運(yùn)算符右側(cè)表達(dá)式的值即為賦值表達(dá)式的值。5.
“=”是賦值運(yùn)算符,不能寫成“==”??键c(diǎn)3賦值表達(dá)式語句表示在賦值表達(dá)式后,加分號(hào);,稱為賦值語句。A=5我只是個(gè)表達(dá)式呀?。粒剑?;我已經(jīng)成為表達(dá)式語句了!定義:在賦值符“=”之前加上其他運(yùn)算符,可以構(gòu)成復(fù)合的運(yùn)算符。例如:x+=5 等價(jià)于x=x+5x*=y+8 等價(jià)于x=x*(y+8)x%=3 等價(jià)于x=x%3a*=b 等價(jià)于a=a*b§2.6.2復(fù)合賦值運(yùn)算符復(fù)合賦值運(yùn)算符C語言可使用的復(fù)合賦值運(yùn)算符有10種。1、與算術(shù)運(yùn)算符組合:+=-=、*=、/=、%=2、與移運(yùn)算符組合:<<=、>>= 3、位邏輯運(yùn)算符組合:&=、∧=、|=
復(fù)合賦值表達(dá)式格式:<變量名><復(fù)合賦值運(yùn)算符><表達(dá)式>復(fù)合的賦值表達(dá)式復(fù)合賦值運(yùn)算符表達(dá)式等價(jià)語句+=a+=3a=a+3;*=x*=y+8x=x*(y+8)%=x%=3x=x%3;復(fù)合賦值表達(dá)式例如:x+=a+y*3等價(jià)于x=x+(a+y*3)若a的初值為12,則a+=a-=a*a的求解過程為:(1)先進(jìn)行a-=a*a的運(yùn)算,它相當(dāng)于a=a-a*a=12-144=-132(2)再進(jìn)行a+=-132的運(yùn)算,它相當(dāng)于a=a+(-132)=-132-132=-264§2.7增1和減1運(yùn)算符自增:使變量的值加1;
自減:使變量的值減1。
增1和減1運(yùn)算符是單目運(yùn)算符,且操作對(duì)象只能是變量,不能是常量或表達(dá)式。++i;/*在使用i之前使i加1*/--i;/*在使用i之前使i減1*/i++;/*在使用i之后使i加1*/i--;/*在使用i之后使i減1*/例:i=3;j=++i;/*先使i加1,再賦給j。執(zhí)行后j=4,i=4*/i=3;j=i++;/*先把i賦給j,再使i加1。執(zhí)行后:j=3,i=4*/注意:(1)++和--只能用于變量,不能用于常量和表達(dá)式。例:5++;(a+b)++;#defineONE1;ONE++;結(jié)合方向?yàn)椤白杂抑磷蟆?/p>
-i++負(fù)值運(yùn)算符-和自增運(yùn)算符優(yōu)先級(jí)相同(-i)++-(i++)例:一般形式:
表達(dá)式1,表達(dá)式2其計(jì)算規(guī)則:先計(jì)算表達(dá)式1,再計(jì)算表達(dá)式2,最后值為表達(dá)式
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)校車停放管理制度
- 學(xué)生常態(tài)化管理制度
- 孵化器空調(diào)管理制度
- 安全勸導(dǎo)站管理制度
- 安全鎖安全管理制度
- 完善莫高窟管理制度
- 實(shí)體烘焙店管理制度
- 實(shí)驗(yàn)室內(nèi)務(wù)管理制度
- 審計(jì)署內(nèi)審管理制度
- 2025浙江嘉興市海寧市嘉睿人力招聘5人筆試參考題庫附帶答案詳解析版
- 黨課課件含講稿:《關(guān)于加強(qiáng)黨的作風(fēng)建設(shè)論述摘編》輔導(dǎo)報(bào)告
- GB/T 19023-2025質(zhì)量管理體系成文信息指南
- 2025中考?xì)v史高頻點(diǎn)速記大全
- 2025年北京西城區(qū)九年級(jí)中考二模英語試卷試題(含答案詳解)
- T/CECS 10378-2024建筑用輻射致冷涂料
- 數(shù)據(jù)驅(qū)動(dòng)的古氣候研究-洞察闡釋
- 護(hù)理糾紛處理制度
- 多余物管理制度
- 2024北京朝陽區(qū)三年級(jí)(下)期末語文試題及答案
- 灌腸技術(shù)操作課件
評(píng)論
0/150
提交評(píng)論