《C語言程序設(shè)計(jì)》第2章3-類型轉(zhuǎn)換和運(yùn)算符_第1頁
《C語言程序設(shè)計(jì)》第2章3-類型轉(zhuǎn)換和運(yùn)算符_第2頁
《C語言程序設(shè)計(jì)》第2章3-類型轉(zhuǎn)換和運(yùn)算符_第3頁
《C語言程序設(shè)計(jì)》第2章3-類型轉(zhuǎn)換和運(yùn)算符_第4頁
《C語言程序設(shè)計(jì)》第2章3-類型轉(zhuǎn)換和運(yùn)算符_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第2章類型轉(zhuǎn)換和運(yùn)算符

不同數(shù)據(jù)類型之間的轉(zhuǎn)換運(yùn)算符doublefloatlongunsignedintchar,short低高說明:必定的轉(zhuǎn)換運(yùn)算對(duì)象類型不同時(shí)轉(zhuǎn)換例charch;

inti;floatf;doubled;ch/i+f*d-(f+i)intintdoubledoubledoubledoubledoubledouble1.隱式轉(zhuǎn)換運(yùn)算轉(zhuǎn)換規(guī)則:不同類型數(shù)據(jù)運(yùn)算時(shí)先自動(dòng)轉(zhuǎn)換成同一類型顯式轉(zhuǎn)換(強(qiáng)制轉(zhuǎn)換)一般形式:(類型名)(表達(dá)式)例(int)(x+y)

(int)x+y

(double)(3/2)

(int)3.6說明:強(qiáng)制轉(zhuǎn)換得到所需類型的中間變量,原變量類型不變例main(){floatx;inti;x=3.6;i=(int)x;printf(“x=%f,i=%d”,x,i);}結(jié)果:x=3.600000,i=3精度損失問題較高類型向較低類型轉(zhuǎn)換時(shí)可能發(fā)生賦值運(yùn)算符和表達(dá)式簡單賦值運(yùn)算符符號(hào):=格式:變量標(biāo)識(shí)符=表達(dá)式作用:將一個(gè)數(shù)據(jù)(常量或表達(dá)式)賦給一個(gè)變量復(fù)合賦值運(yùn)算符種類:+=-=*=/=%=《=》=&=^=|=含義:exp1op=exp2exp1=exp1opexp2a+=3a=a+3x*=y+8x=x*(y+8)x%=3x=x%3例a=3;c=d+2;說明:結(jié)合方向:自右向左優(yōu)先級(jí):2左側(cè)必須是變量,不能是常量或表達(dá)式賦值表達(dá)式的值與最左邊變量值相等,且可嵌套賦值轉(zhuǎn)換規(guī)則:使賦值號(hào)右邊表達(dá)式值自動(dòng)轉(zhuǎn)換成其左邊變量的類型例3=x-2*y;

a+b=3;例

floatf;

inti;i=10;f=i;則

f=10.0例inti;i=2.56;//結(jié)果i=2;例:a=b=c=5a=(b=10)/(c=2)

//表達(dá)式值為5,a,b,c值為5

//表達(dá)式值5,a=5,b=10,c=2說明:結(jié)合方向:自右向左優(yōu)先級(jí):2左側(cè)必須是變量,不能是常量或表達(dá)式賦值表達(dá)式的值與最左邊變量值相等,且可嵌套賦值轉(zhuǎn)換規(guī)則:使賦值號(hào)右邊表達(dá)式值自動(dòng)轉(zhuǎn)換成其左邊變量的類型例:a=12;a+=a-=a*a例:inta=2;a%=4-1;a+=a*=a-=a*=3;//a=-264等價(jià)于a=a+(a=a-(a*a))//a=0等價(jià)于a=a+(a=a*(a=a-(a=a*3)))//a=a%(4-1)自增、自減運(yùn)算符++--作用:使變量值加1或減1,本身是賦值運(yùn)算種類:前置++i,--i(先執(zhí)行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再執(zhí)行i+1或i-1)例j=3;k=++j;

j=3;k=j++;

j=3;printf(“%d”,++j);j=3;printf(“%d”,j++);a=3;b=5;c=(++a)*b;a=3;b=5;c=(a++)*b;<>//k=4,j=4//k=3,j=4//4//3//c=20,a=4//c=15,a=4自增、自減運(yùn)算符++--作用:使變量值加1或減1種類:前置++i,--i(先執(zhí)行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再執(zhí)行i+1或i-1)說明:++--不能用于常量和表達(dá)式,如5++,(a+b)++++--結(jié)合方向:自右向左優(yōu)先級(jí):-++-------->*/%----->+-

(14)(13)(12)例-i++-(i++)i=3;printf(“%d”,-i++);//-3

例-i++i=3;printf(“%d”,-i++);逗號(hào)運(yùn)算符和表達(dá)式

“,”是C語言中的一種特殊運(yùn)算符

用逗號(hào)將表達(dá)式連接起來的式子成為逗號(hào)表達(dá)式形式:表達(dá)式1,表達(dá)式2,……表達(dá)式n結(jié)合性:從左向右優(yōu)先級(jí):1逗號(hào)表達(dá)式的值:等于表達(dá)式n的值例a=3*5,a*4a=3*5,a*4,a+5例x=(a=3,6*3)

x=a=3,6*a例a=1;b=2;c=3;

printf(“%d,%d,%d”,a,b,c);

printf(“%d,%d,%d”,(a,b,c),b,c);//a=15,表達(dá)式值60//a=15,表達(dá)式值20//賦值表達(dá)式,表達(dá)式值18,x=18//逗號(hào)表達(dá)式,表達(dá)式值18,x=3//1,2,3//3,2,3逗號(hào)運(yùn)算符和表達(dá)式形式:表達(dá)式1,表達(dá)式2,……表達(dá)式n結(jié)合性:從左右優(yōu)先級(jí):1逗號(hào)表達(dá)式的值:等于表達(dá)式n的值例:/*ch2_6.c*/#include<stdio.h>main(){int

x,y=7;floatz

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論