




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第三章運算符和表達式
當變量被定義為某一種類型后,即被分配相應的存儲空間,此后并不能放置一旁而不用,還需要對其進行加工。何謂加工?加工就是指運算,C中最常見的運算有加、減、乘、除等。運算符就是用來表示運算的符號,如“+”
、“-”、“*”、“/”
。參加運算的數據稱為運算量,也就是運算對象。由運算符把運算對象連接起來的式子稱為表達式,如“
sum=a+b;”就是一個表達式。C語言中常見的運算符3.1算術運算符3.2賦值運算符3.3關系運算符3.4邏輯運算符3.5位運算符3.6逗號運算符3.7求字節數運算符sizeof和強制類型轉換運算符3.8復習3.1算術運算符和表達式一、常見的算術運算符+-*/%
當兩個整數相除時,商的結果取整。如5/3的結果為1,-5/3的結果為-1。當兩個除數中有一個為實數時,結果為實數,如5/2.0=2.5。
實現兩個整數的相除取余,結果的符號和被除數的符號相同。參加取余運算的兩個數必須是整數。二、自增、自減運算符++--1)自增運算符++:使變量的值增1例:i++;表示使用完i之后,使i的值增1
++i;表示先使i的值增1,然后再使用i2)自減運算符--:使變量的值減1例:i--;表示使用完i之后,使i的值減1
--i;表示先使i的值減1,然后再使用i例1:inta,b,c;a=5;b=++a;c=a++;結果:a=7;b=6;c=6;例2:inta,b,c;a=5;b=--a;c=b--;結果:a=4;b=3;c=4;三、算術運算符的優先級和結合性
思考題:表達式--x-a*b/c++的結果值是多少?(假設x的值為3,a的值為5,b的值為2,c的值為3)
運算符的優先級:運算符的優先次序運算符的結合性:當優先級相同時,是自左至右或是自右至左計算(--x)-a*b/c++-1--x-a*b/c++++、--、+(取正)、-(取負)*、/、%+、-自右至左自左至右自左至右number=24;3.2賦值運算符和表達式賦值運算符x+5;x*y;
注意:
當賦值運算符右邊的常量或表達式的類型和左邊變量的類型不一致時,先將右邊表達式的類型轉換為和左邊相同的類型,然后再賦值。例:
floatx;
X=3;1、普通的賦值運算符2、復合的賦值運算符x=x+y;x+=y;復合的賦值加運算符(1)+=(2)-=(3)*=(4)/=
(5)%=常見的復合的賦值運算運算符例如:x的值為6,
則x+=4的結果是什么?3、賦值運算符的優先級和結合性算術運算符賦值運算符結合性為自右而左例:已知a=5,b=8,n未知。求下列各表達式的值。1、n=b+8;2、n+=a*=2;3、n=a=b;3.3關系運算符和表達式
關系運算又稱比較運算,就是對兩個運算量進行比較,判斷其比較的結果是否符合給定的條件。如果符合,則結果為“真”,用1表示;如果不符合,則結果為“假”,用0表示。1、常見的關系運算符<(小于)、>(大于)、<=(小于或等于)、>=(大于或等于)、==(等于)、!=(不等于)2、關系運算符的優先級和結合性算術運算符關系運算符賦值運算符自左至右自左至右自右至左例:number1=25;判斷下列表達式的值。
(1)number1>=25;(2)number1==25;
(3)number1%5==0
(4)number1!=24;(5)number1/3<23;
(6)n=number1>4;(7)number1>24>2;(8)number1+1==26;案例已知i=3,j=4,a=5,b=6,m為未知。求下列各式的值。(1)++i+j---a(2)a+b-j*a/i(3)m=-j++
3.4邏輯運算符和表達式思考題:如何表示整數x既可以被5整除又可以被7
整除.x%5==0x%7==0&&()()邏輯運算符”邏輯與”邏輯或(||):
一般形式a||b,a和b中任一為真,結果為真.邏輯與(&&):一般形式:a&&b;
只有當a和b都為真時,結果才為真.邏輯非(!):
一般形式!a,a為真,!a就為假;a為假,!a為真.例:判斷下列各邏輯表達式的值假設a=5,b=6,c=3,d=10;(a>b)&&(c>d);(a<b)||(c>d)!a!a&&b3||101001邏輯運算符的優先級和結合性
高!(邏輯非)算術運算符關系運算符
&&和||
低賦值運算符自左至右自右至左X=!a+2||x>y+2&&a==3,已知a=3,x=5,y=4,求x的值。實訓1、若a=5,b=4,x=0,判斷下面兩個表達式的結果及x的值:
(1)0&&x=a>b(2)a>b||++x2、要判別某一年是否閏年。閏年的條件是符合下面兩個條件的其中一個就可以了:
(1)能被4整除,但不能被100整除;
(2)能被4整除,又能被400整除;(year%4==0&&year%100!=0)||(year%400==0)3.5位運算符和表達式位運算:就是對二進制位進行的運算.C中常用的位運算符:
&(按位與)|(按位或)^(按位異或)
~(取反)
>>(右移)
<<(左移)“按位與”運算符‘&’
“按位與”又稱“按位乘”,即二進位相乘。“按位與”的規則為:
0&0=0,0&1=0,1&0=0,1&1=1
例:
求-1和5按位與的結果.-1的補碼:1111111111111111
5的補碼:00000000000001010000000000000101按位與的作用:使一個存儲單元清零3.6逗號運算符和表達式,逗號運算符作用在于將若干個表達式連接起來。逗號表達式的一般形式為:表達式1,表達式2,表達式3,……,表達式n整個逗號表達式的值就是最后的表達式n的值實訓已知a=3,求下面逗號表達式的值。(1)++a,a+5,a+6(2)a=2*3,b=a-2,b-a,a+=23.7sizeof運算符和強制類型轉換運算符一、求字節數運算符sizeof()功能:求數據在存儲器中所占的字節數例:sizeof(longdouble);sizeof(x+y);sizeof(123456);二、強制類型轉換運算符思考:假設現在需要編寫一個程序,判斷一個實數x的整數部分是否為偶數,要求x從鍵盤輸入。main(){floatx;scanf(“%f”,&x);if(
)printf(“Yes!”);elseprintf(“No!”);強制類型轉換運算符的一般使用形式:(類型名)(表達式);希望被轉換的對象希望轉換的類型已知x=2.5,y=3.7,求(int)x+y和(int)(x+y)的值案例1、求下列算術表達式的值(1)a+b/2%3*(int)c/d*3
設a=3.5,b=11,c=5.7,d=2(2)(int)x/y+(float)y%x
設x=8.3,y=3(3)!(x+y)+z&&x*z-1x的值為2,y的值為3,z的值為1
運算符小結優先級運算符結合性1!
~
++--
+(取正)
-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政組織理論的數字化轉型進程試題及答案
- 數據流量異常監測技術試題及答案
- 畜牧養殖廢棄物資源化利用模式創新與推廣機制實施效果評估考核試卷
- 三級計算機嵌入式備考注意事項試題及答案
- 行政組織理論中的利益平衡試題及答案
- 數據庫查詢方式的選擇試題及答案
- 網絡技術測試與驗證的方法論試題及答案
- 計算機三級嵌入式系統實踐能力考核試題及答案
- 小區環衛工人管理制度
- 公司對外付款管理制度
- 張哲華鑫仔小品《警察和我》臺詞劇本手稿
- 中等職業學校英語課程標準(2020年版)(word精排版)
- 畢業生就業推薦表word模板
- 南京市特種設備安全監督檢驗研究院公開招考5名編外工作人員模擬檢測試卷【共1000題含答案解析】
- 2023年八年級生物學業水平考試復習試卷
- YY/T 1685-2020氣動脈沖振蕩排痰設備
- NY 5051-2001無公害食品淡水養殖用水水質
- GB/T 70.1-2008內六角圓柱頭螺釘
- GB/T 3098.2-2015緊固件機械性能螺母
- FZ/T 93074-2011熔噴法非織造布生產聯合機
- 課件:第六章 社會工作項目評估(《社會工作項目策劃與評估》課程)
評論
0/150
提交評論