C程序設(shè)計(jì)第二章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式公開課一等獎(jiǎng)省優(yōu)質(zhì)課大賽獲獎(jiǎng)?wù)n件_第1頁(yè)
C程序設(shè)計(jì)第二章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式公開課一等獎(jiǎng)省優(yōu)質(zhì)課大賽獲獎(jiǎng)?wù)n件_第2頁(yè)
C程序設(shè)計(jì)第二章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式公開課一等獎(jiǎng)省優(yōu)質(zhì)課大賽獲獎(jiǎng)?wù)n件_第3頁(yè)
C程序設(shè)計(jì)第二章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式公開課一等獎(jiǎng)省優(yōu)質(zhì)課大賽獲獎(jiǎng)?wù)n件_第4頁(yè)
C程序設(shè)計(jì)第二章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式公開課一等獎(jiǎng)省優(yōu)質(zhì)課大賽獲獎(jiǎng)?wù)n件_第5頁(yè)
已閱讀5頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

C程序設(shè)計(jì)/10/10第二章數(shù)據(jù)類型、運(yùn)算符與表示式C語(yǔ)言數(shù)據(jù)類型常量與變量變量賦初值運(yùn)算符和表示式目標(biāo)、要求:掌握C數(shù)據(jù)類型、運(yùn)算符尤其是賦值運(yùn)算符;掌握標(biāo)識(shí)符命名規(guī)則。/10/103.1C語(yǔ)言數(shù)據(jù)類型C數(shù)據(jù)類型數(shù)組類型結(jié)構(gòu)體類型共用體類型枚舉類型整型字符型實(shí)型(浮點(diǎn)型)單精度型雙精度型基本類型指針類型結(jié)構(gòu)類型本章討論基本類型數(shù)據(jù)/10/103.2常量與變量常量:其值不隨程序運(yùn)行而改變量變量:其值可隨程序運(yùn)行而改變量/10/103.2.1常量常量字面常量(或直接常量):如3,4,6.5,’a’,’b’符號(hào)常量:以標(biāo)識(shí)符代表常量符號(hào),普通用大寫

#definePI3.1415926不論是字面常量還是符號(hào)常量,只要是常量,其值都不能被改變!/10/10#definePI3.14main(){……PI=3.15;……}#definePI3.1415926main(){floatr=3,s,v;s=4*PI*r*r;v=4/3*PI*r*r*r;……}/10/103.2.2變量main(){inta,b;/*定義變量a,b為整型*/a=123;b=456;/*賦初值*/……}變量代表內(nèi)存中一個(gè)存放單元,用來存放數(shù)據(jù)。ab123456/10/10注意:變量名和變量值區(qū)分對(duì)應(yīng)內(nèi)存地址內(nèi)存地址中存放內(nèi)容

變量名又稱為標(biāo)識(shí)符,只能由字母、數(shù)字和下劃線3種字符組成,且第一個(gè)字符必須是字母或下劃線。123,def,sum,_y,y&u/10/1012.以下正確C語(yǔ)言標(biāo)識(shí)符是__。(-1)A)%xB)a+bC)a123D)test!11.__是正當(dāng)用戶自定義標(biāo)識(shí)符。(-12)A)ah-spksB)doubleC)<ctrl>D)_myapple課堂練習(xí)11.以下正當(dāng)用戶標(biāo)識(shí)符是__。(-1)A)1stB)breakC)TwoWordsD)B757/10/10(1)C語(yǔ)言中,大、小寫字母被認(rèn)為是兩個(gè)不一樣字符,變量名普通用小寫。(2)C語(yǔ)言中,標(biāo)識(shí)符長(zhǎng)度無統(tǒng)一要求,隨系統(tǒng)而不一樣。在寫程序時(shí)盡可能不要超出8個(gè)字符。(3)標(biāo)識(shí)符選取標(biāo)準(zhǔn):“見名知意”,這也是結(jié)構(gòu)化程序特征之一。(4)C語(yǔ)言中,變量必須“先定義后引用”,方便在編譯時(shí)發(fā)覺錯(cuò)誤。注意事項(xiàng)/10/103.3整形數(shù)據(jù)無符號(hào)整型:unsignedint無符號(hào)短整型:unsignedshort無符號(hào)長(zhǎng)整型:unsignedlong基本型:int表示,-32768~+32767短整型:shortint或short表示,同int。長(zhǎng)整型:longint或long表示,

