第4章-運(yùn)算符和表達(dá)式_第1頁
第4章-運(yùn)算符和表達(dá)式_第2頁
第4章-運(yùn)算符和表達(dá)式_第3頁
第4章-運(yùn)算符和表達(dá)式_第4頁
第4章-運(yùn)算符和表達(dá)式_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第4章運(yùn)算符和表達(dá)式第4章_運(yùn)算符和表達(dá)式ppt課件(全)第4章運(yùn)算符和表達(dá)式4.1算術(shù)運(yùn)算符和算術(shù)表達(dá)式4.2自增、自減運(yùn)算4.3位運(yùn)算4.4賦值運(yùn)算4.5關(guān)系表達(dá)式與邏輯表達(dá)式4.6條件表達(dá)式與逗號表達(dá)式第4章_運(yùn)算符和表達(dá)式ppt課件(全)表達(dá)式:用運(yùn)算符將要運(yùn)算的對象連接起來的式子運(yùn)算符的優(yōu)先級:如2+5*4運(yùn)算符的結(jié)合性:如3.0*5/2書寫表達(dá)式規(guī)則:如可以寫作1.0/2*(a*x+(b+x)/(a+x))第4章_運(yùn)算符和表達(dá)式ppt課件(全)

4.1算術(shù)運(yùn)算符和算術(shù)表達(dá)式

運(yùn)算符表達(dá)式+3+5、+3-5-2、-3*3*5/3/2(結(jié)果為1)3/2.0,3.0/2,3.0/2.0(結(jié)果為1.5)%7%4(結(jié)果為3)(求余)-9%5(結(jié)果為-4)9%(-5)(結(jié)果為4)2.0%3(錯(cuò)誤,2.0不是整數(shù))1.單目運(yùn)算符2.雙目運(yùn)算符第4章_運(yùn)算符和表達(dá)式ppt課件(全)

字符以其ASCII碼參加運(yùn)算:‘a(chǎn)’+1為98‘b’-’a’為1‘8’-’0’為8例:設(shè)a為兩位整數(shù),求其各位數(shù)字之和。解:a/10+a%10(如a=24,則結(jié)果為6)例:求一個(gè)整數(shù)b的十位上的數(shù)字。解:(b%100)/10(如b=4321,則結(jié)果為2)第4章_運(yùn)算符和表達(dá)式ppt課件(全)

3.算術(shù)運(yùn)算中的類型轉(zhuǎn)換(1)自動(dòng)轉(zhuǎn)換規(guī)則如下doublefloatlongunsignedintchar,short低高例如:2+’a’+1.52+97+1.599+1.599.0+1.5100.5第4章_運(yùn)算符和表達(dá)式ppt課件(全)(2)強(qiáng)制類型轉(zhuǎn)換一般形式為:(類型名)表達(dá)式例如:(double)a(將a轉(zhuǎn)換成double類型)(int)(x+y)(將x+y的值轉(zhuǎn)換成整型)(float)(5%3)(將5%3的值轉(zhuǎn)換成float型)(int)3.14%2(即3%2)第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.2自增、自減運(yùn)算

1.運(yùn)算符:++、--2.使用格式:

++ii的值先加1,后使用如i=3;j=++i;j:4,i:4i++i的值先使用,后加1如i=3;j=i++;j:3,i:4--ii的值先減1,后使用i--i的值先使用,后減1第4章_運(yùn)算符和表達(dá)式ppt課件(全)

又如:i=3;printf(“%d”,++i);i=3;printf(“%d”,i++);3.優(yōu)先級與結(jié)合性++、--的優(yōu)先級與單目運(yùn)算符(+、-)相同,比雙目運(yùn)算符(*、/、%、+、-)高++、--具有右結(jié)合性例如:-a++相當(dāng)于:-(a++)第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.使用自增、自減運(yùn)算符的注意事項(xiàng)略第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.3位運(yùn)算

1.位運(yùn)算符的種類C語言共有六種位運(yùn)算符:&按位與運(yùn)算符|按位或運(yùn)算符^按位異或運(yùn)算符<<二進(jìn)制左移運(yùn)算符>>二進(jìn)制右移運(yùn)算符~按位取反運(yùn)算符第4章_運(yùn)算符和表達(dá)式ppt課件(全)2.按位與運(yùn)算(&)當(dāng)對應(yīng)位均為1時(shí),結(jié)果為1;否則為0。例如,12&10的運(yùn)算如下:12:00001100&10:00001010_________________結(jié)果:00001000又如,只保留a的第5位,其余位置0:a:11010010&020:00010000________________________a&020:00010000第4章_運(yùn)算符和表達(dá)式ppt課件(全)3.按位或運(yùn)算(|)對應(yīng)位均為0時(shí),結(jié)果為0;否則結(jié)果為1。例如:0123:01010011|014:00001100___________________0123|014:01011111例如:若想使a中的高四位(左端四位)不變,低四位(右端四位)置1,可用:a=a|017。第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.按位異或運(yùn)算(^)當(dāng)對應(yīng)位相同時(shí),結(jié)果為0;否則為1。例如:00110011^11000011_____________11110000又如,使a的高四位不變;低四位取反:a:01101010^017:00001111___________________a^017:01100101第4章_運(yùn)算符和表達(dá)式ppt課件(全)5.按位取反運(yùn)算(~)使每一位上的0變1;1變0。

例如;~0115是將八進(jìn)制數(shù)115按位求反。即:~01001101_______________結(jié)果:10110010第4章_運(yùn)算符和表達(dá)式ppt課件(全)

