




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、表達(dá)式與語句,第三章,本章學(xué)習(xí)目標(biāo),掌握C語言基本運(yùn)算符的使用 理解運(yùn)算符的優(yōu)先級 熟練掌握C語言基本表達(dá)式的使用 熟練掌握C語言基本語句的使用 學(xué)會簡單順序程序的設(shè)計(jì) 掌握Visual C+環(huán)境下的順序程序執(zhí)行過程的跟蹤,以及變量值的觀察,C語言的表達(dá)式,sum,=,num1,+,num2,表達(dá)式,Z = ( X * 2 ) + ( 5 Y ),C語言的表達(dá)式,C語言的表達(dá)式,表達(dá)式由操作數(shù)和運(yùn)算符的組合而成 表達(dá)式中的操作數(shù)可以是變量、常量或者子表達(dá)式 表達(dá)式的主要類型有: 算術(shù)表達(dá)式 賦值表達(dá)式 關(guān)系表達(dá)式 邏輯表達(dá)式 條件表達(dá)式 逗號表達(dá)式,算術(shù)表達(dá)式,1單目運(yùn)算符,增1和減1運(yùn)算符,
2、Example: j = +i - 2,similar to i = i + 1; j = i 2;,4,6,前綴( Prefix )增1和減1運(yùn)算符,Example: j = i+ - 2,similar to j = i 2; i = i + 1;,后綴(Postfix)增1和減1運(yùn)算符,3,6,int a=3; printf(%d, -a+);,similar to printf(%d, -a); a = a + 1;,后綴(Postfix)增1和減1運(yùn)算符,4,課堂練習(xí),語句 k值 j值 j=3; k=+j; j=3; k=j+; c值 a值 a=3;b=5;c=(+a)*b; a=3
3、;b=5;c=(a+)*b; printf輸出 j值 j=3; printf(“%d”,+j); j=3; printf(“%d”,j+);,k=4 j=4,k=3 j=4,4 j=4,3 j=4,c=20 a=4,c=15 a=4,注: +、- 運(yùn)算符只能用于變量,而不能用于常量或表達(dá)式。,算術(shù)表達(dá)式,2雙目運(yùn)算符,注意: 雙目運(yùn)算符優(yōu)先級:*、/、%同級,、同級,并且前者高于后者。 雙目運(yùn)算符優(yōu)先級低于單目運(yùn)算符。,課堂練習(xí),算術(shù)運(yùn)算 運(yùn)算結(jié)果 說明 6/4 6/4.0 6%4 6%-4 -6%4,1 整數(shù)相除的結(jié)果仍為一個(gè)整數(shù),求余運(yùn)算:操作數(shù)必須是整數(shù),余數(shù)的符號同被除數(shù),1.5 實(shí)數(shù)
4、相除的結(jié)果仍為一個(gè)實(shí)數(shù),2 余數(shù)為正,2 余數(shù)為正,-2 余數(shù)為負(fù),【作業(yè)一】計(jì)算并輸出一個(gè)三位整數(shù)的個(gè)位、十位和百位數(shù)字之和(寫在作業(yè)本上),關(guān)鍵是如何分離個(gè)位、十位、百位數(shù)字?,153 % 10 = 3,153 / 100 = 1,153 - 1*100 = 53,53 / 10 = 5,賦值表達(dá)式,注意: 賦值運(yùn)算符的優(yōu)先級比較低,僅高于逗號運(yùn)算符。它沒有相等的意義 。,Example: num = num + 5;,15 + 5,20,20,算術(shù)表達(dá)式,復(fù)合運(yùn)算符,注意: 復(fù)合運(yùn)算符中5個(gè)運(yùn)算符同級,但低于雙目運(yùn)算符 。,Example: num += 5;,similar to nu
5、m = num + 5,已知 int a = 3; 執(zhí)行 a += a -= a * a 后,變量a的值? a += a -= a * a a += a -= 9 a += -6 a = -12,3,-6,-12,執(zhí)行 a += a -= a *= a 后,變量a的值? a += a -= a *= a a += a -= 9 a += 0 a = 0,3,9,0,0,算術(shù)表達(dá)式,強(qiáng)制類型轉(zhuǎn)換運(yùn)算符,注意: 強(qiáng)制類型轉(zhuǎn)換運(yùn)算符高于雙目運(yùn)算符,但低于取負(fù)運(yùn)算。,Example: int x = 10; float y; y = (float)x;,(float)10,10.000000,不改變x
6、,Example: int total, number; float average; average = total / number;,15 / 2,7,兩個(gè)整數(shù)運(yùn)算的結(jié)果 還是整數(shù),不是浮點(diǎn)數(shù),Example: int total, number; float average; average = (float)total / number;,15.000000 / 2,7.500000,課堂練習(xí),#include void main() int n1=1,n2=2; float n3=3.5,n4=2.5,s; s=(float)(n1+n2)/2+(int)n3%(int)n4; p
7、rintf(s=%fn,s); ,關(guān)系表達(dá)式,注意: 關(guān)系運(yùn)算符的優(yōu)先級低于算術(shù)運(yùn)算符 。,課堂練習(xí),算術(shù)運(yùn)算 運(yùn)算結(jié)果 1!=2 8=10 (a=2*2)=2,1,1,0,邏輯表達(dá)式,注意: 除了邏輯非外,邏輯運(yùn)算符的優(yōu)先級低于關(guān)系運(yùn)算符。 但邏輯非運(yùn)算符比較特殊,它的優(yōu)先級高于算術(shù)運(yùn)算符 。,ch是大寫英文字母 (ch = A) x=y=z=1; +x|+y printf(x=%d,y=%d,z=%dn,x,y,z); ,條件表達(dá)式,注意: 條件運(yùn)算符優(yōu)先級低于邏輯運(yùn)算符,但高于賦值運(yùn)算符。 條件運(yùn)算符“?”和“:”是一對運(yùn)算符,不能分開單獨(dú)使用。,#include main() int
8、a, b, max; printf(Input a, b:); scanf(%d,%d, ,max = a b ? a : b;,閱讀理解下面程序,逗號表達(dá)式,注意: 逗號運(yùn)算符的優(yōu)先級最低。 在只允許出現(xiàn)一個(gè)表達(dá)式的地方出現(xiàn)多個(gè)表達(dá)式時(shí),常采用逗號表達(dá)式的 形式 。,1當(dāng)a=10,b=0時(shí),計(jì)算逗號表達(dá)式b=(a+=5,a+5)的值。 20 2表達(dá)式(x2, y5,y, xy)的值是 。 8,課堂練習(xí):寫出邏輯表達(dá)式,各種數(shù)據(jù)類型之間的轉(zhuǎn)換,假定m為float型,n為int型,分析表達(dá)式:19 +a-2.5+m/n運(yùn)算后的數(shù)據(jù)類型。, 表示必定的轉(zhuǎn)換 表示運(yùn)算對象不同類型時(shí)的轉(zhuǎn)換,C語言的語
9、句,C語言規(guī)定,語句以分號“;”為結(jié)束標(biāo)志 C語言的語句主要有: 表達(dá)式語句 空語句 復(fù)合語句 函數(shù)調(diào)用語句 控制語句,表達(dá)式語句,表達(dá)式的后面加一個(gè)分號就構(gòu)成了一個(gè)語句。 最常用的表達(dá)式語句是賦值表達(dá)式組成的賦值語句。 語言中有使用價(jià)值的表達(dá)式語句主要有三種: (1)賦值語句,如zxy; (2)自增減運(yùn)算符構(gòu)成的表達(dá)式語句,如i; (3)逗號表達(dá)式語句,如a1,b2;,空語句,僅有一個(gè)分號的語句稱為空語句。,復(fù)合語句,由一對花括號括起來的若干語句稱為復(fù)合語句,又稱為語句塊。 例如: #include void main() int a=10,b=20,s; int a=30,c; /復(fù)合語句
10、中定義的變量a只在復(fù)合語句中有效 c=a*3; printf(a=%d,c=%dn,a,c); s=a+b;/復(fù)合語句中的a變量失效,變量a=10 printf(a=%d,b=%d,s=%d,a,b,s); ,函數(shù)調(diào)用語句,它是由一個(gè)函數(shù)調(diào)用加上一個(gè)分號組成的一個(gè)語句。 例如: scanf(%2d%*2d%2d,編寫簡單C語言程序,【示范實(shí)例3-2】編寫程序?qū)崿F(xiàn)下述功能:從鍵盤輸入相向行駛的兩車之間的距離和它們各自的速度,計(jì)算它們需要多少時(shí)間才能相遇,在屏幕上輸出計(jì)算結(jié)果。 解題思路:用實(shí)型變量s存放初始距離,用實(shí)型變量v1和v2存放兩車的速度,根據(jù)距離、速度和時(shí)間的關(guān)系計(jì)算所需要的數(shù)據(jù)。因此
11、,具體操作步驟如下: (1)顯示提示信息; (2)從鍵盤輸入s、v1、v2的值; (3)計(jì)算v1v2,得到中間結(jié)果v; (4)計(jì)算s/v,結(jié)果賦給t; (5)輸出計(jì)算結(jié)果t。,編寫簡單C語言程序,/* 源文件名:ch3_02.c 功能:計(jì)算時(shí)間 */ #include void main() float s,v1,v2,v,t; printf(請輸入距離(km)和兩個(gè)速度(km/h):); scanf(%f,%f,%f, ,編寫簡單C語言程序,【示范實(shí)例3-3】編寫程序?qū)崿F(xiàn)下述功能:依次輸入兩個(gè)整數(shù)給變量x、y,然后實(shí)現(xiàn)兩數(shù)交換,依次輸出交換后的x、y值。 解題思路:交換兩數(shù)需要借助于第三個(gè)變
12、量來完成,因此,定義三個(gè)同類型變量,兩個(gè)變量用于存放數(shù)據(jù),第三個(gè)變量用作臨時(shí)中間變量。具體操作步驟如下: (1)顯示提示信息; (2)從鍵盤輸入x、y的值; (3)輸出交換前變量的值; (4)借助于第三個(gè)變量,通過三個(gè)賦值語句實(shí)現(xiàn)兩數(shù)交換; (5)輸出交換后的結(jié)果。,編寫簡單C語言程序,/* 源文件名:ch3_03.c 功能:交換兩數(shù) */ #include void main() int x,y,temp; printf(請輸入兩個(gè)整數(shù):); scanf(%d,%d, ,【思考與驗(yàn)證】上面程序中變量temp能不能省掉?為什么?,演示,演示:使用Visual C+ 6.0程序過程的跟蹤,常見錯(cuò)誤列舉,(1)對于float型變量使用%運(yùn)算符。 (2)對表達(dá)式進(jìn)行強(qiáng)制類型轉(zhuǎn)換時(shí)漏掉了圓括號。 (3)賦值號“”左邊使用表達(dá)式。 (4)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 蘭州資源環(huán)境職業(yè)技術(shù)大學(xué)《男生極限飛盤》2023-2024學(xué)年第一學(xué)期期末試卷
- 紅河衛(wèi)生職業(yè)學(xué)院《影視廣告創(chuàng)意與策劃》2023-2024學(xué)年第一學(xué)期期末試卷
- 畢節(jié)職業(yè)技術(shù)學(xué)院《金屬器修復(fù)(一)》2023-2024學(xué)年第一學(xué)期期末試卷
- 鄭州澍青醫(yī)學(xué)高等??茖W(xué)?!讹暳霞庸すに噷W(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 保定理工學(xué)院《醫(yī)藥營銷學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 宿遷澤達(dá)職業(yè)技術(shù)學(xué)院《魚文化》2023-2024學(xué)年第一學(xué)期期末試卷
- 高校學(xué)生社團(tuán)年會方案及流程
- 2025年貴金屬壓延加工材項(xiàng)目申請報(bào)告
- 人教版二年級體育課體質(zhì)促進(jìn)方案計(jì)劃
- 2025至2030年中國意式家具行業(yè)市場行情監(jiān)測及未來趨勢研判報(bào)告
- 廣州版四年級英語下冊各單元知識點(diǎn)歸納及同步練習(xí)
- 廣東省廉江市實(shí)驗(yàn)學(xué)校2022-2023學(xué)年數(shù)學(xué)五年級第二學(xué)期期末聯(lián)考試題含答案
- 湖南三支一扶考試歷年真題
- 心肺運(yùn)動(dòng)試驗(yàn)-PPT-醫(yī)學(xué)課件
- 2023年小學(xué)數(shù)學(xué)壓軸幾何圖形經(jīng)典30題匯編
- 農(nóng)業(yè)推廣經(jīng)營服務(wù)相關(guān)知識
- 鐵路工程預(yù)算定額標(biāo)準(zhǔn)說明
- 滅火和疏散應(yīng)急預(yù)案流程圖
- 2023-2024學(xué)年云南省景洪市小學(xué)語文四年級期末評估試題
- 強(qiáng)夯施工工藝流程圖
- 2023年成都市成華區(qū)建設(shè)系統(tǒng)事業(yè)單位招聘考試筆試模擬試題及答案解析
評論
0/150
提交評論