版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
C語言運算符優(yōu)先級C語言運算符優(yōu)先級(一)TurboC的運算符非常豐富,主要分為三大類:算術(shù)運算符,關(guān)系運算符與邏輯運算符,按位運算符。除此之外,還有一些用于完成特殊任務(wù)的運算符。下面分別進行介紹。5.1算術(shù)運算符TuiboC的算術(shù)運算符如下:操作符作用+加,一目取正一減,一目取負*乘/除%取?!獪p1++加1一、一目和二目操作一目操作是指對一個操作數(shù)進行操作。例如:-a是對a進行一目負操作。二目操作(或多目操作)是指兩個操作數(shù)(或多個操作數(shù))進行操作。在TurboC中加、減、乘、除、取模的運算與其它高級語言相同。需要注意的是除法和取模運算。例如:15/2是15除以2商的整數(shù)部分715%2是15除以2的余數(shù)部分1對于取模運算符”%”,不能用于浮點數(shù)。另外,由于TurboC中字符型數(shù)會自動地轉(zhuǎn)換成整型數(shù),因此字符型數(shù)也可以參加二目運算。例如:niam()(charm,n;/*定義字符型變量*/m='c*;/*給m賦小寫字母,c,*/i^m+'A'-'a*;/*將c中的小寫字母變成大寫字母B后賦給n*/???)上例中m=,c'BPm=98,由于字母A和a的ASCII碼值分別為65和97。這樣可以將小寫字母變成大寫字母,反之,如果要將大寫字母變成小寫字母,則用c+'a'-'A'進行計算。二、增量運算在TurboC中有兩個很有用的運算符,在其它高級語言中通常沒有。這兩個運算符就是增1和減1運算符”++”和運算符”++”是操作數(shù)加1,而”則是操作數(shù)減1。例如:x=x+l可'寫成x++,或++xX=X-1可寫成X--,或--XX-H-(X-)與++x(--x)在上例中沒有什么區(qū)別,但x=m++和x=++m卻有很大差別。x=mi表示將m的值賦給x后,m加1。x=++m表示m先加1后,再將新值賦給X。三、賦值語句中的數(shù)據(jù)類型轉(zhuǎn)換類型轉(zhuǎn)換是指不同類型的變量混用時的類型改變。在賦值語句中,類型轉(zhuǎn)換規(guī)則是:等號右邊的值轉(zhuǎn)換為等玷左邊變量所屬的類型。例如:niam()(/*定義整型變量*/floatf,g=2.58;/*定義浮點型變量*/f=i*j;/*i與j的乘積是整型數(shù),被轉(zhuǎn)換成為浮點數(shù)賦給f*/i=g;/*g中的浮點型數(shù)轉(zhuǎn)換成為整型數(shù)賦給1*/???}由于TurboC按上述數(shù)據(jù)類型轉(zhuǎn)換規(guī)則,因此在作除法運算時應(yīng)特別注意。例如:niam()(floatf;mti=15;f^i/2;}上面程序經(jīng)運行后,f=7并不等于準(zhǔn)確值7.5。正確的程序應(yīng)該是:niam()(floatf;mti=15;f^i/2.0;)也可直接將1定義為浮點數(shù)。5.2關(guān)系運算符和邏輯運算符一、邏輯運算符邏輯運算符是指用形式邏輯原則來建立數(shù)值間關(guān)系的符號。TurboC的邏輯運算符如下:操作符作用&&邏輯與
II邏輯或邏輯非&&II二、關(guān)系運算符關(guān)系運算符是比較兩個操作數(shù)大小的符號。TurboC的關(guān)系運算符如下:操作符作用>大于>=大于等于<小于<=小于等于=等于!=不等于關(guān)系運算符和邏輯運算符的關(guān)鍵是真(tme)和假(false)的概念。TurboC中tine4以是不為0的任何值,而false則為0。使用關(guān)系運算符和邏輯運算符表達式時,若表達式為真(即true)則返回1,否則,表達式為假(即false),則返回0。例如:返回1返回1返回0返加010>(2+10)U&&0對上例中表達式!1&&0,先求!1和先求1&&0將會等于出不同的結(jié)果,那么何者優(yōu)先呢?這在TurboC中是有規(guī)定的。有關(guān)運算符的優(yōu)先級本節(jié)后而將會講到。53按位運算符TurboC和其它高級語言不同的是它完全支持按位運算符。這與匯編語言的位操作有些相似。TurboC中按位運算符有:操作符作用&位邏I位邏輯或1=運算按位或,旦進行賦值運算A位邏輯異或-位邏輯反?右移VV左移按位運算是對字節(jié)或字中的實際位進行檢測、設(shè)置或移位,它只適用于字符型和整數(shù)型變量以及它們的變體,對其它數(shù)據(jù)類型不適用。關(guān)系運算和邏輯運算表達式的結(jié)果只能是1或Oo而按位運算的結(jié)果可■以取0或1以外的值。要注意區(qū)別按位運算符和邏輯運算符的不同,例如,若x=7,則X&&8的值為真(兩個非零值相與仍為非零),而X&8的值為Oo移位運算符”>>”和”vv”是指將變量中的每一位向右或向左移動,其通常形式為:右移:變量名>>移位的位數(shù)左移:變量名〈V移位的位數(shù)經(jīng)過移位后,一端的位被”擠掉”,而另一端空出的位以0填補,所以TurboC中的移位不是循環(huán)移動的。5.4TurboC的特殊運算符一、運算符”?”運算符是一個三目運算符,其一般形式是:v表達式l>?v表達式2>:v表達式3>;”?”運算符的含義是:先求表達式1的值,如果為真,則求表達式2的值并把它作為整個表達式的值;如果表達式1的值為假,則求表達式3的值并把它作為整個表達式的值。例如:main()(intx,y;x=50;y=x>70?100:0;}本例中,y將被賦值0。如果x=80,y將被賦值100。因此,丁運算符可以代替某些if-then-else形式的語句。二、”&”和”*”運算符運算符是一個返回操作數(shù)地址的單目操作符?!?”運算符是對”&”運算符的一個補充,它返回位于這個地址內(nèi)的變量值,也是單目操作符。例如:main()(i=10;m=&i;/*將變量i的地址賦給m*/j=*m;/*地址m所指的單元的值賦給j*/}上面程序運行后,i=10,m為其對應(yīng)的內(nèi)存地址,j的值也為10o三、運算符”,”運算符用于將多個表達式串在一起,二”運算符的左邊總不返回,右邊表達式的值才是整個表達式的值。例如:niam()
intx,y;x=50;y=(x=x?5,x/5);)上面程序執(zhí)行后y值為9,因為x的初始值為50,減5后變?yōu)?5,45除5為9賦給四、sizeof運算符sizeof運算符是一個單目運算符,它返回變量或類型的字節(jié)長度。例如:sizeof(double)為8sizeoRint)為2也可以求己定義的變量,例如:floatf;mti;i=sizeof(f);貝Iji的值將為4。五、聯(lián)合操作TurboC中有一特殊的簡寫方式,它用來簡化一種賦值語句,適用于所有的雙目運算符。其一般形式為:V變量>=<變量>v操作數(shù)><表達式〉相當(dāng)于V變量〉V操作數(shù)>=v表達式〉例如:a=a+ba=a&b可寫成a=a+ba=a&b可寫成可寫成a+=ba&=ba=a/(b?c)可寫成a/=b-c5.5TuiboC運算符的優(yōu)先級TurboC規(guī)定了運算符的優(yōu)先次序即優(yōu)先級。當(dāng)一個表達式中有多個運算符參加運算時,將按下表所規(guī)定的優(yōu)先級進行運算。表中優(yōu)先級從上往下逐漸降低,同一行優(yōu)先級相同。例如:表達式10>4&&!(100<99)||3<=5的值為1表達式10>4&&!(100<99)&&3<=5的值為0TurboC運算符的優(yōu)先次序表達式I優(yōu)先級表達式()(小括號)[](數(shù)組下標(biāo))?(結(jié)構(gòu)成員)?>(指針型結(jié)構(gòu)成員)最高!(邏輯非)~(位取反)<負號)++(加1)..(減1)&(變量地址)*(指針?biāo)竷?nèi)容)type(函數(shù)說明)sizeof(長度計算)*(乘)/(除)%(取模)+(加)?(減)vv(位左移)>>(位右移)v(小于)<=(小于等于)>(大于)>=(大于等于)=(等于)!=(不等于)&(位與)八(位異或)|(位或)&&(邏輯與)||(邏輯或)?:(?表達式)=+=?=(聯(lián)合操作),(逗號運算符)I最低c語言運算符優(yōu)先級(二)(1)先(括號)內(nèi)層,后(括號)外層。解釋:有擴號時,最內(nèi)層的括號中的東西先算,再一層層向外。(2)先函數(shù),后運算。解釋:式中有函數(shù),例如sqrt(),fabsO,siii()之類,先算函數(shù)。(3)先算術(shù),后關(guān)系,再邏輯。解釋:邏輯表這式中,混有算術(shù)運算,要先算算術(shù)(加減乘除,函數(shù))運算,再算關(guān)系(大小,等不等)運算。最后算邏輯(或與非),得到真假。(4)先乘除,后加減。解釋:同算術(shù)一樣,先做乘除,后做加減。邏輯運算符“與”又叫邏輯乘,邏輯運算符“或”,又叫邏輯加,按先乘除,后加減,“與”比“或”優(yōu)先。(5)先左,后右解釋:同級運算,先做左邊的,后做右邊的。(6)搞不清,加括號。
解釋:自己寫算術(shù)表達式和邏輯表達式時,搞不清運算符優(yōu)先級,可以加括號,括號里的總是先。C語言運算符優(yōu)先級(三)優(yōu)先訣括號成員第一;全體單目第二;*&乘除余三,加減四;移位五,關(guān)系六;優(yōu)先訣括號成員第一;全體單目第二;*&乘除余三,加減四;移位五,關(guān)系六;等于(與)不等排第七;位與異或和位或;”三分天下”八九十;邏輯或跟與;十二和十一;條件高于賦值,〃
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年合作經(jīng)營協(xié)議參考范本(二篇)
- 2024年幼兒園健康教育計劃范本(二篇)
- 2024年幼兒園學(xué)前班教學(xué)計劃例文(二篇)
- 2024年土地買賣合同參考模板(五篇)
- 2024年單位會計工作計劃樣本(三篇)
- 2024年土地買賣合同參考樣本(四篇)
- 2024年員工食堂管理制度例文(二篇)
- 2024年小學(xué)安全教育制度樣本(二篇)
- 【《現(xiàn)金股利政策對上市公司企業(yè)價值的影響實證探究》11000字(論文)】
- 2024年安全總監(jiān)崗位職責(zé)范文(四篇)
- 團隊協(xié)作的五大障礙
- 婦產(chǎn)科臨床典型病例分析(完整版)資料
- 測繪中級工程師職稱答辯題庫
- 公共管理學(xué)概論完整
- 第6章開放式創(chuàng)新課件
- GB/T 4208-2017外殼防護等級(IP代碼)
- GB 4806.7-2016食品安全國家標(biāo)準(zhǔn)食品接觸用塑料材料及制品
- 2023年10月份自考答案06285交通工程經(jīng)濟分析
- 在學(xué)校董事成立大會的講話
- 《社群營銷》教學(xué)大綱
- 急性藥物中毒的急救與護理課件
評論
0/150
提交評論