




已閱讀5頁(yè),還剩32頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)及程序設(shè)計(jì)概述 運(yùn)算符與表達(dá)式 2 運(yùn)算符 C語(yǔ)言用于描述對(duì)數(shù)據(jù)進(jìn)行運(yùn)算的特殊符號(hào) 語(yǔ)言具有豐富而繁多的運(yùn)算符由運(yùn)算符構(gòu)成了各種表達(dá)式分類 語(yǔ)言的運(yùn)算符按其在表達(dá)式中與運(yùn)算對(duì)象的關(guān)系單目運(yùn)算一個(gè)運(yùn)算符連接一個(gè)運(yùn)算對(duì)象雙目運(yùn)算一個(gè)運(yùn)算符連接兩個(gè)運(yùn)算對(duì)象三目運(yùn)算一個(gè)運(yùn)算符連接三個(gè)運(yùn)算對(duì)象 3 運(yùn)算符 分類算術(shù) 自增 自減 運(yùn)算符 關(guān)系運(yùn)算符 賦值運(yùn)算符 條件運(yùn)算符 逗號(hào)運(yùn)算符 指針運(yùn)算符 強(qiáng)制類型轉(zhuǎn)換運(yùn)算符 type 分量運(yùn)算符 和 下標(biāo)運(yùn)算符 函數(shù)調(diào)用運(yùn)算符 4 運(yùn)算符 對(duì)運(yùn)算符的掌握應(yīng)從三個(gè)方面著手和操作符相關(guān)的數(shù)據(jù)類型 包括操作數(shù)和操作結(jié)果的數(shù)據(jù)類型 運(yùn)算符的優(yōu)先級(jí)運(yùn)算符的結(jié)合次序 5 表達(dá)式 用運(yùn)算符將運(yùn)算對(duì)象連接而成的符合 語(yǔ)言規(guī)則的算式特別地 一個(gè)常量 一個(gè)變量 一個(gè)函數(shù)都可以看成是一個(gè)表達(dá)式表達(dá)式的分類按照運(yùn)算符與運(yùn)算對(duì)象的關(guān)系單目表達(dá)式雙目表達(dá)式三目表達(dá)式 6 表達(dá)式 表達(dá)式的分類按照運(yùn)算符在表達(dá)式中的作用算術(shù)表達(dá)式 例 3 4 5賦值表達(dá)式 例 a 3關(guān)系表達(dá)式 例 5b邏輯表達(dá)式 例 3 5 a b條件表達(dá)式 例 a b a b逗號(hào)表達(dá)式 例 a 3 b 4 c 5指針表達(dá)式 例 p 2 a 7 表達(dá)式的求值過(guò)程 C語(yǔ)言規(guī)定了運(yùn)算符的優(yōu)先級(jí)和結(jié)合性優(yōu)先級(jí)指同一個(gè)表達(dá)式中不同運(yùn)算符進(jìn)行計(jì)算時(shí)的先后次序結(jié)合性結(jié)合性是指同一個(gè)表達(dá)式中相同優(yōu)先級(jí)的多個(gè)運(yùn)算應(yīng)遵循的運(yùn)算順序 語(yǔ)言規(guī)定 單目運(yùn)算符是自右向左結(jié)合 雙目運(yùn)算符是自左向右結(jié)合 8 表達(dá)式的求值過(guò)程 表達(dá)式的求值過(guò)程按C規(guī)定的原則求值表達(dá)式代表了一個(gè)具體的值實(shí)際上是一個(gè)數(shù)據(jù)加工的過(guò)程在表達(dá)式求值時(shí) 先按運(yùn)算符的優(yōu)先級(jí)級(jí)別的高低次序執(zhí)行如果運(yùn)算符兩側(cè)的優(yōu)先級(jí)級(jí)別相同 則按規(guī)定的 結(jié)合方向 處理提示運(yùn)算符的優(yōu)先級(jí)制約著表達(dá)式的計(jì)算次序可以通過(guò)括號(hào) 來(lái)改變表達(dá)式求值的順序表達(dá)式求值過(guò)程中存在某種類型數(shù)據(jù)的類型轉(zhuǎn)換 9 算術(shù)表達(dá)式 由算術(shù)運(yùn)算符連接數(shù)值型運(yùn)算對(duì)象構(gòu)成其結(jié)果可以是整數(shù) 單精度實(shí)數(shù)和雙精度實(shí)數(shù)例 inta 2 floatb 4 5 表達(dá)式2 a b的結(jié)果為8 5優(yōu)先給與結(jié)合性提示兩個(gè)整數(shù)相除其結(jié)果仍為整數(shù) 即舍去小數(shù)部分 例如 13 10的結(jié)果為1 為求余運(yùn)算符 參與運(yùn)算的兩個(gè)數(shù)均為整數(shù)例如 10 3 1 10 3 1除以0在計(jì)算機(jī)系統(tǒng)中是沒(méi)有意義的用括號(hào)可以改變表達(dá)式的運(yùn)算順序 10 算術(shù)表達(dá)式 算術(shù)表達(dá)式例1 設(shè)intb 7 floata 2 5 c 4 7 表達(dá)式a int b 3 int a c 2 4的值 例2 11 自增 自減 與 的作用是使變量的值增1或減1C語(yǔ)言提供兩種形式的 運(yùn)算符 a a 前綴運(yùn)算 先進(jìn)行增量運(yùn)算后使用 a a 后綴運(yùn)算 先使用后進(jìn)行增量運(yùn)算 提示 增和自減只能作用于變量 不允許對(duì)常量 表達(dá)式或其它進(jìn)行操作當(dāng)自增 自減變量值本身就單獨(dú)構(gòu)成一條語(yǔ)句時(shí) 前綴和后綴的效果是一樣的對(duì)于 和 的使用要避免二義性 12 自增 自減 計(jì)算過(guò)程例1 設(shè)x 5y x 先計(jì)算x x 1 再執(zhí)行y x 結(jié)果x 5 y 6 y x 先執(zhí)行y x 再計(jì)算x x 1 結(jié)果y 5 x 6 問(wèn)題 如何理解A B C規(guī)定 自左向右取盡可能多的符號(hào)組成運(yùn)算符 13 自增 自減 例2 設(shè)x 5y x x 先取x的值進(jìn)行 運(yùn)算 再進(jìn)行兩次x y 25 x 7 y x x 先進(jìn)行兩次x自增 使x的值為7 再進(jìn)行相乘運(yùn)算 y 49 x 7 14 賦值表達(dá)式 由賦值運(yùn)算符 連接表達(dá)式 右側(cè) 和變量 左側(cè) 形式 變量名 表達(dá)式賦值運(yùn)算符完成兩類操作計(jì)算賦值例inta 2 floatb 5 2 c c a b 賦值運(yùn)算符具有右結(jié)合性例如 a b 3 5 先計(jì)算3 5 后將15賦給b 再將b的值15賦給a 15 賦值表達(dá)式 組合賦值表達(dá)式組合賦值運(yùn)算符將一個(gè)變量和一個(gè)表達(dá)式連接起來(lái)的式子稱為組合賦值表達(dá)式形式 變量名表達(dá)式例 x y 3 x x y 3 a b c a a b c 注意 a b c 與 a a b c 是不等價(jià)的提示 不是數(shù)學(xué)中的 等號(hào) 它表示一個(gè)動(dòng)作 右側(cè)的值送與左側(cè)的變量中 左側(cè)只允許是變量 不能是表達(dá)式或其他 賦值運(yùn)算符兩側(cè)的類型要求一致 否則要進(jìn)行類型轉(zhuǎn)換賦值運(yùn)算符 相等運(yùn)算符 和一般習(xí)慣有所不同 16 關(guān)系表達(dá)式 關(guān)系運(yùn)算符中的 關(guān)系 二字的含義是指一個(gè)值與另一個(gè)值之間的關(guān)系關(guān)系由關(guān)系運(yùn)算符 OP表達(dá)式可以是常量 變量和表達(dá)式結(jié)果為整型值0 邏輯假1 邏輯真優(yōu)先級(jí) 高于 結(jié)合方向 自左向右 17 關(guān)系表達(dá)式 例 inta 2 floatb 3 4 a b a b b a b b的結(jié)果分別是多少 0 1 0 提示進(jìn)行關(guān)系運(yùn)算時(shí) 先計(jì)算表達(dá)式的值 然后再進(jìn)行關(guān)系比較運(yùn)算例如 inta 1 b 2 c 3 1 a b 3 c的結(jié)果為0 3 9關(guān)系不成立 2 a b b 11 c 結(jié)果值為1 3 4關(guān)系成立 18 關(guān)系表達(dá)式 在表達(dá)式中連續(xù)使用關(guān)系運(yùn)算符時(shí) 要注意正確表達(dá)含義例如 設(shè) 的取值范圍為 10 10 時(shí) 不能寫成 10 x 10 應(yīng)寫成 10 x x 10 為什么 19 邏輯表達(dá)式 邏輯 是指連接關(guān)系的方式由邏輯運(yùn)算符 連接的表達(dá)式構(gòu)成形式 OP表達(dá)式可以是常量 變量 或其他表達(dá)式其結(jié)果為整數(shù)值0 邏輯假 或1 邏輯真 優(yōu)先級(jí) 最高 次之 最低邏輯運(yùn)算優(yōu)先級(jí)低于所有關(guān)系運(yùn)算 優(yōu)先級(jí)高于所有算術(shù)運(yùn)算 單目運(yùn)算 結(jié)合性 自左向右例如 a b b d 自右向左 例如 a 20 邏輯表達(dá)式 邏輯運(yùn)算規(guī)則提示設(shè)計(jì)邏輯 與 運(yùn)算 將最可能為 假 的表達(dá)式放在最左側(cè)設(shè)計(jì)邏輯 或 運(yùn)算 將最可能為 真 的表達(dá)式放在最左側(cè) 21 邏輯表達(dá)式 例題 設(shè)inta 3 b 1 x 2 y 0 則 y b y a 的運(yùn)算結(jié)果為1 問(wèn)題 1 y b y a的運(yùn)算結(jié)果是多少 2 兩個(gè)表達(dá)式在運(yùn)算次序是否一致 22 條件表達(dá)式 由條件運(yùn)算符連接它的三個(gè)運(yùn)算對(duì)象構(gòu)成的表達(dá)式稱之為條件表達(dá)式形式 條件運(yùn)算符的 個(gè) 總是成對(duì)出現(xiàn)表達(dá)式可以是任何類型 結(jié)果也可以是任何類型運(yùn)算過(guò)程計(jì)算表達(dá)式1的值為真 計(jì)算表達(dá)式2的值 并將表達(dá)式2的值作為整個(gè)條件表達(dá)式的結(jié)果 不再計(jì)算表達(dá)式3的值為假 計(jì)算表達(dá)式3的值 并將表達(dá)式3的值作為整個(gè)條件表達(dá)式的結(jié)果 不計(jì)算表達(dá)式2的值 23 條件表達(dá)式 優(yōu)先級(jí)高于賦值運(yùn)算 但低于所有關(guān)系運(yùn)算 邏輯運(yùn)算和算術(shù)運(yùn)算結(jié)合性自右向左結(jié)合提示當(dāng)多個(gè)條件表達(dá)式嵌套使用時(shí) 每個(gè)后續(xù)的 總與前面最近的 沒(méi)有配對(duì)的 相聯(lián)系例如 x y x z w z w等同于x y x z w z w 三個(gè)運(yùn)算對(duì)象的類型可以不相同例如 x a 0 5 24 條件表達(dá)式 例題 設(shè)intx 10 y 9 inta b c a x y x y b x c y 執(zhí)行上述程序段后a b c的結(jié)果是 分別為8 8 10 25 逗號(hào)表達(dá)式 由逗號(hào)連接符 與表達(dá)式構(gòu)成形式 可以是任何類型逗號(hào)表達(dá)式的結(jié)果為最后一個(gè)表達(dá)式的結(jié)果值執(zhí)行過(guò)程先求解表達(dá)式1的值 再求解表達(dá)式2的值 最后求解表達(dá)式n的值 并將表達(dá)式n的值作為整個(gè)表達(dá)式的結(jié)果值 26 逗號(hào)表達(dá)式 優(yōu)先級(jí)級(jí)別最低 最后進(jìn)行逗號(hào)運(yùn)算 結(jié)合方向自左向右例題設(shè)intx a 表達(dá)式x a 4 6 2 的x值 表達(dá)式x a 4 6 2的x值 x為12 x為4 27 運(yùn)算符與表達(dá)式 混合運(yùn)算指在一個(gè)表達(dá)式中參與運(yùn)算的對(duì)象不是相同的數(shù)據(jù)類型例如 設(shè) inta 3 floatb 3 0 charc 3 則表達(dá)式 a c b 4 int b 2的結(jié)果 進(jìn)行混合運(yùn)算的首要的問(wèn)題是對(duì)參與運(yùn)算的數(shù)據(jù)進(jìn)行類型轉(zhuǎn)換類型轉(zhuǎn)換由一種數(shù)據(jù)類型到另一種數(shù)據(jù)類型的轉(zhuǎn)換被稱為類型轉(zhuǎn)換 28 隱式的 自動(dòng)類型轉(zhuǎn)換 如果同一個(gè)表達(dá)式中含有不同類型的常量和變量 C語(yǔ)言則在計(jì)算該表達(dá)式時(shí)會(huì)自動(dòng)轉(zhuǎn)換為同一種數(shù)據(jù)類型以便進(jìn)行運(yùn)算轉(zhuǎn)換原則運(yùn)算中將所有char型數(shù)據(jù)轉(zhuǎn)換成int型 float型轉(zhuǎn)換成double型 類型提升 低類型向高類型轉(zhuǎn)換例如 1 5 2 a 1 2345678 運(yùn)算次序?yàn)?2 a 先將 a 轉(zhuǎn)換成整型數(shù)97 得乘積1941 5 194 1 5和194都轉(zhuǎn)換成double型 和為95 5195 5 1 2345678 1 2345678本身應(yīng)是double型的 所以最后結(jié)果也為double型 29 int char short unsigned long double float 低 高 類型提升 示意圖 隱式的 自動(dòng)類型轉(zhuǎn)換 30 隱式的 自動(dòng)類型轉(zhuǎn)換 在數(shù)據(jù)輸出時(shí)發(fā)生的類型轉(zhuǎn)換同樣要遵守 類型提升 的原則賦值運(yùn)算中最終結(jié)果的類型 以賦值運(yùn)算符左邊變量的類型為準(zhǔn)要將賦值符號(hào)右邊表達(dá)式的值按左邊變量的數(shù)據(jù)類型轉(zhuǎn)換之后再賦值當(dāng)左邊變量的類型長(zhǎng)度較右邊值的長(zhǎng)度短時(shí) 就可能產(chǎn)生誤差 甚至完全錯(cuò)誤提示由 語(yǔ)言的編譯系統(tǒng)自動(dòng)完成不會(huì)體現(xiàn)在 語(yǔ)言源程序中程序設(shè)計(jì)人員必須了解這種自動(dòng)轉(zhuǎn)換的規(guī)則及其結(jié)果 31 顯式的 類型轉(zhuǎn)換 顯式的 類型轉(zhuǎn)換通過(guò)用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符 type 進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換其含義是將右邊表達(dá)式的值轉(zhuǎn)換成括號(hào)中指定的數(shù)據(jù)類型轉(zhuǎn)換形式如下 type 表達(dá)式type表示一個(gè)強(qiáng)制數(shù)據(jù)類型名表達(dá)式是任何一種類型的表達(dá)式例 int x y 注意與 int x y不同 32 簡(jiǎn)單表達(dá)式的運(yùn)算 例1 執(zhí)行下面程序段后 inta 1 b 1 c 1 a a b c printf d d d a b c 輸出結(jié)果為 A 4 3 2 B 3 3 2 C 3 3 3 D 3 2 2 例2 若定義x y為double型 則表達(dá)式x 1 y x 3 2的值是 2 0 例3 若變量已經(jīng)定義并賦值 下面符合C語(yǔ)言語(yǔ)法的表達(dá)式是 A a b 1B a b c 2C int18 5 3D a a 7 c b 例4 若a為int類型 且值為3 則執(zhí)行完表達(dá)式a a a a后 a的值是多少 A 3B 9C 12D 6 例5 分析下列運(yùn)算的結(jié)果 defineprintt x y z printf x d y d z d n x y z main intx y z x y z 2 x y 定義宏替換 輸出
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 引領(lǐng)技術(shù)未來(lái)
- 2025年度農(nóng)村果園承包合同模板
- 《泌尿系統(tǒng)的組成與作用》課件
- 幼兒園喝水安全教育
- 2025年臺(tái)州市城鄉(xiāng)規(guī)劃設(shè)計(jì)研究院有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 2025年浙江國(guó)企湖州南潯人才產(chǎn)業(yè)集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年貴州鹽業(yè)(集團(tuán))黔東南有限責(zé)任公司招聘筆試參考題庫(kù)含答案解析
- 2025年中石油(上海)新材料研究院有限公司招聘筆試參考題庫(kù)含答案解析
- 2025五指山市椰林鎮(zhèn)社區(qū)工作者考試真題
- 2025五指山市會(huì)文鎮(zhèn)社區(qū)工作者考試真題
- 園林植物識(shí)別-草本花卉的識(shí)別
- 2024年湖北宜昌高新區(qū)社區(qū)專職工作人員網(wǎng)格員招聘筆試參考題庫(kù)附帶答案詳解
- 【湘少版】(三起)三年級(jí)英語(yǔ)下冊(cè)(全冊(cè))配套練習(xí)
- 裝修施工投標(biāo)書模板
- 技術(shù)創(chuàng)新與專利申請(qǐng)情況匯報(bào)
- 《民航概論》全套課件演示課件
- 公立醫(yī)院內(nèi)控管理制度
- 麻醉蘇醒延遲:麻醉蘇醒延遲的原因與處理
- 室顫的搶救與護(hù)理課件
- 2023年6月六級(jí)真題第一套
- 對(duì)《民間口頭敘事不止是文學(xué)-從猛將寶卷、猛將神歌談起》的問(wèn)答、評(píng)議與討論
評(píng)論
0/150
提交評(píng)論