6.左移運(yùn)算(<<)例如:chara=6,b;b=a<<2;用二進(jìn)制數(shù)如下:a:00000110(a=6)b=a<<2:00011000(b=24)第4章_運(yùn)算符和表達(dá)式ppt課件(全)

7.右移運(yùn)算(>>)

inta=-071400,b;b=a>>2;

符號位↓a的二進(jìn)制原碼表示:a的二進(jìn)制反碼表示:a的二進(jìn)制補(bǔ)碼表示:00(機(jī)內(nèi)存儲形式)b=a>>2:11b的二進(jìn)制原碼表示:b的八進(jìn)制數(shù):-016300第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.4賦值運(yùn)算1.賦值表達(dá)式

變量名=表達(dá)式如a=3b=2*a+102.賦值語句

變量名=表達(dá)式;如a=3;c=b=a+3;右結(jié)合第4章_運(yùn)算符和表達(dá)式ppt課件(全)3.賦值時(shí)數(shù)據(jù)類型的轉(zhuǎn)換在賦值語句

變量名=表達(dá)式;中,當(dāng)左右類型不同時(shí),系統(tǒng)自動(dòng)轉(zhuǎn)換,具體規(guī)則見表4.1。第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.復(fù)合賦值運(yùn)算+=、-=、*=、/=、%=、<<=、>>=、&=、^=、|=例如:a+=3等價(jià)于a=a+3x*=y+8等價(jià)于x=x*(y+8)x/=2*y-10等價(jià)于x=x/(2*y-10)a&=b等價(jià)于a=a&b第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.5關(guān)系表達(dá)式與邏輯表達(dá)式關(guān)系運(yùn)算符1.六種關(guān)系運(yùn)算符>(大于)>=(大于等于)<(小于)<=(小于或等于)==(等于)!=(不等于)注意:兩字符間不可以加空格,如:<=就不能寫成:<=。第4章_運(yùn)算符和表達(dá)式ppt課件(全)2.運(yùn)算優(yōu)先級與結(jié)合性(1)“>、>=、<、<=”優(yōu)先級相同,“==、!=”優(yōu)先級相同,且前四種優(yōu)先級高于后兩種。(2)比算術(shù)運(yùn)算符的優(yōu)先級低、比賦值運(yùn)算符的優(yōu)先級高(參見附錄C)。(3)結(jié)合性為“自左向右”第4章_運(yùn)算符和表達(dá)式ppt課件(全)3.關(guān)系表達(dá)式

例如:a>b,a+b>b+c,(a=3)>(b=5),‘a(chǎn)’<’b’,(a>b)>(b<)關(guān)系表達(dá)式成立,其值為1;關(guān)系表達(dá)式不成立,其值為0。第4章_運(yùn)算符和表達(dá)式ppt課件(全)【例4.1】分析下面程序的運(yùn)行結(jié)果。#include<stdio.h>voidmain(){floatx,y=0.6;y=y*11;x=6+0.6;if(x==y)printf("OK,x==y");elseprintf("NO,x!=y");}程序運(yùn)行結(jié)果:NO,x!=y#include<math.h>fabs(x-y)<1e-5第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.5.2邏輯運(yùn)算符1.三種邏輯運(yùn)算符

!(邏輯非)&&(邏輯與)||(邏輯或)運(yùn)算結(jié)果:用1表示“真”,用0表示“假”,例如!aa&&ba||b第4章_運(yùn)算符和表達(dá)式ppt課件(全)2.運(yùn)算優(yōu)先級與結(jié)合性(1)優(yōu)先級從高到低:!、&&、||,(2)“!”的結(jié)合性是“從右到左”?!?&”和“||”的結(jié)合性是“從左到右”。例如:判別“a小于4且|b|>3”的邏輯表達(dá)式可寫為a<4&&(b>3||b<-3),若寫成a<4&&b>3||b<-3,則是錯(cuò)誤的。第4章_運(yùn)算符和表達(dá)式ppt課件(全)

3.邏輯表達(dá)式在邏輯運(yùn)算中,將非0值視為真、將0視為假。

第4章_運(yùn)算符和表達(dá)式ppt課件(全)【例4.2】根據(jù)下列條件,寫出C的邏輯表達(dá)式。(1)條件“|x|<10”。

邏輯表達(dá)式為-10<x&&x<10。

注意,不能寫為-10<x<10。(2)條件“|x|是一個(gè)具有兩位數(shù)的整數(shù)”。

邏輯表達(dá)式為x>=10&&x<=99||x>=-99&&x<=-10。(3)條件“y年是閏年”。y是閏年的條件為符合下面二者之一:①能被4整除,但不能被100整除。②能被400整除。邏輯表達(dá)式為

y%4==0&&y%100!=0||y%400==0。(4)條件“長度分別為a、b、c的三條線段能夠組成三角形”。

邏輯表達(dá)式為a+b>c&&a+c>b&&b+c>a。第4章_運(yùn)算符和表達(dá)式ppt課件(全)4.6條件表達(dá)式與逗號表達(dá)式4.6.1條件表達(dá)式1.條件運(yùn)算符?:

2.條件表達(dá)式表達(dá)式1?表達(dá)式2:表達(dá)式3例如x<0?-x:x第4章_運(yùn)算符和表達(dá)式ppt課件(全)【例4.3】用條件表達(dá)式求解下列問題。(1)求兩個(gè)變量a、b的最大值。解s=(a>b)?a:b;(2)求三個(gè)變量a、b、c的最大值。解s=(s=a>b?a:b)>c?s:c;(3)對字符變量ch,若為小寫字母,則改為大寫字母,其余字符不變。解ch=(ch>=’a’&&ch<=’z’)?(ch+’A’-‘a(chǎn)’):ch;(

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論