-2147483648~+2147483647無符號(hào)型10進(jìn)制8進(jìn)制:0開頭數(shù)字序列16進(jìn)制:0x開頭數(shù)字序列整型常量整型變量整型數(shù)據(jù)/10/10整型變量定義變量定義普通放在一個(gè)函數(shù)開頭部分。[例3.2]:整型變量定義及不一樣類型整型數(shù)據(jù)間運(yùn)算main(){inta,b,c,d;unsignedu;a=12;b=-24;u=10;c=a+u;d=b+u;printf("a+u=%d,b+u=%d\n",c,d);}/10/10[例3.3]:整型數(shù)據(jù)溢出

整型數(shù)后加l或L表示長(zhǎng)整型,其存放空間擴(kuò)大為4個(gè)字節(jié)。整數(shù)后面加u,按無符號(hào)數(shù)方式存放,如-12345u,則先將其轉(zhuǎn)換成補(bǔ)碼53191,然后按無符號(hào)數(shù)存放。main(){inta,b;a=32767;b=a+1;printf("%d,%d\n",a,b);}/10/103.4浮點(diǎn)型(實(shí)型)數(shù)據(jù)十進(jìn)制形式:由數(shù)字和小數(shù)點(diǎn)組成指數(shù)形式:123e3或123E3代表123*103E/e前必須有數(shù)字E/e后必須為整數(shù)單精度(float型):普通占4個(gè)字節(jié)(32位),6~7位有效數(shù)字雙精度(double型):普通占8個(gè)字節(jié),15或16位有效數(shù)字實(shí)型常量實(shí)型變量實(shí)型數(shù)據(jù)長(zhǎng)雙精度(longdouble型):普通占16個(gè)字節(jié),18或19位有效數(shù)字/10/10

計(jì)算時(shí),C編譯系統(tǒng)自動(dòng)將實(shí)型常量按雙精度處理,然后依據(jù)變量類型截取對(duì)應(yīng)有效位數(shù)。這么可提升計(jì)算精度,但會(huì)降低運(yùn)算速度。

若要按float型運(yùn)算,在數(shù)字后加f或F即可,如1.65f。實(shí)型數(shù)據(jù)舍入誤差:因有效數(shù)字位數(shù)有限而產(chǎn)生。[例3.4]:實(shí)型數(shù)據(jù)舍入誤差main(){floata,b;a=123456.789e5;b=a+20;printf(“a=%f\nb=%f\n”,a,b);}運(yùn)行結(jié)果:a=12345678848.000000b=12345678848.000000/10/103.5字符型數(shù)據(jù)字符常量-單引號(hào)括起來單個(gè)字符,如’a’,’x’等轉(zhuǎn)義字符-P48頁(yè)表3-3字符變量(char)-只能存放一個(gè)字符,在內(nèi)存中占一個(gè)字節(jié)-字符在內(nèi)存中以ASCII代碼形式存放-字符變量和整型變量能夠通用/10/103.5.4字符串常量用雙引號(hào)括起一個(gè)字符序列比如:"ABC"、"123"、"a"、"\n\t"

“Goodmorning”等字符串常量長(zhǎng)度:所包含字符個(gè)數(shù)字符串常量存放方式:

\nGoodmorning\0a\0所占存放單元數(shù):串長(zhǎng)度+1比如:字符串結(jié)束標(biāo)識(shí)/10/1019.設(shè)有說明語(yǔ)句:chara=‘\123’;則變量a__。(-12)A)包含一個(gè)字符B)包含兩個(gè)字符C)包含三個(gè)字符D)說明不正當(dāng)13.以下屬于正當(dāng)長(zhǎng)整型常量是__。(-1)A)5876B)0LC)2E10D)”5876”課堂練習(xí)/10/103.6變量賦初值main(){inta,b;/*定義變量a,b為整型*/a=123;b=456;/*賦初值*/……}C語(yǔ)言中,變量賦值由賦值運(yùn)算符=來完成,方法為:

變量=表示式

賦值運(yùn)算符結(jié)合方向:

自右至左

