1眼俊、算術(shù)運(yùn)算符:+—*/%
%要求參與運(yùn)算的兩個(gè)量必須是整型或字符型的厢漩,實(shí)型(float待错,double等)的數(shù)據(jù)不能做%運(yùn)算。
算術(shù)表達(dá)式
運(yùn)算符和數(shù)據(jù)可以組成運(yùn)算的式子会钝,稱為表達(dá)式伐蒋。舉例:10+20 ? ?(a*2)/b ? (x+r)*8-(a+b)/10 ? 5
單個(gè)的常量工三、變量、函數(shù)也可作為是表達(dá)式的特例先鱼。
C語言的表達(dá)式寫法還有一些講究俭正,下面都是錯(cuò)誤的表達(dá)式:2ab ?等。表達(dá)式中的乘號(*)是不能省略的焙畔。
C語言中掸读,表達(dá)式的大、中宏多、小括號都要用小括號()表示儿惫。
用單引號或雙引號引起來的內(nèi)容不是運(yùn)算符或表達(dá)式,例如'+'不是運(yùn)算符伸但,它們是字符型常量肾请;“10+20”也不是表達(dá)式,他是包含5個(gè)字符的字符串常量更胖。
表達(dá)式是沒有分號的铛铁,如果在表達(dá)式后添加了分號,就構(gòu)成表達(dá)式語句却妨,后者可被計(jì)算機(jī)執(zhí)行饵逐。
表達(dá)式都有一個(gè)值和類型。例如表達(dá)式1+1的運(yùn)算結(jié)果是2,2就是這個(gè)表達(dá)式的值彪标。表達(dá)式的類型就是結(jié)果值的類型倍权,即2的類型,所以該表達(dá)式的類型也是int型的捐下。
算術(shù)運(yùn)算時(shí)账锹,兩個(gè)量類型不一致的允許參與運(yùn)算萌业,運(yùn)算結(jié)果的類型與其中較高類型量的類型一致坷襟。(在計(jì)算表達(dá)式時(shí),參與運(yùn)算的兩個(gè)數(shù)的類型有可能一致生年,也有可能不一致婴程;一致時(shí),與兩個(gè)量的類型一樣抱婉。不一致運(yùn)算結(jié)果的類型與高類型一致档叔。數(shù)據(jù)類型由低到高的順序依次為:char-int-float-double)例如:3.4+3結(jié)果為6.4
注意:運(yùn)算的結(jié)果可能超出變量所能表示的數(shù)值范圍。
自動(dòng)類型轉(zhuǎn)換有兩種蒸绩。
強(qiáng)制類型轉(zhuǎn)換:
強(qiáng)制類型轉(zhuǎn)換的寫法是在“量”前加“帶括號的類型說明符”:(類型說明符)表達(dá)式衙四。其功能是把表達(dá)式的運(yùn)算結(jié)果強(qiáng)制轉(zhuǎn)換為“類型說明符”所說明的類型。舉例:(int)3.8;/3
c語言規(guī)定類型說明符必須用括號括起來患亿〈福“量”加與不加括號在語法上都正確押逼,但效果不同:舉例:
float ?x=4.5,y=2.1;則:(int)(x+y)值為6,先求和為6.6惦界,在將和轉(zhuǎn)換為int型的6.
(int)x+y 值為6.1挑格,先把x轉(zhuǎn)換為int型的值為4,然后在求和為6.1.
賦值(=):將值送入變量保存沾歪。
賦值表達(dá)式:在C語言中漂彤,=也被認(rèn)為是運(yùn)算符,成為賦值運(yùn)算符灾搏。c語言規(guī)定賦值表達(dá)式的值為賦值后左邊變量的新值挫望,賦值表達(dá)式的類型與左邊變量的類型相同。舉例:賦值表達(dá)式a=1的值是1賦值表達(dá)式b=10+20式子的值是30狂窑,賦值表達(dá)式c=a+1,士骤,該賦值表達(dá)式的值是2,這三個(gè)表達(dá)式值的類型都是整型蕾域。
注意:int x=y=25;錯(cuò)誤:變量定義時(shí)賦初值不允許連等拷肌。連等只能出現(xiàn)在執(zhí)行語句中。也就是說有int旨巷、float巨缘、double、char等類型說明詞時(shí)不允許連等采呐,沒有這些類型說明詞就允許連等若锁。
復(fù)合賦值運(yùn)算:+= ?-= ?*= ?/= ?%=
逗號運(yùn)算:
c語言中逗號(,)也是一種運(yùn)算符斧吐,稱逗號運(yùn)算符又固。逗號可以把多個(gè)表達(dá)式連接起來。表達(dá)式1煤率,表達(dá)式2仰冠,表達(dá)式3;
它的作用是依次從左到右分別計(jì)算各個(gè)表達(dá)式的值蝶糯;以最后一個(gè)表達(dá)式(上例為表達(dá)式3)的值作為整個(gè)逗號表達(dá)式的值洋只。逗號運(yùn)算符優(yōu)先級最低。
++ 昼捍、--自增運(yùn)算符识虚、自減運(yùn)算符
++ 、--的運(yùn)算符的優(yōu)先級僅次于括號()妒茬。
++担锤、--與數(shù)據(jù)同樣可以組成表達(dá)式。
單獨(dú)作為一個(gè)語句時(shí)乍钻,i++肛循;和++i;是一樣的蛛株,都是使i自增1,i--;和--i;也是一樣的育拨,都是使i自減1谨履,沒有什么區(qū)別,但在表達(dá)式中熬丧,數(shù)據(jù)位于左笋粟、右就有區(qū)別了。
設(shè)i=5;j=10;規(guī)定表達(dá)式i++的值為i被+1之前的值析蝴,所以表達(dá)式i++的值為5.但在計(jì)算表達(dá)式后害捕,變量i的值要變?yōu)?。規(guī)定++i的值為i被+1之后的值闷畸,即6.也就是說尝盼,++i這個(gè)表達(dá)式的值為6,在計(jì)算后變量i的值也為6.