




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第二章數(shù)據(jù)信息2.1基本符號
保留字 運算符 分隔符 標(biāo)識符 常量注釋2.1.1字符集<字母>→A——Z,a——z<數(shù)字>→0——9<特殊字符>→!▌#▌%▌^▌&▌*▌(▌_▌)▌-▌+▌=▌~▌[▌]▌’▌|▌\▌;▌:▌“▌{▌}▌,▌.▌<▌>▌/▌?
除以上符號外,其它符號不許在C程序中出現(xiàn)。
2.1.2標(biāo)識符標(biāo)識符(identifier)表示對象名字的符號。構(gòu)成規(guī)則:以字母或下劃線開頭的字母和數(shù)字的序列<標(biāo)識符>→<非數(shù)字字符>▌<標(biāo)識符><非數(shù)字字符>▌<標(biāo)識符><數(shù)字><非數(shù)字字符>→<字母>▌_
思考:判斷下列標(biāo)識符是否合法SumsumM.D.JohndayDate3days$123student_namechar#33lotus_1_2_3a>b_above
標(biāo)準(zhǔn)標(biāo)識符(預(yù)定義標(biāo)識符)用戶自定義標(biāo)識符:盡量起代表其本來含義的名字。
※C不允許使用無定義的標(biāo)識符。標(biāo)識符分類——不能與保留字重名。不能與標(biāo)準(zhǔn)標(biāo)識符重名。先聲明后使用。不允許重復(fù)聲明。拼寫完全一致的兩個標(biāo)識符是相同的。字母大小寫的敏感。盡量與含義相符。用途:常量、變量、函數(shù)名、語句標(biāo)號、類型定義符等標(biāo)識符定義注意要點
<保留字>→auto▌bool▌break▌case▌char▌_complex▌const▌continue▌default▌restrict▌do▌double▌else▌enum▌extern▌float▌for▌goto▌if▌_imaginary▌inline▌int▌long▌register▌return▌short▌signed▌sizeof▌static▌struct▌switch▌typedef▌union▌unsigned▌void▌volatile▌while不能把保留字作為普通標(biāo)識符使用。2.1.3保留字
分隔符是由一個或兩個字符組成的特殊符號。<分隔符>→#▌(▌)▌[▌]▌’▌|▌;▌:▌”▌{▌}▌,▌\
2.1.4分隔符2.1.5運算符<運算符>→!▌%▌^▌&▌*▌-▌+▌=▌~▌|▌.▌<▌>▌/▌?▌+=▌-=▌*=▌/=▌%=▌<<=▌>>=▌&=▌^=▌|=▌->▌++▌--▌<<▌>>▌<=▌>=▌==|!=▌&&▌||
常量(Constant)直接常量:包括整型、浮點型、字符型、字符串型等常量3,3.14,-5,-9.8,‘A’,“anexample”符號常量:代表常量的標(biāo)識符符號。符號常量通常用大寫字母表示。定義格式:#definePI3.1415926含義清楚“一改全改”2.1.6常量
優(yōu)點注意!無分號[例]#define
PRICE30main(){intnum,total;num=10;total=num*PRICE;printf("total=%d",total);}#define語句定義一個符號常量PRICE,其值等于30。該值在程序運行過程中不能被改變。編譯程序在翻譯本源程序文件時,符號常量PRICE用其值30替換。運行結(jié)果是:total=300符號常量=>total=10*30;2.1.7注釋兩種形式:“/*”和“*/”;“//”和“//”。作用:增加程序的可讀性。Attention:程序的書寫格式自由應(yīng)該:結(jié)構(gòu)清晰層次分明
eg.#include<stdio.h>inti;//聲明整型變量ivoidmain()//主函數(shù)
{i=25+38;/*求和運算*/printf(“25+38=%d”,i);/*打印*/}完全可以寫成:
#include<stdio.h>inti;main()
{i=25+38;printf(“25+38=%d”,i);}2.2數(shù)據(jù)類型數(shù)據(jù)類型基本類型構(gòu)造類型指針類型空類型整型(short、int、long)實型(float、double)字符(char)
枚舉(enum)數(shù)組類型
結(jié)構(gòu)體類型(struct)共用體類型(union)文件類型(file)數(shù)據(jù)類型C語言中整型數(shù)值常量的表達方式:3種十進制整數(shù)123十進制:表示十進制數(shù)12345八進制整數(shù)(0開頭)0123:八進制數(shù),表示十進制數(shù)83十六進制整數(shù)(0x開頭)0x123:十六進制數(shù),表示十進制數(shù)2911.整型常量2.2.1整數(shù)類型2、整型變量的分類(IBM16位PC)基本型(整型)int2字節(jié)短整型short或shortint2字節(jié)長整型long或longint4字節(jié)無符號整型:unsigned2字節(jié)無符號短整型:unsignedshort2字節(jié)無符號長整型:unsignedlong4字節(jié)
C語言標(biāo)準(zhǔn)沒有規(guī)定整型變量在計算機內(nèi)存中所占的字節(jié)數(shù),與具體的機器和操作系統(tǒng)有關(guān)。整數(shù)運算運算分量和結(jié)果都是整數(shù)類型的運算包括:+、-、*:就是通常數(shù)學(xué)意義下的加、 減、乘。
/:除法,只求其商而舍去余數(shù)(不進行四舍五入)%:取余數(shù)。i%j的結(jié)果是i/j后得到的余數(shù)
i%j等價于i-(i/j)*j
i等價于(i/j)*j+i%j例子1main(){inta,b,c,d;unsignedintu;a=12;b=-24;u=10;c=a+u;d=b+u;printf("a+u=%d,b+u=%d\n",c,d);}程序運行顯示:a+u=22,b+u=-14不同數(shù)據(jù)類型之間也可以進行運算main(){inta,b;a=32767;b=a+1;printf("%d,%d\n",a,b);}程序運行顯示:32767,-32768
計算機中的數(shù)據(jù)和現(xiàn)實數(shù)據(jù)的區(qū)別:數(shù)據(jù)類型有表示范圍例子22.2.2浮點類型各種長度的浮點類型(float、double、longdouble)常量(兩種表達方式):
十進制數(shù)形式0.123、.123、123.0、123.、0.0(必須有小數(shù)點)
指數(shù)形式
123e3或123E3代表:123103;123E2.5、E3,E不合法。運算分量和結(jié)果都是浮點類型的運算包括:+(加法)-(減法)*(乘法)/(除法)兩個幾乎相等的值相減,會引起很大的誤差若除數(shù)的絕對值很小,結(jié)果很可能引起溢出在比較X、Y兩個浮點值是否相等時使用|X-Y|<ε(ε通常取值1e-6)變量單精度:float
4字節(jié)(32位)雙精度:double
8字節(jié)(64位)例1:floatx,y;/*指定x、y為單精度實型變量*/doublez;/*指定z為雙精度實型變量*/實型常量不分float和double。例2:floata;a=123456.711float型變量只能接受7(8)位有效數(shù)字,最后兩位數(shù)字不起作用double型變量能接受16位有效數(shù)字。longdouble型變量能接受19位有效數(shù)字。實型數(shù)據(jù)在內(nèi)存中的存放形式 實型數(shù)據(jù)在內(nèi)存中以二進制存放。 在C編譯系統(tǒng)下,每一個實型變量在內(nèi)存中占4個字節(jié)(32位),數(shù)據(jù)按照指數(shù)形式存儲,數(shù)據(jù)按照小數(shù)部分與指數(shù)部分分別存放。實數(shù)3.14159在內(nèi)存中的存放形式。+.3141591數(shù)符小數(shù)部分指數(shù)部分
+.314159×1012.2.3
字符類型(char型)字符常量:用單引號(撇號)括起來的一個字符。字符在內(nèi)存中以ASCII碼存放如:‘a(chǎn)’、‘x’、‘?’、‘$’。注意,‘a(chǎn)’和‘A’是不同的字符常量?!產(chǎn)’——十進制ASCII碼:97‘A’——十進制ASCII碼:65
‘a(chǎn)’——八進制ASCII碼:’\141’‘A’——八進制ASCII碼:’\101’
‘a(chǎn)’——十六進制ASCII碼:0x61‘A’——十六進制ASCII碼:0x41
字符轉(zhuǎn)義符(或控制字符,可在字符型、字符串型常量中使用,表示源程序中無法或很難直接輸入的字符,以’\’字符開頭)有兩種形式:
‘\’反斜杠后跟一個八進制或十六進制整數(shù),表示的字符是:ASCII碼值為相應(yīng)整數(shù)的字符‘\’后跟一個特殊字符,代表特殊意義。例如——\n\r\t\ddd\xhh
反斜杠后跟一個特殊字符,代表的符號含義
字符變量字符變量用來存放一個字符常量.字符變量在內(nèi)存中占一字節(jié)。例1:
char
c1,c2='b';c1=‘a(chǎn)’;main(){charc1,c2;c1=97;c2=98;printf("%c%c",c1,c2);}相當(dāng)于:c1=‘a(chǎn)’;c2=‘b’;因為:字符以ASCII碼存放,‘a(chǎn)’的ASCII碼為97,'b'的ASCII碼為98。該例的輸出是:ab
字符以ASCII碼存儲,其存儲方式與整數(shù)類似。從而,C語言允許字符和整數(shù)之間進行運算。C語言中的整數(shù)運算對于字符類型是適用的。例子:#include<stdio.h>main(){printf(“_ab_c\t_de\rf\tg\n”);printf(“h\ti\b\bj_k”);}運行結(jié)果3.字符串常量字符常量:單引號括起來的一個字符。字符串常量:雙引號括起來的字符序列.字符串常量在內(nèi)存中的存放:每一個字符均以其ASCII碼存放,且最后添加一個“空字符”\0。例:"Howdoyoudo.","CHINA""CHINA"存放在內(nèi)存中的情況是:(6字節(jié)存儲器,不是5字節(jié))CHINA\0最后一個字符.。比較字符串常量在內(nèi)存中的存儲狀態(tài)————字母對應(yīng)的十進制ASCII碼2.2.4布爾類型(bool型)
bool類型僅有兩個值: false(假)true(真)在C中把bool類型也看成整數(shù)類型,分別用0和1表示false和true??墒┯诓紶栴愋蜕系倪\算有:
!(非)&&(與)||(或)
!取反#include<stdio.h> &&“并且” main(){ ||“或者”boola=0;printf(“%d”,a);}
2.2.5枚舉類型最基本的枚舉類型說明符形式是:enum{id,id,id,...,id};enumid_tag{id,id,id,...,id};其中每個id是一個標(biāo)識符,也是相應(yīng)枚舉類型中的一個值,稱枚舉常量。全部標(biāo)識符集合構(gòu)成相應(yīng)枚舉類型的值域。例:enumweek{sunday,monday,tuesday,wednesday, thursday,friday,saturday};enummonth{Jan,F(xiàn)eb,Mar,Apr,May,Jun,Jul, Aug,Sep,Oct,Nov,Dec};enumcolor{red,yellow,green,blue};/*紅、黃、綠、藍*/enum{club,diamond,heart,spade};/*梅花、方塊、紅桃、黑桃*/利用類型說明符可以聲明枚舉類型變量,也可以定義枚舉類型。把枚舉類型看成整數(shù)類型,每個枚舉常量對應(yīng)一個整數(shù)值。一般情況下,第一個標(biāo)識符對應(yīng)整數(shù)值0,其它標(biāo)識符對應(yīng)前一個標(biāo)識符整數(shù)值+1。上述例子中red對應(yīng)0 yellow對應(yīng)1green對應(yīng)2 blue對應(yīng)3聲明枚舉類型時,可標(biāo)識該常量對應(yīng)的整數(shù)值,例如:enumcolor{red=10,yellow=red+2,
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 預(yù)防安全攀爬課件
- 婦產(chǎn)科健康教育與咨詢指導(dǎo)技術(shù)
- 順產(chǎn)產(chǎn)婦護理課件
- 項目工程管理第五章課件
- 水肌酸產(chǎn)品項目社會穩(wěn)定風(fēng)險評估報告(模板)
- 縣醫(yī)院醫(yī)療服務(wù)能力基本標(biāo)準(zhǔn)
- 縣防汛應(yīng)急預(yù)案、縣抗旱應(yīng)急預(yù)案、縣自然災(zāi)害救助應(yīng)急預(yù)案、縣處置森林火災(zāi)應(yīng)急預(yù)案
- 五年級奧數(shù)春季班第13講-概率初識
- 2025年衛(wèi)星云圖接收設(shè)備項目合作計劃書
- 現(xiàn)代康復(fù)治療技術(shù)考試試題含答案
- GB/T 45333-2025類金剛石薄膜球盤法測試類金剛石薄膜的摩擦磨損性能
- 醫(yī)師定期考核操作流程
- 山東省歷年中考作文題(2012-2022)
- 中石化夏季八防培訓(xùn)課件
- 超星爾雅學(xué)習(xí)通《紅色經(jīng)典影片與近現(xiàn)代中國發(fā)展(首都師范大學(xué))》2025章節(jié)測試附答案
- 2024屆高三生物學(xué)科高考備考經(jīng)驗交流與反思
- 2025年河北軌道運輸職業(yè)技術(shù)學(xué)院單招職業(yè)技能考試題庫及答案1套
- 腰椎間盤突出的診治課件
- 煤礦工作申請書
- 醫(yī)療護理醫(yī)學(xué)培訓(xùn) 簡易呼吸氣囊的介紹及使用課件
- 加油站的運營數(shù)據(jù)分析
評論
0/150
提交評論