a=b=c=5+3;a+b=5/10/103.6變量賦初值(續(xù))C語(yǔ)言允許在定義變量同時(shí)對(duì)變量初始化。如:inta=3;inta;a=3;等價(jià)inta,b,c=3;inta,b,c;c=3;等價(jià)/10/103.6變量賦初值(續(xù))注意:對(duì)幾個(gè)變量賦同一個(gè)初值方法為:

inta=b=c=5;inta=5,b=5,c=5;main(){inta=b=c=5;printf(“a=%d,b=%d,c=%c”,a,b,c);}main(){inta,b,c;a=b=c=5;printf(“a=%d,b=%d,c=%c”,a,b,c);}/10/103.7各類數(shù)值型數(shù)據(jù)間混合運(yùn)算整型、浮點(diǎn)型和字符型數(shù)據(jù)能夠混合運(yùn)算。

12+’a’+1.7*’b’混合運(yùn)算時(shí)需要進(jìn)行類型轉(zhuǎn)換,這些轉(zhuǎn)換是由系統(tǒng)自動(dòng)進(jìn)行。類型轉(zhuǎn)換規(guī)則以下:doublefloatlongunsignedintChar,short低高/10/103.8.1C語(yǔ)言運(yùn)算符類型種類算術(shù)運(yùn)算符+-*/%賦值運(yùn)算符=及其擴(kuò)展賦值運(yùn)算符關(guān)系運(yùn)算符><==>=<=!=邏輯運(yùn)算符!&&||位運(yùn)算符<<>>~|^&條件運(yùn)算符?:逗號(hào)運(yùn)算符,其它運(yùn)算符*、&sizeof.->[]等/10/103.8算術(shù)運(yùn)算符和算術(shù)表示式1.基本算術(shù)運(yùn)算符:+加法運(yùn)算符,或正值運(yùn)算符,如4+7,+1-減法運(yùn)算符,或負(fù)值運(yùn)算符,如5-2,-4

*乘法運(yùn)算符,如3*4

/

除法運(yùn)算符,如5/4%

模運(yùn)算符,或稱求余運(yùn)算符,%兩側(cè)均應(yīng)為整型數(shù)據(jù),如7/4/10/10說明沒有乘方運(yùn)算符,要計(jì)算a3要寫作a*a*a連乘,或用標(biāo)準(zhǔn)庫(kù)函數(shù)pow(a,3)“/”運(yùn)算對(duì)象可為各種類型數(shù)據(jù),不過當(dāng)進(jìn)行兩個(gè)整型數(shù)據(jù)相除時(shí),運(yùn)算結(jié)果也是整型數(shù)據(jù)“%”要求運(yùn)算對(duì)象必須是整型數(shù)據(jù),功效是求兩數(shù)相除余數(shù),余數(shù)符號(hào)與被除數(shù)符號(hào)相同。9/4=29.0/4=2.259%4=1-9%4=-1/10/102.算術(shù)表示式和運(yùn)算符優(yōu)先級(jí)與結(jié)合性由運(yùn)算符將運(yùn)算對(duì)象連接成式子,稱為算術(shù)表示式。運(yùn)算符優(yōu)先級(jí)能夠參考附錄C。優(yōu)先級(jí)相同運(yùn)算符,符合“左結(jié)合性”。a+b-ca=123;()+-++--

*/%

+-

同級(jí)同級(jí)同級(jí)

單目雙目

低/10/103.強(qiáng)制類型轉(zhuǎn)換運(yùn)算符普通形式:(類型名)(表示式)

或(類型名)單個(gè)變量或常量(int)a(int)2.3(float)(a+b)(float)a+b說明:在強(qiáng)制類型轉(zhuǎn)換時(shí),得到一個(gè)所需類型中間變量,原來變量類型未發(fā)生改變。main(){floatx;inti;i=(int)x;Printf(“x=%f,i=%d\n”,x,i);}/10/104.自增、自減運(yùn)算符++--是單目運(yùn)算符有前綴和后綴兩種形式前綴形式:先自增(自減)再引用;后綴形式:先引用再自增(自減);功效:前綴形式++a等價(jià)于a=a+1

--a

等價(jià)于a=a–

1

后綴形式a++等價(jià)于a=a+1a--等價(jià)于a=a–1使變量值增1或減1/10/104.自增、自減運(yùn)算符(舉例)當(dāng)a=5時(shí)⑴

