




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
char類型數(shù)據(jù)作為整數(shù)使用范圍0-255(無(wú)符號(hào))-128-127(有符號(hào))。unsignedcharc;charc;思考
閱讀下面的程序,分析其功能,修改其中的錯(cuò)誤。
#include<stdio.h>voidmain{A,B,C;A+B=5;printf(“A+B=,C=”,a,b,c);}2.3運(yùn)算符和表達(dá)式教學(xué)要求:1.掌握各種數(shù)據(jù)運(yùn)算的運(yùn)算符的運(yùn)算。2.掌握各種運(yùn)算符的優(yōu)先級(jí)、結(jié)合方向。3.掌握各種表達(dá)式的書寫方法。4.掌握混合運(yùn)算時(shí)的類型轉(zhuǎn)換規(guī)則。數(shù)學(xué)中的式子:3+5*6sinA+sinB運(yùn)算符操作數(shù)2.3.1概述1.什么是表達(dá)式由運(yùn)算符和操作數(shù)組成的式子是表達(dá)式。不同類型的表達(dá)式按不同運(yùn)算規(guī)則進(jìn)行計(jì)算。2運(yùn)算符的分類(P49,表3-7)按運(yùn)算符要求運(yùn)算對(duì)象的個(gè)數(shù)分類:?jiǎn)文窟\(yùn)算符、雙目運(yùn)算符、三目運(yùn)算符。按其數(shù)據(jù)操作功能分類:算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符、C的特殊運(yùn)算符。
2.3.2算術(shù)運(yùn)算符和算術(shù)表達(dá)式算術(shù)運(yùn)算符:
+ - * / %
加減乘除整除取余算術(shù)表達(dá)式:
由算術(shù)運(yùn)算符和括號(hào)將運(yùn)算符對(duì)象連接起來(lái)的,符合C語(yǔ)法規(guī)則的式子。如:a*b/c-1.5+’a’運(yùn)算對(duì)象:數(shù)值變量、常數(shù)、函數(shù)、表達(dá)式等算術(shù)表達(dá)式注意事項(xiàng)注意事項(xiàng):(1)/:若兩側(cè)為整形,則其結(jié)果為整形,如果兩個(gè)操作數(shù)中有一個(gè)是實(shí)數(shù),則運(yùn)算結(jié)果為實(shí)數(shù)。
5/2=25/-2=-2-5/2=-21.0/3=0.333333
自動(dòng)類型轉(zhuǎn)換同種數(shù)據(jù)類型的運(yùn)算結(jié)果,還是該類型不同種數(shù)據(jù)類型的運(yùn)算結(jié)果,是兩種類型中取值范圍更大的那種long
double>double>float>long>int>short>chardoublefloatlongunsignedintchar,short精度低精度高注意以下式子:1/2*4/3算術(shù)運(yùn)算中分母一定不能為0!!!!!算術(shù)表達(dá)式注意事項(xiàng)(2)%:條件:兩側(cè)均為整形。
5%2=15%-2=1-5%2=-1(3)C語(yǔ)言算術(shù)表達(dá)式的乘號(hào)(*)不能省略。例如:數(shù)學(xué)式b2-4ac,相應(yīng)的C表達(dá)式應(yīng)該寫成:
b*b-4*a*c。
2.3.2算術(shù)運(yùn)算符和算術(shù)表達(dá)式3+3*4=15or=24優(yōu)先級(jí):
高:*,/,%,
低:+,-結(jié)合性:從左至右(左結(jié)合性)2.5+3+3*4=?2.3.2算術(shù)運(yùn)算符和算術(shù)表達(dá)式2.5+3+3*417.52.5+3+125.5+12=17.5
例算術(shù)表達(dá)式(教材P41)#include"stdio.h"voidarithExp(){inta=1,b=2;floatc=1.0,d=2.0;printf("a/b=%d\n",a/b);printf("c/d=%f\n",c/d);printf("a/d=%f\n",a/d);printf("a+b/c+d=%f\n",a+b/c+d);printf("a%%b=%d\n",a%b);}voidmain(){arithExp();}2.3.3關(guān)系運(yùn)算符和關(guān)系表達(dá)式關(guān)系運(yùn)算符:
><==>=<= !=
大于小于等于大于等于小于等于不等于關(guān)系表達(dá)式:用關(guān)系運(yùn)算符將兩個(gè)表達(dá)式連接起來(lái)的式子。計(jì)算結(jié)果是一個(gè)整形值,非邏輯值(“真”和“假”);用0代表假,1代表真;優(yōu)先級(jí):{>,>=,<,<=}高于{==,!=}
關(guān)系運(yùn)算符<算術(shù)運(yùn)算符運(yùn)算對(duì)象:算術(shù)、關(guān)系、賦值、字符表達(dá)式運(yùn)算規(guī)則
例如,a=3,b=5;a>=b,結(jié)果為0a<b,結(jié)果為1
a==b,結(jié)果為0
a!=b,結(jié)果為1結(jié)合性:從左到右。2.3.4邏輯運(yùn)算符和邏輯表達(dá)式邏輯運(yùn)算符:
&&(與)||(或)?。ǚ牵┻壿嫳磉_(dá)式:由邏輯運(yùn)算符組成的表達(dá)式。計(jì)算結(jié)果:是一個(gè)整形值,非邏輯值(“真”和“假”);用0代表假,1代表真。(教材P43表3-6)操作數(shù):基本類型或指針類型優(yōu)先級(jí):!>&&>||
(低)||、&&
->關(guān)系運(yùn)算->算術(shù)運(yùn)算->?。ǜ撸﹫?zhí)行:不是所有的邏輯運(yùn)算符都被執(zhí)行,而是在執(zhí)行下一個(gè)運(yùn)算符才能求出表達(dá)式的解時(shí),才執(zhí)行該運(yùn)算符。(p43)實(shí)例ch是英文大寫字母(ch>='A')&&(ch<='Z')判斷某一年year是否是閏年的條件是滿足下列兩個(gè)條件之一:能被4整除,但不能被100整除;能被400整除;((year%4==0)&&(year%100!=0))||(year%400==0)2.3.5賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符“=”:格式:變量=表達(dá)式;結(jié)合性:右結(jié)合如,i=4;i=j;i=3+4*5;i=max(a,b);復(fù)合賦值運(yùn)算符:
+=、-=、*=、/=、%=、>>=、<<=
格式:Vop=e
等價(jià)于:V=Vope
例如:a+=5,等價(jià)于a=a+5x*=y+8等價(jià)于x=x*(y+8)例3-5:賦值表達(dá)式求值。(1)x=(y=12)/4y值為12,x值為3,表達(dá)式的值為3(2)x=y=12/4y值為3,x值為3,表達(dá)式的值為3(3)x=(y=12/4)(y值為3,x值為3,表達(dá)式的值為3(4)(x=y)=12/4該賦值運(yùn)算符左邊不是變量,而是一個(gè)表達(dá)式×自動(dòng)類型轉(zhuǎn)換在進(jìn)行賦值操作時(shí),會(huì)發(fā)生類型轉(zhuǎn)換將取值范圍小的類型轉(zhuǎn)為取值范圍大的類型是安全的反之是不安全的如果大類型的值在小類型能容納的范圍之內(nèi),則平安無(wú)事但是,浮點(diǎn)數(shù)轉(zhuǎn)為整數(shù),會(huì)丟失小數(shù)部分,非四舍五入教材P44說(shuō)明強(qiáng)制類型轉(zhuǎn)換運(yùn)算符一般形式:(類型名)(表達(dá)式);表達(dá)式要用括號(hào)括起來(lái)。如1:(double)a;(int)(x+y);如2:inti1=1,i2=2;floatf1;f1=(float)i1/i2;//結(jié)果f1為0.5注意:強(qiáng)制類型轉(zhuǎn)換只是臨時(shí)轉(zhuǎn)換,原來(lái)變量的類型沒(méi)有發(fā)生變化。例2.7#include<stdio.h>main(){
intm=5;
printf("m/2=%d\n",m/2);
printf("(float)(m/2)=%f\n",(float)(m/2));
printf("(float)m/2=%f\n",(float)m/2);
printf("m=%d\n",m);}m/2=2(float)(m/2)=2.000000(float)m/2=2.500000m=5兩個(gè)整數(shù)運(yùn)算的結(jié)果還是整數(shù),不是浮點(diǎn)數(shù)2.3.6自增與自減運(yùn)算符++i,--i先增(減)1,再使用ii++,i--先使用i,再增(減)1例:(2)j=i++;若i的初始值為3(1)j=++i;i=4;j=4;i=4;j=3;結(jié)合性:自右向左例:i=2;j=-i++;分析:(1)++、--、+(正號(hào))、-(取負(fù))是同級(jí)運(yùn)算符,結(jié)合方向:自右向左。(2)-i++等價(jià)于-(i++)(3)對(duì)于括號(hào)內(nèi)的自增運(yùn)算,又要先使用i,再使i增加1。運(yùn)算結(jié)果:i的值為3,j的值為-2。++、--示例p46#include"stdio.h"voidincDec(){intintegeri=5,integerj=5,integerp,integerq;integerp=(integeri++)+(integeri++)+(integeri++); /*integeri參與運(yùn)算后,integeri的值再自增1*/integerq=(++integerj)+(++integerj)+(++integerj);/*j自增1后,再參與其他的運(yùn)算*/printf("%d,%d,%d,%d\n",integerp,integerq,integeri,integerj);}voidmain(){incDec();}2.3.7條件運(yùn)算符與條件表達(dá)式有兩個(gè)符號(hào):?、:,它與三個(gè)操作數(shù)組成三元運(yùn)算。一般形式:<表達(dá)式1>?<表達(dá)式2>:<表達(dá)式3>求值規(guī)則和表達(dá)式的值:求解表達(dá)式1真(非0)求解表達(dá)式2假(0)求解表達(dá)式3表達(dá)式的值優(yōu)先級(jí):邏輯>條件>賦值結(jié)合性:
自右至左此種表達(dá)式切忌用得過(guò)于繁雜if(a>b)z=a;else
z=b;z=(a>b)?a:b;2.3.9逗號(hào)運(yùn)算符與逗號(hào)表達(dá)式形式:逗號(hào)表達(dá)式1,逗號(hào)表達(dá)式2,…,逗號(hào)表達(dá)式n求值規(guī)則:從左至右依次計(jì)算各表達(dá)式的值優(yōu)先級(jí)最低結(jié)合性:自左至右表達(dá)式的值最后一個(gè)表達(dá)式的值。例3-7:逗號(hào)表達(dá)式的值。
aby
逗號(hào)表達(dá)式
y=a=4,b=5,a+b;4549y=(a=4,b=5,a+b);4599y=(a=4,b=5),a+b;4559y=a=(4,b=5),a+b;55510注意:C語(yǔ)言常用逗號(hào)作為分隔符,例如:
inta=3,b=4,c=5;printf("%d,%d,%d",(a,b,c));printf("%d,%d,%d",a,(a,b,c),c);2.4不同類型數(shù)據(jù)之間的混合運(yùn)算C語(yǔ)言允許不同類型的數(shù)據(jù)進(jìn)行運(yùn)算,但在運(yùn)算前要進(jìn)行類型轉(zhuǎn)換(自動(dòng))。c+x*y=?1.6(double)65(int)2(int)3.2(double)68.2(double)例3-10:數(shù)據(jù)類型轉(zhuǎn)換intx=2;floaty=1.6;charc='A';2.5運(yùn)算符的優(yōu)先級(jí)
當(dāng)一個(gè)表達(dá)式中出現(xiàn)多個(gè)運(yùn)算符時(shí),表達(dá)式的求值運(yùn)算按運(yùn)算符的優(yōu)先級(jí)別從高到低的順序執(zhí)行。在C語(yǔ)言中,將44種運(yùn)算符的優(yōu)先級(jí)從高到低共分為15個(gè)等級(jí)。如表2.1所示。
初等運(yùn)算符 (
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖南2025年01月湖南中坡國(guó)家森林公園管理處2025年公開(kāi)招考(選調(diào))2名工作人員筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 跨學(xué)科視野下的語(yǔ)文教學(xué)效能評(píng)估
- 跨境電商平臺(tái)技術(shù)架構(gòu)與系統(tǒng)安全實(shí)戰(zhàn)
- 足球校隊(duì)比賽數(shù)據(jù)的挖掘與價(jià)值創(chuàng)造
- 零售店鋪的藝術(shù)化室內(nèi)設(shè)計(jì)趨勢(shì)
- 初中語(yǔ)文文言文張衡傳翻譯與鑒賞
- 四年級(jí)數(shù)學(xué)下冊(cè)第二單元觀察物體教材分析新人教版
- 跨境醫(yī)療健康保險(xiǎn)的市場(chǎng)需求與發(fā)展趨勢(shì)
- 超市危險(xiǎn)品管理事故事例分享
- 福建2025年02月福州市鼓樓區(qū)鼓東街道公開(kāi)招考1名社區(qū)工作人員筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 2024年江蘇農(nóng)林職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)匯編
- 《中國(guó)痤瘡治療指南》課件
- 《休閑農(nóng)業(yè)園區(qū)管理》課件-第三章 休閑農(nóng)業(yè)的生產(chǎn)管理
- 2024年常州機(jī)電職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)及答案解析
- 2024年人教版小學(xué)語(yǔ)文六年級(jí)下冊(cè)第二單元測(cè)試卷(含答案解析)【可編輯打印】
- 教育技術(shù)學(xué)研究方法基礎(chǔ)
- 幼兒園大班科學(xué)課件:《植物的生長(zhǎng)》
- 湖南高速鐵路職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試參考試題庫(kù)(含答案)
- 《商務(wù)數(shù)據(jù)分析》 課件 項(xiàng)目一 商務(wù)數(shù)據(jù)分析認(rèn)知
- 2023學(xué)年、2024學(xué)年臨平區(qū)公辦學(xué)校校方責(zé)任險(xiǎn)投保采購(gòu)項(xiàng)目招標(biāo)文件
- 橋梁施工案例分析
評(píng)論
0/150
提交評(píng)論