c語言第2講基本數(shù)據(jù)類型與表達(dá)式.ppt
《c語言第2講基本數(shù)據(jù)類型與表達(dá)式.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《c語言第2講基本數(shù)據(jù)類型與表達(dá)式.ppt(49頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第2講C語言的基本數(shù)據(jù)類型與表達(dá)式,2.1C語言的基本數(shù)據(jù)類型2.2常量與變量2.3運(yùn)算符與表達(dá)式2.4數(shù)據(jù)類型轉(zhuǎn)換,一、數(shù)據(jù)類型概述,本講中將對(duì)基本類型中的前三類進(jìn)行介紹和學(xué)習(xí)。,2.1C語言的基本數(shù)據(jù)類型,變量:指以標(biāo)識(shí)符為名字,其值可以改變的量。,在學(xué)習(xí)各種數(shù)據(jù)類型之前,我們先簡(jiǎn)單了解一下常量和變量的概念。,常量:指在程序運(yùn)行中,其數(shù)值不能被改變的量。,變量代表計(jì)算機(jī)內(nèi)存中的某一存儲(chǔ)空間,變量的類型決定了該存儲(chǔ)空間的長(zhǎng)度和其中存放數(shù)據(jù)的編碼方式及存儲(chǔ)格式。變量的類型也決定了該存儲(chǔ)空間中存放數(shù)據(jù)的數(shù)據(jù)形式和取值范圍。,*八進(jìn)制的數(shù)碼范圍為0~7;018?*十六進(jìn)制的數(shù)碼除了數(shù)字0~9外,還使用英文字母a~f(或A~F)表示10~15。如:0 x1e√,,注意!,二、整型(采用定點(diǎn)整數(shù)的存儲(chǔ)格式,只能表示純整數(shù)),1、整型常量:,(1)十進(jìn)制形式:與數(shù)學(xué)上的整數(shù)表示相同;例如:12,-100,0(2)八進(jìn)制形式:在數(shù)碼前加數(shù)字0;例如:012=1*81+2*80=10(十進(jìn)制)(3)十六進(jìn)制形式:在數(shù)碼前加0X(數(shù)字0和字母X)。例如:0 x12=1*161+2*160=18(十進(jìn)制),舉例,在16位操作系統(tǒng)中,一般用2字節(jié)表示一個(gè)int型變量,且long型(4字節(jié))≥int型(2字節(jié))≥short型(2字節(jié))。在VC++6.0環(huán)境中,用4字節(jié)表示一個(gè)int型變量,且long型(4字節(jié))≥int型(4字節(jié))≥short型(2字節(jié))。查看變量的字節(jié)數(shù),即其長(zhǎng)度,使用函數(shù)sizeof(類型名),2、整型變量的分類:,根據(jù)數(shù)據(jù)所占的存儲(chǔ)長(zhǎng)度的不同分為:int、short、long;同樣存儲(chǔ)長(zhǎng)度的數(shù)據(jù)又分unsigned、signed;故可組合出六種類型。,3、整型變量的值域:,由機(jī)器中數(shù)據(jù)的存儲(chǔ)長(zhǎng)度決定,2、實(shí)型變量的分類及值域:關(guān)鍵字字節(jié)數(shù)取值范圍精度(位)float43.410-38~3.410387double81.710-308~1.71030815,注意,,三、實(shí)型,1、常量:(1)十進(jìn)制小數(shù)形式:由數(shù)字和小數(shù)點(diǎn)組成;例如:3.4,4.,.3。(2)指數(shù)形式:“十進(jìn)制小數(shù)”+“e(或E)”+“十進(jìn)制數(shù)整數(shù)”。例如:12.5e-6表示12.510-6。,?小數(shù)點(diǎn)不能單獨(dú)出現(xiàn);0.√.0√.??e或E的兩邊必須有數(shù),且其后面必須為整數(shù);如:6E0.2?e5?,字符形式功能\n換行\(zhòng)t橫向跳格\b退格\r回車\\反斜杠字符\’單引號(hào)字符\ddd8進(jìn)制數(shù)表示的ASCII碼對(duì)應(yīng)的字符\xhh16進(jìn)制數(shù)表示的ASCII碼對(duì)應(yīng)的字符,四、字符類型,1、常量:(1)用單引號(hào)括起來的一個(gè)字符;如:‘A’、‘1’、’?’等。注意(1)數(shù)值0、字符‘0’、字符‘\0’的區(qū)別(2)大小寫對(duì)應(yīng)字母的ASCII值相差32(’A’為65,’a’為97)(2)用單引號(hào)括起來的由反斜杠(\)引導(dǎo)的轉(zhuǎn)義字符。,4、字符串常量:是用一對(duì)雙引號(hào)括起來的字符序列。注意:每個(gè)字符串的后面都有一個(gè)‘\0’結(jié)束符。如:“SHANGHAI”,“AbcdeFGHijk”,“Howareyou”。,注意,‘a(chǎn)’與“a”的區(qū)別strlen()與sizeof()的區(qū)別,,例如:字符A的ASCII碼為:65D(十進(jìn)制)=41H(十六進(jìn)制)=101Q(八進(jìn)制)∴字符A可以表示為‘A’、’\x41’、’\101’。,2、字符型變量的分類:char和unsignedchar;,3、值域(字符型可參與數(shù)學(xué)運(yùn)算,也可看成一種一字節(jié)的整型變量)每個(gè)字符型數(shù)據(jù)在內(nèi)存中占一個(gè)字節(jié);包括ASCII字符表中的所有字符(可顯示字符和非顯示字符)。,舉例,一、常量與符號(hào)常量?常量是指在程序運(yùn)行中,其數(shù)值不能被改變的量。?常量又可分為直接常量和符號(hào)常量。,2.2常量與變量,120、0120、072;0 xFFFF、0 x1e;120L,200L;長(zhǎng)整型常量3.14、5.12E-6;a、#、\n、\101;099、12f、0 xg、48EA;E-6、6.4E+4.8;"changsha"、"+++\\?ab";\、\p、、ab;,1、直接常量:是在程序中直接引用的數(shù)據(jù)。,請(qǐng)判斷這些常量正確與否:,定義形式:#define標(biāo)識(shí)符常量數(shù)據(jù)例如:#definePI3.14159在程序預(yù)處理時(shí),凡是出現(xiàn)標(biāo)識(shí)符PI的地方都將用數(shù)據(jù)3.14159來替換。如:2*2.3*PI就等價(jià)于2*2.3*3.14159。,?變量是指以標(biāo)識(shí)符為名字,其值可以改變的量。?變量代表計(jì)算機(jī)內(nèi)存中的某一存儲(chǔ)空間,該存儲(chǔ)空間中存放的數(shù)據(jù)就是變量的值。?在同一程序塊中,變量不能被重復(fù)定義。?使用變量時(shí)必須“先定義,后使用”。,2、符號(hào)常量是用標(biāo)識(shí)符來表示一個(gè)數(shù)據(jù);在程序不能給它賦值。,二、變量,2、變量初始化在定義變量的同時(shí)給變量一個(gè)初始值。,注意,inta=5,b=3;√inta=b=c=3;?inta,b,c;a=b=c=3;√,,例如:inta,b,c;floatx,y;charc1,c2;或intc1,c2;定義變量就是在內(nèi)存中劃出一塊相應(yīng)類型的存儲(chǔ)空間存放該變量的值。,#includemain(){intx,y,z,w;/*定義x,y,z,w為整型變量*/unsignedintk;/*定義k為無符號(hào)整型變量*/x=10;y=-20;k=30;z=x+k;w=y+k;printf(“x+k=%d,y+k=%d\n”,z,w);},例2-1:,程序運(yùn)行結(jié)果為:x+k=40,y+k=10,變量根據(jù)作用域的不同可分為局部變量和全局變量,根據(jù)存儲(chǔ)方式的不同可分為靜態(tài)存儲(chǔ)變量和動(dòng)態(tài)存儲(chǔ)變量,這些我們將在后面詳細(xì)介紹。,1、以下合法的字符型常量是A\x13B\081C65D"\n"2、已知大寫字母A的ASCII碼是65,小寫字母a的ASCII碼是97。以下不能將變量c中的大寫字母轉(zhuǎn)換為對(duì)應(yīng)小寫字母的語句是Ac=(c-A)%26+aBc=c+32Cc=c-A+aDc=(A+c)%26-a‘3.以下選項(xiàng)中,合法的一組C語言數(shù)值常量是A)028B)12.C).177D)0 x8A.5e-30Xa234e1.510,000.0 xf4.5e00abc3.e54.以下關(guān)于long、int和short類型數(shù)據(jù)占用內(nèi)存大小的敘述中正確的是A)均占4個(gè)字節(jié)B)根據(jù)數(shù)據(jù)的大小來決定所占內(nèi)存的字節(jié)數(shù)C)由用戶自己定義D)由C語言編譯系統(tǒng)決定5.以下選項(xiàng)中不屬于字符常量的是A)CB)"C"C)‘\xCCD)\072,實(shí)驗(yàn)內(nèi)容,實(shí)驗(yàn)二題目2:完成從鍵盤輸入一個(gè)10以內(nèi)的數(shù)字,在屏幕上輸出這個(gè)數(shù)字的3次方。題目3:從鍵盤上輸入兩個(gè)數(shù)字,在屏幕上輸出這兩個(gè)的加減乘除的結(jié)果。,在數(shù)學(xué)里當(dāng)多個(gè)運(yùn)算符一起組成一個(gè)表達(dá)式時(shí),我們規(guī)定了優(yōu)先級(jí)(先乘除后加減)和結(jié)合規(guī)則(從左至右)。同樣,在C語言中,我們也規(guī)定了每個(gè)運(yùn)算符的結(jié)合規(guī)則及運(yùn)算符之間的優(yōu)先級(jí)。,2.3運(yùn)算符與表達(dá)式,運(yùn)算符:就是表示某種運(yùn)算功能的符號(hào)。按操作功能運(yùn)算符大致可分為:算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符、條件運(yùn)算符、逗號(hào)運(yùn)算符以及位運(yùn)算符等。,表達(dá)式:是由操作數(shù)和運(yùn)算符組成的序列。如:1+2*3-4、3>5-7、a=b%2等都是C語言中的表達(dá)式。,,下面分類介紹各種運(yùn)算符:,%(取余)(注意:取余運(yùn)算的操作數(shù)只能是整數(shù),結(jié)果的符號(hào)與被除數(shù)相同),一、算術(shù)運(yùn)算符和算術(shù)表達(dá)式,1、運(yùn)算符+(加):3+4、+3-(減):3-5、-5*(乘):3*5/(除):5/2、5.0/2(注意,此二種形式,結(jié)果不同),5%3的值為2;-5%3的值為-2;5%(-3)的值為2;-5%(-3)的值為-2;12.3%3若a%b的結(jié)果為0,則有a能被b整除,,2、算術(shù)表達(dá)式?用算術(shù)運(yùn)算符和括符將操作數(shù)連接起來的式子。?優(yōu)先級(jí):()*、/、%+、-?結(jié)合性:從左至右;?表達(dá)式的值:數(shù)值型(int、long、unsigned、float、double);,,,例如:已知:floata=2.0;intb=6,c=3;求解:a*b/c-1.5+’a’+fabs(-5)=?,,,,,,,floata=2.0;intb=6,c=3;a*b/c-1.5+’a’+fabs(-5),,,,,,,,12.0/3,5,4.0-1.5,2.5+97(int),99.5+5,104.5,思考inta=1,b=2;表達(dá)式a/b+3的結(jié)果是多少?,,等價(jià)于:j=i;i++;所以i的值為4,j的值為3,等價(jià)于:i++;j=i;所以i的值為4,j的值為4,(1)i=3;j=i++;(2)i=3;j=++i;,3、自增與自減運(yùn)算符(++、--),?++i,--i:使用之前使i的值增1(或減1);,?i++,i--:使用之后使i的值增1(或減1);,分析下面幾種情況中i與j的值:,,當(dāng)++、--不與其他運(yùn)算符混合使用時(shí),++i與i++都等價(jià)于i=i+1,--i與i--都等價(jià)于i=i-1,如:i=2;j=-i++;求執(zhí)行完這兩句后i與j的值分別是多少,?結(jié)合性:自右至左。,分析:“++”與”-“是同優(yōu)先級(jí),且都高于“=”按結(jié)合規(guī)則,等價(jià)于:j=-(i++);結(jié)果:i的值為3,j的值為-2。,再看幾個(gè)例子:如:設(shè)i=3,k=(i++)+(i++)k=i=,6,5,設(shè)a=3,b=(++a)+(++a)b=a=,10,5,題盤練習(xí),(1)例題:1-3。運(yùn)算符/及%的應(yīng)用(函數(shù)fun的功能是:將兩個(gè)兩位數(shù)的正整數(shù)a、b合并形成一個(gè)整數(shù)放在c中。合并的方式是:將a的十位數(shù)和個(gè)位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的百位和個(gè)位上。)(2)作業(yè):2-3;3-3;4-3;51-3;53-3;72-3;88-3;4-2;5-2;注意:掌握兩個(gè)數(shù)的輸入方法!,1、6種關(guān)系運(yùn)算符:=>==!=2、關(guān)系表達(dá)式:用關(guān)系運(yùn)算符將表達(dá)式連接起來的式子?優(yōu)先級(jí):(=>)>(==!=)?結(jié)合性:自左至右;?表達(dá)式的值:若為真,則結(jié)果為1;若為假,則結(jié)果為0。,3>5值為:32值為:設(shè)x=-2;-3- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 語言 基本 數(shù)據(jù)類型 表達(dá)式
鏈接地址:http://m.jqnhouse.com/p-11494900.html