程序設計基礎(chǔ)03—運算符與表達式.ppt_第1頁
程序設計基礎(chǔ)03—運算符與表達式.ppt_第2頁
程序設計基礎(chǔ)03—運算符與表達式.ppt_第3頁
程序設計基礎(chǔ)03—運算符與表達式.ppt_第4頁
程序設計基礎(chǔ)03—運算符與表達式.ppt_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C/C+語言程序設計案例教程,呂永國 / Benny QQ:1205094620,本節(jié)課的內(nèi)容,C語言的運算符 算術(shù)運算符與算術(shù)表達式 賦值運算符與賦值表達式 關(guān)系運算符與關(guān)系表達式 邏輯運算符與邏輯表達式,應知與應會 掌握基本運算符(operator)的意義 掌握四種表達式(expression)的寫法 掌握表達式的值及其意義 本章內(nèi)容是學習以后各個章節(jié)的基礎(chǔ) 難點 表達式的值 關(guān)系運算和邏輯運算, 1.C語言的運算符,運算符(優(yōu)先級從高到低) 結(jié)合方式 () - . 由左向右 ! + - + - * & (類型) sizeof 由右向左 * / % 由左向右 + - 由左向右 由左向右 = 由左向右 = != 由左向右 & 由左向右 由左向右 | 由左向右 | 由左向右 ? : 由右向左 = += -= *= /= &= = |= = 由右向左 , 由左向右, 2.運算符優(yōu)先級, 2.運算符優(yōu)先級,企業(yè)編程規(guī)范:由于各種運算符的優(yōu)先級比較繁瑣,建議在編程時多用小括號來明確運算的先后順序,算術(shù)運算符和算術(shù)表達式,1、基本的算術(shù)運算符 + - * / % 兩個整數(shù)相除的結(jié)果是整數(shù),直接舍去小數(shù)部分,如5/3的結(jié)果是1。但是如果除數(shù)或者被除數(shù)中有一個負數(shù),則舍入的方向不固定。例如:-5/3在有的系統(tǒng)中得到-1,有的系統(tǒng)中得到-2。多數(shù)C編譯系統(tǒng)采取“向零去整”的方法,即:5/3=1,-5/3=-1 如果參加計算的數(shù)中有一個是實數(shù)或者double型,則結(jié)果是double型,因為所有實數(shù)都按照double型進行計算。,9,例子: int markTotal = 80 + 90; int myMark = 95 2; int bill = 15*3 + 90 20; 5 % 2 = 1; -5 % 2 = -1 5.5 % 2 (x),數(shù)據(jù)類型轉(zhuǎn)換,2、算術(shù)表達式和運算表達式的優(yōu)先級與結(jié)合性 用算術(shù)運算符和括號將運算對象(也稱操作數(shù))連接起來的,符合C語法規(guī)則的式子,稱為C算術(shù)表達式。 如果一個運算符的兩則的數(shù)據(jù)類型不同,則先自動進行類型轉(zhuǎn)換,是兩者具有一種類型,然后進行計算。(轉(zhuǎn)換方式見下頁圖示),/* 數(shù)據(jù)類型的轉(zhuǎn)換 功能:不同數(shù)據(jù)類型之間的轉(zhuǎn)換 作者:Benny 版本:v1.0 */ #include using namespace std; main() char nChar; int nInt; unsigned int nUInt; float nFloat; double nDouble; nChar =7; cout“整數(shù)應該是: “(nInt=nChar)endl; nInt =30; cout“無負數(shù)的實數(shù)應該是: “(nUInt = nInt)endl; nFloat =50.65; cout“雙精度的實數(shù)應該是: “(nDouble = nFloat)endl; return 0; ,整數(shù)應該是:55 無負數(shù)的實數(shù)應該是:30 雙精度的實數(shù)應該是:50.65,3、強制類型轉(zhuǎn)換運算符 (當自動轉(zhuǎn)換不能實現(xiàn)目的時)可以利用強制類型轉(zhuǎn)換運算符將一個表達式轉(zhuǎn)換成所需類型。如: (double)a (int)(x + y) (float)(5%3) 其一般形式為:(類型名)(表達式) 注意:表達式應該用括號括起來 強制類型轉(zhuǎn)換時,得到一個所需類型的中間變量,原來變量的類型未發(fā)生變化,4、自增、自減運算符 作用是使變量的值增1或減1 變量+ 、 +變量 、變量- 、 -變量 myIndex = i +; 等同于: myIndex = i; i = i + 1; myIndex = + i ; 等同于: i = i + 1; Index = i;,3、復合賦值運算符 10種:+= -= *= /= %= = ,關(guān)系運算符和關(guān)系表達式,關(guān)系表達式,用關(guān)系運算符將兩個表達式連接起來 mark1+ mark2 mark3 +100, (mark5=101)max 注意區(qū)分等于(=)和賦值運算符(=) Mark1 = mark2; Mark1 = mark2; 關(guān)系表達式的值是邏輯值“真”或“假” C語言用整型表示邏輯值,“真”1 “假”0,18,求下列關(guān)系表達式的值: 5=3 (關(guān)系表達式的值為“假”值,結(jié)果為0) (2) mark80 (當x3時,表達式的值為“真”值,結(jié)果為1) (3) (3b (5) first=3, second=2, third=1; fourth=firstsecond; /* fourth=1 */ fifth=firstsecondthird; /* fifth=(firstsecond)third=0 */,邏輯運算符和邏輯表達式,20,邏輯運算規(guī)則,!a (conditon a and condition b) 若a為“真”,!a為“假” !(32) 若a為“假”,!a為“真” !(23) a&b 若a、b都為“真”,則a&b為“真” 若a、b不全為“真”,則a&b為“假” a|b 若a、b都為“假”,則a|b為“假” 若a、b不全為“假”,則a|b為“真”,21,邏輯表達式,邏輯運算符把邏輯量或表達式連接起來 三個整數(shù)變量:first, second, third,求中間數(shù) 如果firstsecond 且 firstthird 且 firstsecond & firstthird &firstsecond),22,數(shù)學表達式轉(zhuǎn)換為C語言表達式,數(shù)學表達式: -10a10 對應的C語言表達式是:(a=-10) & (a10 對應的C 語言表達式是:(a10),逗號運算符和逗號表達式,逗號表達式的格式: (表達式1,表達式2,表達式n) x=(y=5, y*2) x=10 逗號表達式是一個求值運算符。計算時順序為分別求解每一個表達式,整個表達式的值是最右邊表達式的值。,24,長度運算符,長度運算符sizeof是單目運算符 sizeof(類型說明符)或 sizeof(表達式) 例: sizeof(int) sizeof(float) sizeof(char) sizeof(“abc”) sizeof(i)測試的是i在內(nèi)存中得到的存儲單元的字節(jié)數(shù)。,表達式與語

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論