![C語言數(shù)據(jù)類型最新版本_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/22/644068ef-8587-4d82-9b97-f86da2bae5d1/644068ef-8587-4d82-9b97-f86da2bae5d11.gif)
![C語言數(shù)據(jù)類型最新版本_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/22/644068ef-8587-4d82-9b97-f86da2bae5d1/644068ef-8587-4d82-9b97-f86da2bae5d12.gif)
![C語言數(shù)據(jù)類型最新版本_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/22/644068ef-8587-4d82-9b97-f86da2bae5d1/644068ef-8587-4d82-9b97-f86da2bae5d13.gif)
![C語言數(shù)據(jù)類型最新版本_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/22/644068ef-8587-4d82-9b97-f86da2bae5d1/644068ef-8587-4d82-9b97-f86da2bae5d14.gif)
![C語言數(shù)據(jù)類型最新版本_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/22/644068ef-8587-4d82-9b97-f86da2bae5d1/644068ef-8587-4d82-9b97-f86da2bae5d15.gif)
已閱讀5頁,還剩57頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
.,第二章數(shù)據(jù)類型運(yùn)算符和表達(dá)式,.,第二章數(shù)據(jù)類型、運(yùn)算符和表達(dá)式,內(nèi)容提要數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式,.,2.1數(shù)據(jù)類型,數(shù)據(jù)類型總表,數(shù)據(jù)類型決定:1.數(shù)據(jù)占內(nèi)存字節(jié)數(shù)2.數(shù)據(jù)取值范圍3.其上可進(jìn)行的操作,.,說明:數(shù)據(jù)類型所占字節(jié)數(shù)隨機(jī)器硬件不同而不同,上表以IBMPC機(jī)為例。,基本數(shù)據(jù)類型,2.1數(shù)據(jù)類型,.,2.2常量與變量,數(shù)據(jù)是程序的處理對(duì)象C語言將數(shù)據(jù)分為常量與變量,.,2.2.1常量1.常量的定義及分類定義:程序運(yùn)行的過程中,其值不能改變的量。分類:整型常量實(shí)型常量字符常量字符串常量符號(hào)常量,2.2常量與變量,.,2.整型常量(既整常數(shù))三種形式:十進(jìn)制整數(shù):由數(shù)字09和正負(fù)號(hào)表示.如123,-456,0八進(jìn)制整數(shù):由數(shù)字0開頭,后跟數(shù)字07表示.如0123,011十六進(jìn)制整數(shù):由0 x開頭,后跟09,af,AF表示.如0 x123,0Xff,轉(zhuǎn)換成十進(jìn)制數(shù)的方法:0123=1x82+2x81+3x80=(83)100 x123=1x162+2x161+3x160=(291)100Xff=15x161+15x160=(255)10,2.2常量與變量,.,整型常量的說明(1)空白字符不可以出現(xiàn)在整數(shù)數(shù)字之間(2)根據(jù)其值所在范圍確定其數(shù)據(jù)類型(3)在整常量后加字母l或L,認(rèn)為它是longint型常量,例如30000為int型65536為longint型79L、012L為longint型,2.2常量與變量,.,3.實(shí)型常量實(shí)常數(shù)或浮點(diǎn)數(shù),是一個(gè)十進(jìn)制表示的符號(hào)實(shí)數(shù)表示形式:十進(jìn)制小數(shù)形式digits.digits如0.123,.123,123.0,0.0,123.指數(shù)形式(包括整數(shù)部分、尾數(shù)部分和指數(shù)部分)digits.digitsE|e+|-digits小數(shù)點(diǎn)之前是整數(shù)部分,小數(shù)點(diǎn)之后是尾數(shù)部分,小數(shù)點(diǎn)在沒有尾數(shù)時(shí)可省略。如12.3e3,123E2,2.2常量與變量,.,實(shí)型常量的說明(1)實(shí)型常量采用十進(jìn)制小數(shù)形式表示時(shí),必須有小數(shù)點(diǎn)。例如:123.是實(shí)型常量,而123是整型常量(2)采用指數(shù)形式表示時(shí),在E或e之前必須要有數(shù)字,且之后的指數(shù)必須為整數(shù)。例如:E6、.e6、e等都是不合法的(3)實(shí)型常量的整數(shù)部分為0時(shí)可以省略,如下形式是允許的:.57,.0075e2,-.125,-.175E-2(4)所有的實(shí)型常量均被看作是雙精度類型(double),2.2常量與變量,.,4.字符常量定義:用單引號(hào)括起來的單個(gè)普通字符或轉(zhuǎn)義字符。分為一般字符常量和特殊字符常量一般字符常量:如a、9、!等。單引號(hào)只起定界作用并不表示字符本身,中間的字符可以是除單引號(hào)()和反斜杠()以外的數(shù)字、字母等C語言字符集中包含的所有可顯示字符。特殊字符常量(也叫轉(zhuǎn)義字符)是C語言中表示字符的一種特殊形式,其含義為將反斜杠()后面的字符轉(zhuǎn)換成另外的意義。,2.2常量與變量,.,字符常量的值:該字符的ASCII碼值,如A65,a97,048,n10,2.2常量與變量,.,13,如101-A012-n376-x61-a060-0,例轉(zhuǎn)義字符舉例intmain()printf(101x42Cn);printf(Isay:Howareyou?n);printf(CProgramn);printf(TurboC);,運(yùn)行結(jié)果:(屏幕顯示)ABCIsay:”Howareyou?”CProgramTurboC,2.2常量與變量,.,字符常量與字符串常量不同,5.字符串常量定義:用雙引號(hào)(“”)括起來的字符序列存儲(chǔ):每個(gè)字符串尾自動(dòng)加一個(gè)0作為字符串結(jié)束標(biāo)志,例:charch;ch=“A”;,例:charch;ch=A;,2.2常量與變量,.,6.符號(hào)常量(1)標(biāo)識(shí)符定義:用來標(biāo)識(shí)變量、常量、函數(shù)等的字符序列組成:只能由字母、數(shù)字、下劃線組成,且第一個(gè)字母必須是字母或下劃線大小寫敏感不能使用關(guān)鍵字長度:最長32個(gè)字符命名原則:見名知義不宜混淆如1與l,o與0,2.2常量與變量,.,在C語言中,允許將程序中的常量定義為一個(gè)標(biāo)識(shí)符,稱為符號(hào)常量。在使用符號(hào)常量前必須先加以定義,一般情況下,符號(hào)常量使用大寫英文字母表示。,其定義的一般形式為:#define例如:#definePRICE35,2.2常量與變量,.,2.2.2變量概念:其值可以改變的量變量名與變量值變量定義的一般格式:數(shù)據(jù)類型變量1,變量2,變量n;變量初始化:定義時(shí)賦初值變量的使用:先定義,后使用,決定分配字節(jié)數(shù)和數(shù)的表示范圍,合法標(biāo)識(shí)符,例:inta,b,c;floatdata;,例:inta=2,b,c=4;floatdata=3.67;charch=A;intx=1,y=1,z=1;intx=y=z=1;,2.2常量與變量,.,變量定義位置:一般放在函數(shù)開頭,2.2常量與變量,.,與常量類似,變量也有不同的類型,一般可以分為以下三種類型:整型變量實(shí)型變量字符變量,2.2常量與變量,.,1.整型變量(1)整型變量的分類基本型短整型長整型無符號(hào)整型,基本型:類型說明符為int,在內(nèi)存中占2個(gè)字節(jié)。,短整型:類型說明符為shortint或short,所占字節(jié)和取值范圍均與基本型相同。,長整型:類型說明符為longint或long,在內(nèi)存中占4個(gè)字節(jié)。,無符號(hào)整型:類型說明符為unsigned。.無符號(hào)基本型:類型說明符為unsignedint或unsigned。.無符號(hào)短整型:類型說明符為unsignedshort。.無符號(hào)長整型:類型說明符為unsignedlong。,2.2常量與變量,.,例2-1整型變量的使用#includeintmain()intx,y,z;x=10;y=20;z=x+y;printf(“x+y=%dn”,z);return0;輸出結(jié)果:x+y=30,(2)整型變量的定義與使用,2.2常量與變量,.,intx;x=10;則變量x的值10在內(nèi)存中的存放形式:intx;x=-10;則變量x的值10在內(nèi)存中的存放形式:,(3)整型數(shù)據(jù)在內(nèi)存中的存放形式,2.2常量與變量,.,例2-2整型數(shù)據(jù)的溢出問題#includeintmain()intx,y;x=32767;y=x+1;printf(%d,%dn,x,y);return0;運(yùn)行結(jié)果:-32768原因:一個(gè)int型變量只能容納-32768到32767范圍內(nèi)的數(shù),無法表示超過這個(gè)范圍的數(shù)。,(4)整型數(shù)據(jù)的溢出,2.2常量與變量,.,2.實(shí)型變量(1)實(shí)型變量的分類單精度實(shí)型:類型說明符為float,在內(nèi)存中占4個(gè)字節(jié),提供7位有效數(shù)字。雙精度實(shí)型:類型說明符為double,在內(nèi)存中占8個(gè)字節(jié),提供1516位有效數(shù)字。,例floata;a=111111.111;/*a=111111.1*/doubleb;b=111111.111;/*b=111111.111*/,2.2常量與變量,.,例2-3實(shí)型變量的使用#includeintmain()floatx,y,z;x=10;y=20;z=x+y;printf(“x+y=%fn”,z);return0;運(yùn)行結(jié)果:x+y=30.000000,(2)實(shí)型變量的定義與使用,2.2常量與變量,.,例a=D;/*a=68;*/x=A+5;/*x=65+5;*/s=!+G/*s=33+71;*/,字符變量存放字符ASCII碼char與int數(shù)據(jù)間可進(jìn)行算術(shù)運(yùn)算,沒有字符串變量,用字符數(shù)組存放,(3)字符變量,2.2常量與變量,.,#includeintmain()charc1,c2;/*定義c1,c2為字符型變量*/c1=97;c2=98;/*將整數(shù)97和98分別賦給c1和c2*/printf(”%c,%cn”,c1,c2);/*以字符形式輸出c1和c2*/printf(”%d,%d”,c1,c2);/*輸出c1和c2的ASCII碼值*/printf(”%d”,c1+c2);return0;運(yùn)行結(jié)果如下:a,b97,98,2.2常量與變量,.,例#definePRICE12.5main()intnum=3;floattotal;charch1,ch2=D;total=num*PRICE;ch1=ch2-A+a;printf(“total=%f,ch1=%cn”,total,ch1);,運(yùn)行結(jié)果:total=37.500000,ch1=d,(4)變量的初始化,2.2常量與變量,.,運(yùn)算符的分類,2.3運(yùn)算符與表達(dá)式,.,定義:由常量、變量、函數(shù)、運(yùn)算符和括號(hào)組合起來的、符合C語法規(guī)則的式子稱為表達(dá)式。一個(gè)表達(dá)式有一個(gè)值以及其對(duì)應(yīng)的類型表達(dá)式求值首先進(jìn)行優(yōu)先級(jí)高的運(yùn)算再進(jìn)行優(yōu)先級(jí)低的運(yùn)算,然后對(duì)于優(yōu)先級(jí)相同的運(yùn)算按結(jié)合方向進(jìn)行運(yùn)算。結(jié)合方向:左結(jié)合、右結(jié)合例如:,2.3運(yùn)算符與表達(dá)式,.,2.3.1算術(shù)運(yùn)算符及算術(shù)表達(dá)式1.基本算術(shù)運(yùn)算符:+-*/%結(jié)合方向:從左向右優(yōu)先級(jí):(高)-*/%-+-說明:“-”可為單目運(yùn)算符時(shí),右結(jié)合性兩整數(shù)相除,結(jié)果為整數(shù),如果兩整數(shù)中有一個(gè)是負(fù)數(shù),舍入規(guī)則為“向零取整”如果運(yùn)算的兩個(gè)數(shù)中有一個(gè)是實(shí)型,則結(jié)果為double型%要求兩側(cè)均為整型數(shù)據(jù),例5/2=2-5/2.0=-2.55%2=1-5%2=-11%10=15%1=05.5%2(),2.3運(yùn)算符與表達(dá)式,.,#includeintmain()printf(”10-9/6*5=%d”,109/6*5);return0;運(yùn)行結(jié)果如下:10-9/6*5=5,#includemain()intx=5,y;y=+x;printf(%dn,y);輸出結(jié)果:6,例2-5計(jì)算表達(dá)式10-9/6*5,2.3運(yùn)算符與表達(dá)式,.,例2-6計(jì)算表達(dá)式10-3.0/2的值#includeintmain()printf(”10-3.0/2=%f”,10-3.0/2);運(yùn)行結(jié)果如下:10-3.0/2=8.500000,2.3運(yùn)算符與表達(dá)式,.,2.算術(shù)表達(dá)式定義:用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象連接起來的、符合C語法規(guī)則的式子稱為算術(shù)表達(dá)式。其中的運(yùn)算對(duì)象包括常量、變量、函數(shù)等。例如:x+y、(x*2)/y、sin(x)sin(y)等都是算術(shù)表達(dá)式。,2.3運(yùn)算符與表達(dá)式,.,(1)(x+y)h2(2)s(s-a)(s-b)(s-c)(3)(x+1)2+(y-1)2在C語言中,其合法的算術(shù)表達(dá)式如下:(1)(x+y)*h/2.0(2)s*(s-a)*(s-b)*(s-c)(3)(x+1)*(x+1)+(y-1)*(y-1),例2-7寫出下列數(shù)學(xué)表達(dá)式對(duì)應(yīng)的合法的C算術(shù)表達(dá)式,2.3運(yùn)算符與表達(dá)式,.,種類:=!=結(jié)合方向:自左向右優(yōu)先級(jí)別:關(guān)系運(yùn)算符優(yōu)先級(jí)低于算術(shù)運(yùn)算符,2.3.2關(guān)系運(yùn)算符及關(guān)系表達(dá)式1.關(guān)系運(yùn)算符,例:ca+b等價(jià)于c(a+b)ab!=c(ab)!=ca=bca=(bc),2.3運(yùn)算符與表達(dá)式,.,關(guān)系運(yùn)算結(jié)果:1(真)和0(假)例2-8計(jì)算下列關(guān)系表達(dá)式的值(1)1010(2)10=10(3)1010!=10(4)3*8-9!=5+7%3,2.3運(yùn)算符與表達(dá)式,.,2.關(guān)系表達(dá)式關(guān)系表達(dá)式的值:是邏輯值“真(True)”或“假(False)”,用1或0表示關(guān)系表達(dá)式例子inta=3,b=2,c=1,d,f;ab(ab)=cb+cbf=abc,/表達(dá)式值1,/表達(dá)式值1,/表達(dá)式值0,/d=1,/f=0,2.3運(yùn)算符與表達(dá)式,.,種類:!inti;i=10;f=i;則f=10.0,錯(cuò)誤:3=x-2*y;a+b=3;,2.賦值表達(dá)式,2.3運(yùn)算符與表達(dá)式,.,賦值表達(dá)式的值與變量值相等,且可嵌套。,例:a=12;a+=a-=a*a,/a=-264等價(jià)于a=a+(a=a-(a*a),2.3運(yùn)算符與表達(dá)式,.,復(fù)合的賦值運(yùn)算符在“=”前面加上其他運(yùn)算符種類+=-=*=/=%=x=10;y=+x;此時(shí),變量y的值為11。如果程序改為:x=10;y=x+;則變量y的值為10。,2.3.5增量運(yùn)算符,2.3運(yùn)算符與表達(dá)式,.,一般形式:expr1?expr2:expr3由常量、變量、函數(shù)、運(yùn)算符和括號(hào)組合起來的、符合C語法規(guī)則的式子稱為表達(dá)式。執(zhí)行過程,2.3.6條件運(yùn)算符及條件表達(dá)式,2.3運(yùn)算符與表達(dá)式,.,結(jié)合方向:自右向左例2-13假設(shè)變量x=10,y=20,z=30,計(jì)算下列條件表達(dá)式的值。(1)x10?100:200(2)x10?x+z:y20?y+z:z,2.3運(yùn)算符與表達(dá)式,.,一般形式:表達(dá)式1,表達(dá)式2,表達(dá)式n結(jié)合性:從左向右優(yōu)先級(jí):15逗號(hào)表達(dá)式的值:等于表達(dá)式n的值例如:1.x=(y=1,y+1);2.y=20;x=(y=y-10,10/y);,2.3.7逗號(hào)運(yùn)算符及逗號(hào)表達(dá)式,2.3運(yùn)算符與表達(dá)式,.,例1a=3*5,a*4a=3*5,a*4,a+5例2x=(a=3,6*3)x=a=3,6*a例3a=1;b=2;c=3;printf(“%d,%d,%d”,a,b,c);printf(“%d,%d,%d”,(a,b,c),b,c);,例2-14計(jì)算下列逗號(hào)表達(dá)式的值。(1)x=10,x+10(2)(x=1+2,x+3),x+4,2.3運(yùn)算符與表達(dá)式,.,求字節(jié)數(shù)運(yùn)算符“sizeof”是C語言提供的一種特殊的運(yùn)算符,是單目運(yùn)算符。求字節(jié)數(shù)運(yùn)算符與操作數(shù)結(jié)合在一起構(gòu)成的式子稱為求字節(jié)數(shù)表達(dá)式。一般形式sizeof(表達(dá)式)或sizeof(數(shù)據(jù)類型名),例sizeof(int)sizeof(/a)sizeofx,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 深入探討科技企業(yè)如何通過強(qiáng)化知識(shí)產(chǎn)權(quán)保護(hù)來提升品牌形象和競爭力
- 現(xiàn)代綠色辦公樓的設(shè)計(jì)與施工經(jīng)驗(yàn)分享
- 生產(chǎn)制造中基于智能算法的調(diào)度系統(tǒng)設(shè)計(jì)
- 2023三年級(jí)英語上冊(cè) Unit 3 My friends第4課時(shí)說課稿 牛津譯林版
- 2024年春八年級(jí)語文下冊(cè) 第二單元 5 大自然的語言說課稿 新人教版
- 9 烏鴉喝水(說課稿)-2024-2025學(xué)年統(tǒng)編版語文一年級(jí)上冊(cè)
- Unit 4 My Family Lesson 2(說課稿)-2023-2024學(xué)年人教新起點(diǎn)版英語三年級(jí)下冊(cè)
- Unit 6 Useful numbers Lesson 2(說課稿)-2024-2025學(xué)年人教PEP版(2024)英語三年級(jí)上冊(cè)
- 2024-2025學(xué)年高中歷史 第三單元 各國經(jīng)濟(jì)體制的創(chuàng)新和調(diào)整 第16課 戰(zhàn)后資本主義經(jīng)濟(jì)的調(diào)整教學(xué)說課稿 岳麓版必修2
- 2025淮安市城東花園小區(qū)門禁系統(tǒng)工程合同
- 河南省南陽市2023-2024學(xué)年八年級(jí)上學(xué)期期末考試數(shù)學(xué)試題
- 銷售調(diào)味品工作總結(jié)5篇
- 2024年江蘇省勞動(dòng)合同條例
- 成人鼻腸管的留置與維護(hù)
- 《中電聯(lián)團(tuán)體標(biāo)準(zhǔn)-220kV變電站并聯(lián)直流電源系統(tǒng)技術(shù)規(guī)范》
- 中國主要蜜源植物蜜源花期和分布知識(shí)
- 電化學(xué)免疫傳感器的應(yīng)用
- 數(shù)據(jù)中心基礎(chǔ)知識(shí)培訓(xùn)-2024鮮版
- 供電企業(yè)輿情的預(yù)防及處置
- 【高中語文】《氓》課件++統(tǒng)編版+高中語文選擇性必修下冊(cè)
- T-WAPIA 052.3-2023 無線局域網(wǎng)設(shè)備技術(shù)規(guī)范 第3部分:接入點(diǎn)和控制器
評(píng)論
0/150
提交評(píng)論