計算機基礎(chǔ)與C語言程序設(shè)計(第二版)第4章_運算符和表達式_第1頁
計算機基礎(chǔ)與C語言程序設(shè)計(第二版)第4章_運算符和表達式_第2頁
計算機基礎(chǔ)與C語言程序設(shè)計(第二版)第4章_運算符和表達式_第3頁
計算機基礎(chǔ)與C語言程序設(shè)計(第二版)第4章_運算符和表達式_第4頁
計算機基礎(chǔ)與C語言程序設(shè)計(第二版)第4章_運算符和表達式_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第 4章 運算符和表達式 第 4章 運算符和表達式 術(shù)運算符和算術(shù)表達式 增、自減運算 運算 值運算 系表達式與邏輯表達式 件表達式與逗號表達式 表達式 :用運算符將要運算的對象連接起來的式子 運算符的 優(yōu)先級 : 如 2+5*4 運算符的 結(jié)合性 :如 :如 *(a*x+(b+x)/(a+x) 術(shù)運算符和算術(shù)表達式 運算符 表達式 + 3+5、 +3 - 5 3*5 3 2 (結(jié)果為 1) 3/, , (結(jié)果為 7%4 (結(jié)果為 3) (求余 ) (結(jié)果為 - 4) 9%( (結(jié)果為 4 ) (錯誤 , 1. 單目運算符 2. 雙目運算符 字符以其 a+1 為 98 b-a 為 1 8-0 為 8 例:設(shè) 其各位數(shù)字之和。 解: a/10+a%10 (如 a=24,則結(jié)果為 6) 例:求一個整數(shù) b 的十位上的數(shù)字。 解: (b%100)/10 (如 b=4321,則結(jié)果為 2) 3. 算術(shù)運算中的類型轉(zhuǎn)換 (1) 自動轉(zhuǎn)換 規(guī)則如下 高 例如: 2+a+ 97+99+2) 強制類型轉(zhuǎn)換 一般形式為: (類型名 )表達式 例如: (a (將 (x+y) (將 x+ (5%3) (將 5%3的值轉(zhuǎn)換成 ( (即 3%2) 增、自減運算 1. 運算符: +、 2. 使用格式: +i 加 1, 后 使用 如 i=3; j=+i; j: 4, i: 4 i+ 使用 , 后加 1 如 i=3; j=i+; j: 3, i: 4 減 1, 后 使用 使用 , 后減 1 又如: i=3; d”, +i); i=3; d”, i+); 3 優(yōu)先級與結(jié)合性 +、 (+、 -)相同 , 比雙目運算符 (*、 /、 %、 +、 -)高 +、 有右結(jié)合性 例如: 相當于: -(a+) 減運算符的注意事項 略 運 算 1位運算符的種類 & 按位與運算符 | 按位或運算符 按位異或運算符 二進制右移運算符 按位取反運算符 2按位與運算 (&) 當對應(yīng)位均為 1時,結(jié)果為 1;否則為 0。 例如, 12&10的運算如下: 12 : 00001100 & 10 : 00001010 _ 結(jié)果: 00001000 又如,只保留 位,其余位置 0: a : 11010010 & 020 : 00010000 _ a&020 : 00010000 3按位或運算 ( | ) 對應(yīng)位均為 0時,結(jié)果為 0;否則結(jié)果為 1。 例如: 0123 : 01010011 | 014 : 00001100 _ 0123|014 : 01011111 例如:若想使 端四位)不變,低四位(右端四位)置 1,可用: a=a|017。 4按位異或運算 () 當對應(yīng)位相同時,結(jié)果為 0;否則為 1。 例如 : 00110011 11000011 _ 11110000 又如,使 四位取反: a: 01101010 017: 00001111 _ a017 : 01100101 5按位取反運算 () 使每一位上的 0變 1; 1變 0。 例如; 0115是將八進制數(shù) 115按位求反。 即: 01001101 _ 結(jié)果: 10110010 6左移運算 () a=b; b=a2; 符號位 : 1111001100000000 : 1000110011111111 : 1000110100000000 (機內(nèi)存儲形式 ) b=a2 : 1110001101000000 : 1001110011000000 : - 016300 值 運 算 1賦值表達式 變量名 =表達式 如 a 3 b=2*a+10 2賦值語句 變量名 =表達式 ; 如 a=3; c=b=a+3; 右結(jié)合 3賦值時數(shù)據(jù)類型的轉(zhuǎn)換 在賦值語句 變量名 =表達式; 中,當左右類型不同時,系統(tǒng)自動轉(zhuǎn)換, 具體規(guī)則見表 4復合賦值運算 += 、 -= 、 *= 、 /= 、 %= 、 = 、 &= 、= 、 |= 例如: a+=3 等價于 a=a+3 x*=y+8 等價于 x=x*(y+8) x/=2* 等價于 x=x/(2*a&=b 等價于 a=a&b 系表達式與邏輯表達式 1六種關(guān)系運算符 (大于 ) = (大于等于 ) 、 = 、 b, a+bb+c, (a=3)(b=5), ab)(b x,y=y=y*11; x=6+if(x=y) x=y); x!=y); 程序運行結(jié)果: x!=y #”的邏輯表達式 可寫為 b=10&x=a+cb&b+ca。 件表達式與逗號表達式 件表達式 1條件運算符 ? : 2條件表達式 表達式 1 ? 表達式 2 : 表達式 3 例如 a:b; ( 2)求三個變量 a、 b、 解 s=(s=ab?a:b)c?s:c; ( 3)對字符變量 為小寫字母,則改為大寫字母,其余字符不變。 解 a&%d”,x):%d”, 【 例 任意輸入三個整數(shù),按從大到小輸出。 程序如下: # a,b,c,m,n,k; %d%d%d,&a,&b,&c); m=(m=ab?a:b)c?m:c; /* 將 a、 b、 m */ n=(n=ab?a:b)c?n:c; /* 將 a、 b、 n */ k=a+b+ /* 將 a、 b、 k */ %d %d %dn,m,k,n); /* 從大到小輸出三個數(shù) */ 程序運行情況: 3 9 3 逗號表達式 形式: 表達式 1,表

溫馨提示

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

評論

0/150

提交評論