全國(guó)計(jì)算機(jī)二級(jí)C語言程序設(shè)計(jì)講義運(yùn)算符和表達(dá)式.ppt
《全國(guó)計(jì)算機(jī)二級(jí)C語言程序設(shè)計(jì)講義運(yùn)算符和表達(dá)式.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《全國(guó)計(jì)算機(jī)二級(jí)C語言程序設(shè)計(jì)講義運(yùn)算符和表達(dá)式.ppt(29頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第三講運(yùn)算符和表達(dá)式 一 表達(dá)式 二 算術(shù)運(yùn)算符和算術(shù)表達(dá)式 四 算術(shù)表達(dá)式中數(shù)據(jù)類型的轉(zhuǎn)換 三 標(biāo)準(zhǔn)庫(kù)函數(shù)調(diào)用 六 增量運(yùn)算符與增量表達(dá)式 七 逗號(hào)運(yùn)算符與逗號(hào)表達(dá)式 五 賦值運(yùn)算1 賦值運(yùn)算符和賦值表達(dá)式2 復(fù)合賦值運(yùn)算 一 表達(dá)式 表達(dá)式 由常量 變量 函數(shù)和運(yùn)算符組成的式子稱為表達(dá)式 例 計(jì)算圓面積的語句 s 3 14159 r r 該語句中 r 3 14159 3 14159 r 3 14159 r r s 3 14159 r r都是表達(dá)式其中 是運(yùn)算符 r是變量 3 14159是常量 表達(dá)式的求值規(guī)則 按照運(yùn)算符的優(yōu)先級(jí)和結(jié)合性的規(guī)定順序進(jìn)行 有的運(yùn)算符只需要一個(gè)運(yùn)算對(duì)象 這種運(yùn)算符稱為單目運(yùn)算符 如 5中的 負(fù)號(hào)需要兩個(gè)運(yùn)算對(duì)象的稱為雙目運(yùn)算符 如加 減 乘 除 一個(gè)表達(dá)式有一個(gè)值及其類型 它們等于計(jì)算表達(dá)式所得結(jié)果的值和類型 二 算術(shù)運(yùn)算符和算術(shù)表達(dá)式 算術(shù)運(yùn)算符 算術(shù)運(yùn)算符用于各類數(shù)值運(yùn)算 算表達(dá)式中的運(yùn)算對(duì)象都是算術(shù)量 即整型 實(shí)型或字符型 下表為基本的算術(shù)運(yùn)算符 其中單目運(yùn)算符負(fù)號(hào) 的優(yōu)先級(jí)最高 為2 除法運(yùn)算符 進(jìn)行求商運(yùn)算 對(duì)于不同類型的運(yùn)算對(duì)象 除法表達(dá)式計(jì)算結(jié)果的類型也會(huì)不同 例 計(jì)算x y如果x y是整型 則結(jié)果為整型 小數(shù)部分被略去 如果x y中有一個(gè)實(shí)型量 則x y都被轉(zhuǎn)化為double類型進(jìn)行運(yùn)算 結(jié)果為double類型量 運(yùn)算實(shí)例 x y為整型量 5 2結(jié)果為2 整型量2 5結(jié)果為0 整型量 x y其中一個(gè)為實(shí)型量 5 0 2或5 2 0或5 0 2 0結(jié)果為2 5 實(shí)型量 是求余運(yùn)算 a b計(jì)算a除以b后的余數(shù) 也是a模b的值 它要求兩個(gè)運(yùn)算對(duì)象都是整型量 其結(jié)果也是整型量 例 5 2結(jié)果為12 5結(jié)果為0 例 將數(shù)學(xué)式改寫成算術(shù)表達(dá)式 一般數(shù)學(xué)式 a b c d ac 算術(shù)表達(dá)式 a b c d a c將方括號(hào)改成圓括號(hào) 不能省略 x x y 1 0 x y其中不能出現(xiàn)分?jǐn)?shù) 改用除法運(yùn)算符 圓括號(hào)不能缺少 3 14159 r r 2 0其中為非字母字符 要用實(shí)型常量代替 例 基本數(shù)學(xué)運(yùn)算符程序?qū)嵗?main inta b c1 c2 a 3 b 7 c1 b a c2 b a printf c1 d tc2 d n c1 c2 c1 a b c2 a b printf c1 d tc2 d n c1 c2 程序運(yùn)行輸出 c1 2c2 1c1 0c2 3 三 標(biāo)準(zhǔn)庫(kù)函數(shù)調(diào)用 對(duì)于某些數(shù)學(xué)運(yùn)算 如求平方根 指數(shù) 對(duì)數(shù)運(yùn)算 C語言中有標(biāo)準(zhǔn)庫(kù)函數(shù)對(duì)其進(jìn)行計(jì)算 調(diào)用函數(shù)格式 函數(shù)名 參數(shù) 參數(shù) 其中函數(shù)名有由系統(tǒng)提供 不同C的編譯系統(tǒng) 提供的函數(shù)名不同 使用時(shí)需查閱相關(guān)手冊(cè) 調(diào)用函數(shù)時(shí) 參數(shù)的類型必須與系統(tǒng)規(guī)定一致 調(diào)用標(biāo)準(zhǔn)庫(kù)函數(shù)之前 通常要用預(yù)編譯命令 include 將所需要的庫(kù)函數(shù)信息包含到用戶源文件中 如 在使用數(shù)學(xué)庫(kù)函數(shù)以前 需使用編譯命令 include math h 例 計(jì)算的值 include math h main doublex y x 5 0 y 7 0 printf z f n x 2 0 pow x y 四 算術(shù)表達(dá)式中數(shù)據(jù)類型的轉(zhuǎn)換 當(dāng)表達(dá)式中的各類數(shù)值型數(shù)據(jù)參與混合運(yùn)算時(shí) 要進(jìn)行類型轉(zhuǎn)換 轉(zhuǎn)換方式自動(dòng)轉(zhuǎn)換 數(shù)據(jù)類型自動(dòng)由低級(jí)向高級(jí)轉(zhuǎn)換 強(qiáng)制轉(zhuǎn)換 將表達(dá)式的運(yùn)算結(jié)果強(qiáng)制轉(zhuǎn)換成指定的數(shù)據(jù)類型 如下表達(dá)式是合法的 1 3 14159 0 A 自動(dòng)轉(zhuǎn)換規(guī)則 例 數(shù)據(jù)類型自動(dòng)轉(zhuǎn)換實(shí)例 有如下變量類型 charc inti floatf doubled 計(jì)算表達(dá)式 c f i d charfloatintdouble c f i d intdouble doubledouble double double 強(qiáng)制轉(zhuǎn)換 格式 數(shù)據(jù)類型說明符 表達(dá)式 注意 1 強(qiáng)制轉(zhuǎn)換屬單目運(yùn)算 運(yùn)算優(yōu)先級(jí)為2 2 強(qiáng)制轉(zhuǎn)換得到的是中間變量類型 原變量類型不變 例 intx y floatz float x y int z x 五 賦值運(yùn)算 1 賦值運(yùn)算符和賦值表達(dá)式 賦值表達(dá)式的一般格式為 變量 表達(dá)式 說明 賦值運(yùn)算符左邊必須是變量而不能是表達(dá)式 賦值表達(dá)式的值是賦值號(hào)左邊變量被賦值后的值 例 j 3 ja b c 4 左邊的語句是錯(cuò)誤的 賦值語句左邊只能是變量 如果賦值號(hào)兩邊的類型不一致 則將賦值號(hào)右邊表達(dá)式的值的類型轉(zhuǎn)換成賦值號(hào)左邊變量的類型 例 floatf 1 0 inta 2 b 3 charc A f a b c 賦值表達(dá)式f a b c的值 也就是f的值為實(shí)型量 結(jié)果為70 0 賦值語句可以連續(xù)進(jìn)行 例 a b c 0 該表達(dá)式等價(jià)于a b c 0 2 復(fù)合賦值運(yùn)算 算術(shù)運(yùn)算符 和賦值運(yùn)算符 結(jié)合起來 形成復(fù)合賦值運(yùn)算符 變量OP 表達(dá)式等價(jià)于變量 變量OP表達(dá)式 用OP表示 則復(fù)合賦值表達(dá)式格式為 加賦值運(yùn)算符 如a b 3 等價(jià)于a a b 3 減賦值運(yùn)算符 如a b 3 等價(jià)于a a b 3 乘賦值運(yùn)算符 如a b 3 等價(jià)于a a b 3 除賦值運(yùn)算符 如a b 3 等價(jià)于a a b 3 取余賦值運(yùn)算符a b 3 等價(jià)于a a b 3 復(fù)合運(yùn)算符左邊必須是變量 注意 復(fù)合運(yùn)算符右邊的表達(dá)式計(jì)算完成后才參與復(fù)合賦值運(yùn)算 復(fù)合賦值運(yùn)算符的結(jié)合性和優(yōu)先級(jí)等同于簡(jiǎn)單的賦值運(yùn)算符 復(fù)合運(yùn)算符常用于某個(gè)變量自身的變化 尤其當(dāng)左邊的變量名很長(zhǎng)時(shí) 使用復(fù)合運(yùn)算符書寫更方便 復(fù)合運(yùn)算符在書寫時(shí) 兩個(gè)運(yùn)算符之間不能有空格 例 賦值語句程序?qū)嵗?main inta b c a b c 5 printf a d b d c d n a b c a b 4 c 6 printf a d b d c d n a b c a b c printf a d b d c d n a b c a a a a printf a d n a 程序運(yùn)行結(jié)果 a 5 b 5 c 5a 10 b 4 c 6a 20 b 4 c 6a 0 六 增量運(yùn)算符與增量表達(dá)式 類別 單目運(yùn)算 運(yùn)算優(yōu)先級(jí)為2 運(yùn)算符 使變量的值增1 使變量的值減1 結(jié)合性及執(zhí)行過程 后綴左結(jié)合i 前綴右結(jié)合 i i 自增 自減運(yùn)算只能用于變量 不能用于常量和表達(dá)式 注意 例 6 a b 均為非法的運(yùn)算 自增 自減運(yùn)算符高于基本算術(shù)運(yùn)算符 自增 自減運(yùn)算符的運(yùn)算順序 例 自增 自減運(yùn)算符程序?qū)嵗? main intx y t 3 printf t d n t x t printf x d t d n x t t 3 printf t d n t y t printf y d t d n y t 程序運(yùn)行結(jié)果 t 3 x 3 t 4t 3 y 4 t 4 例 自增 自減運(yùn)算符程序?qū)嵗? main inti j k i 1 j 1 k i j printf k d i d j d n k i j 程序運(yùn)行結(jié)果 k 2 i 2 j 1 表達(dá)式x y等價(jià)于 x y 例 自增 自減運(yùn)算符程序?qū)嵗? main inti k i 3 k i i i printf 1 k d ti d n k i i 3 k i i i printf 2 k d ti d n k i 程序輸出 1 k 9i 62 k 18i 6 例 自增 自減運(yùn)算符程序?qū)嵗? main intx a b c d x 3 printf d t d t d t d n x x x x a x 3 b x c x d x printf d t d t d t d n a b c d 程序運(yùn)行結(jié)果 32233344 七 逗號(hào)運(yùn)算符與逗號(hào)表達(dá)式 逗號(hào)運(yùn)算符 或稱順序求值運(yùn)算符運(yùn)算符 運(yùn)算優(yōu)先級(jí) 最低 15級(jí)結(jié)合性 左結(jié)合 逗號(hào)表達(dá)式 由逗號(hào)運(yùn)算符連接起來的兩個(gè)或兩個(gè)以上的表達(dá)式 格式 表達(dá)式1 表達(dá)式2 表達(dá)式n 求解過程 先求表達(dá)式1的值 再求表達(dá)式2的值 直至求出表達(dá)式n的值 整個(gè)表達(dá)式的值為表達(dá)式n的值 例 1 x 0 y 1002 x 5 8 6 93 x 1 y 99 z x y 54 x i 10 j 5 i j 5 x i 10 j 5 i j 先后給x y的賦值 表達(dá)式的值為100 先把x賦值為40 表達(dá)式的值為15 給x y賦值后 計(jì)算z的值 表達(dá)式的值為500 等價(jià)于賦值語句x 50 先給x i賦值 再給j賦值 計(jì)算i j 表達(dá)式的值為50- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 全國(guó)計(jì)算機(jī) 二級(jí) 語言程序設(shè)計(jì) 講義 運(yùn)算 表達(dá)式
鏈接地址:http://m.kudomayuko.com/p-5210151.html