++a

表示式值為6,且a=6

a++

表示式值為5,且a=6⑶

b=++a

等價(jià)于a=a+1;b=a

表示式值為6,且

a=6,

b=6⑷

b=a++

等價(jià)于b=a;a=a+1

表示式值為5,且

a=6,

b=5

/10/104.自增、自減運(yùn)算符(說明)++

和--

運(yùn)算對(duì)象只能是變量(或運(yùn)算結(jié)果是變量表示式),不能是常量(或運(yùn)算結(jié)果是數(shù)值表示式)。比如:5++、(a+2)++

不正當(dāng)。含有右結(jié)合性,結(jié)合方向?yàn)閺挠业阶?。比如:–a++等價(jià)于-(a++)假如有多個(gè)運(yùn)算符連續(xù)出現(xiàn)時(shí),C系統(tǒng)盡可能多從左到右將字符組合成一個(gè)運(yùn)算符比如:i+++j

等價(jià)于(i++)+j

-i+++-j

等價(jià)于-(i++)+(-j)

/10/103.9賦值運(yùn)算符和賦值表示式“=”為賦值運(yùn)算符,如a=3;賦值表示式普通形式為:

<變量><賦值運(yùn)算符><表示式>將表示式值存入變量對(duì)應(yīng)內(nèi)存單元中

m=12b=a-2x=(x=5)a3/10/103.9賦值運(yùn)算符和賦值表示式(說明)賦值號(hào)左邊必須是變量,右邊能夠是C語(yǔ)言任意正當(dāng)表示式比如:n=t+2<s正當(dāng)

a+b=15不正當(dāng)賦值運(yùn)算符僅優(yōu)先于“,”

,且含有右結(jié)合性比如:a=b=b*c>10等價(jià)于:a=(b=((b*c)>10))賦值號(hào)與數(shù)學(xué)中等號(hào)含義不一樣比如:數(shù)學(xué)中a=b等價(jià)于b=aC語(yǔ)言中a=b不等價(jià)于b=a/10/103.9賦值運(yùn)算符和賦值表示式(續(xù))復(fù)合運(yùn)算符:在賦值運(yùn)算符前加上其它運(yùn)算符組成。復(fù)合運(yùn)算符目標(biāo):簡(jiǎn)化程序和提升編譯效率。復(fù)合賦值運(yùn)算符(右結(jié)合)

+=-=*=/=%=&=|=^=>>=<<=a+=3a=a+3等價(jià)x%=y+3x=x%(y+3)等價(jià)/10/103.10逗號(hào)運(yùn)算符和逗號(hào)表示式逗號(hào)運(yùn)算符:,逗號(hào)表示式:用逗號(hào)運(yùn)算符連接表示式。普通形式:表示式1,表示式2,…,表示式n

逗號(hào)表示式值為表示式n值。逗號(hào)表示式優(yōu)先級(jí)是最低。如:

inta=3;a=3*5,a*4a=?/10/10x=(a=3,6*a)賦值表示式,x=18x=a=3,6*a逗號(hào)表示式,?并不是任何地方出現(xiàn)逗號(hào)都是作為逗號(hào)運(yùn)算符,如:printf(“%d,%d,%d”,a,b,c);“a,b,c”為函數(shù)3個(gè)參數(shù),逗號(hào)為參數(shù)間分隔符。

printf(“%d,%d,%d”,(a,b,c),b,c);“(a,b,c)”為逗號(hào)表示式,其值等于c值。/10/10課堂練習(xí)13.設(shè)整型變量a值為2,以下表示式值為1是__。(-1)A)a%3B)a/3C)--aD)a++14.設(shè)變量a、b、c已定義并賦值,則以下表示式中符合C語(yǔ)言語(yǔ)法規(guī)則是__。(-1)A)a=5++B)a=b=c++C)a=%2D)b=a+1=216.以下式中,最終運(yùn)算結(jié)果數(shù)據(jù)類型不是單精度表示式是__。A)(int)(3+3.0)B)1e-3C)(float)(3)D)(int)3.0+3.017.字符串”ab\x41\\34cd\102y”長(zhǎng)度是__。(-1)A)10B)12C)14D)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論