1樓:幻翼高達
c語言中,算術運算子「%」代表模(取餘)運算,「++」代表變數自增運算,「--」代表變數自減運算。
1、模運算「%」
「模」是「mod」的音譯,模運算多應用於程式編寫中。 mod的含義為求餘。模運算在數論和程式設計中都有著廣泛的應用,從奇偶數的判別到素數的判別,從模冪運算到最大公約數的求法,從孫子問題到凱撒密碼問題,無不充斥著模運算的身影。
c語言用「%」代表模運算,例如7%2=1、8%5=3等。
2、自增運算「++」
c語言用「++」代表自增運算,分為字首自增和字尾自增,其效果均為自身變數值+1。字首自增例如「a=5;b=++a;」,則執行結果是「a=6,b=6」。字尾自增例如「a=5;b=a++;」,則執行結果是「a=6,b=5」。
3、自減運算「--」
c語言用「--」代表自減運算,分為字首自減和字尾自減,其效果均為自身變數值-1。字首自減例如「a=5;b=--a;」,則執行結果是「a=4,b=4」。字尾自減例如「a=5;b=a--;」,則執行結果是「a=4,b=5」。
擴充套件資料:
c語言常用運算子:
+:加法
-:減法
<<:位左移
>>:位右移
<:小於
<=:小於等於
>:大於
>=:大於等於
+=:加賦值運算
-=:減賦值運算
*=:乘賦值運算
/=:除賦值運算
%=:模賦值運算
2樓:匿名使用者
c語言中,% 是求餘運算子(模運算子),特點是:
是雙目運算子,具有左結合性。
要求參與運算的量均為整型,不能應用於float或double型別。
求餘運算的結果等於兩數相除後的餘數,整除時結果為0。
如:5%3=2 4%3=1 3%3=02%3=2 1%3=1 0%3=0
「++」是自增1運算子,其功能是使變數的值自增1;
「--」是自減1運算子,其功能是使變數值自減1。
自增1,自減1運算子均為單目運算,都具有右結合性。可有以下幾種形式:
++i:i自增1後 再參與其它運算。
--i: i自減1後 再參與其它運算。
i++:i參與運算後,i的值再自增1。
i--: i參與運算後,i的值再自減1。
如:int x,y;
x=10; y=x++; //結果y=x=10, 然後 x=x+1=11
x=10; y=++x; //結果 x=x+1=11,然後 y=x=11
自減例子,與自加同!
3樓:充實生活
%是求餘的意思,是一個二元操作符,舉例: 保證a, b兩個變數是整數,那麼 a%b的意思就是求a除以b得到的餘數。 ++ -- 都是一元的運算子,是將一個變數本身自增1或者自減1操作使用,如變數a=5; 那麼a++之後a的值變為6,但是要區分a++和++a這兩種,兩中操作後a的值都是6,但是如果使用c=a++;和c=++a;得到得到的c的值前者是5,後者是6。
就是說++符號在前面的話就是自增後再賦值,在後面則是先賦值在自增。--自減符號與++類似使用
4樓:哈就可泛海
%d a+b a-b
c語言中,有哪些算術運算子?
5樓:哇哎西西
c語言中算術運算子有以下這些
例項:#include
int main()
當上面的**被編譯和執行時,它會產生下列結果:
line 1 - c 的值是 31
line 2 - c 的值是 11
line 3 - c 的值是 210
line 4 - c 的值是 2
line 5 - c 的值是 1
line 6 - c 的值是 21
line 7 - c 的值是 22
擴充套件資料:
c語言中,除了算數運算子,還提供以下運算子:
1、關係運算子
2、邏輯運算子
3、位運算子
4、賦值運算子
5、雜項運算子
運算子優先順序:
c語言中,運算子的運算優先順序共分為15 級。1 級最高,15 級最低。
在表示式中,優先順序較高的先於優先順序較低的進行運算。而在一個運算量兩側的運算子 優先順序相同時,則按運算子的結合性所規定的結合方向處理。
運算子結合性:
c語言中各運算子的結合性分為兩種,即左結合性(自左至右)和右結合性(自右至左)。例如算術運算子的結合性是自左至右,即先左後右。
如有表示式x-y+z 則y 應先與「-」號結合,執行x-y 運算,然後再執行+z 的運算。這種自左至右的結合 方向就稱為「左結合性」。而自右至左的結合方向稱為「右結合性」。
最典型的右結合 性運算子是賦值運算子。如x=y=z,由於「=」的右結合性,應先執行y=z 再執行x=(y=z)運算。c語言運算子中有不少為右結合性,應注意區別,以避免理解錯誤。
優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。
所有的優先順序中,只有三個優先順序是從右至左結合的,它們是單目運算子、條件運算子、賦值運算子。其它的都是從左至右結合。
具有最高優先順序的其實並不算是真正的運算子,它們算是一類特殊的操作。()是與函式相關,與陣列相關,而->及.是取結構成員。
其次是單目運算子,所有的單目運算子具有相同的優先順序,因此在我認為的 真正的運算子中它們具有最高的優先順序,又由於它們都是從右至左結合的,因此*p++與*(p++)等效是毫無疑問的。
6樓:之何勿思
七個,如下:
+ - * / % ++ --
雙目運算子+和-具有相同的優先順序,它們的優先順序比運算子*、/和%的優先順序低,而運算子*、/和%的優先順序又比單目運算子 +(正號) 和 -(負號) 的優先順序低。
7樓:晟睿教育
基本表示式 1級
基本表示式(primary expressions),主要是用於運算子之間,做為運算數。
標識,常量,字串文字量,優先順序提升表示式最優先執行。
優先順序提升表示式是指圓括號包圍的表示式,如「( expression )」
字尾表示式 2級
postfix-expression [ expression ],陣列下標運算。
postfix-expression ( argument-expression-list),函式呼叫,括號內的引數可選。
postfix-expression . identifier,成員訪問,
postfix-expression -> identifier,成員訪問,->號之前應為指標。
postfix-expression ++,字尾自增
postfix-expression --,字尾自減
int unamed = ; //unamed表示一個不可見的變數名。
int* a = unamed;
單目/一元運算 3級
++ unary-expression 字首自增
-- unary-expression 字首自減
unary-operator cast-expression 單目轉型表式式, 包括 取地址& ,提領 * , 正號+ ,負號- 位反~ 邏輯否!。
sizeof unary-expression 求型別長度,對表示式求型別長度
sizeof ( type-name ) 求型別長度
強制型別表示式 4級
( type-name ) cast-expression,強制表示式成為type-name指定的型別。
乘法表示式 5級
「 * 」 乘法運算子;「 / 」除法運算子;「 % 」 取餘運算子。
加法運算子 6級
「 + 」加法運算子;「 - 」減法運算子。
移位運算子 7級
<< 左移運算子;>> 右移運算子。
關係運算子 8級
<、<=、>、>=關係運算子。
相等運算子 9級
「 == 」等於運算子;「 != 」不等於運算子。
位與運算子 10級
「 & 」按位與運算子
位異或運算子 11級
「 ∧ 」按位異或運算子(bitwise exclusive or operator)。
位或運算子 12 級
「 | 」按位或運算子(bitwise inclusive or operator)。
邏輯與運算子 13級
「&&」邏輯與運算子。
邏輯或運算子 14 級
「 || 」邏輯或運算子。
三元條件運算子 15級
? :條件運算子。
賦值運算子 16 級
=、 +=、 -=、 *=、 /=、 %=、 &=、 ^=、 |=、 <<=、 >>=賦值運算子。
逗號運算子 17級
「,」逗號運算子。
8樓:匿名使用者
七個+ - * / % ++ --
加減乘除不用我說了吧
"%"求餘,就是算除法,值是他的餘數
"/"這個是除法,但是有一點注意,兩邊運算元全為整數時,值是取整的。
「++」是自加,比如說i++就是i的值自動加1,規則是i++是鮮賦值再自加,++i是先自加再賦值。舉個例子a=i++這個是先把i的值賦給a,然後i再自加。a=++i是i先自加,然後把自加之後的值賦給a。
「--」是自減,和自加的規則相同,只是值是自動減一。
c語言的運算子可分為以下幾類:
1. 算術運算子:用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求餘(或稱模運算,%)、自增(++)、自減(--)共七種。
2. 關係運算子:用於比較運算。包括大於(>)、小於(<)、等於(= =)、大於等於(>=)、小於等於(<=)和不等於(!=)六種。
3. 邏輯運算子:用於邏輯運算。包括與(&&)、或(||)、非(!)三種。
4. 位操作運算子:參與運算的量,按二進位制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。
5. 賦值運算子:用於賦值運算,分為簡單賦值(=)、複合算術賦值(+=,-=,*=,/=,%=)和複合位運算賦值(&=,|=,^=,>>=,<<=)三類共十一種。
6. 條件運算子:這是一個三目運算子,用於條件求值(?:)。
7. 逗號運算子:用於把若干表示式組合成一個表示式(,)。
8. 指標運算子:用於取內容(*)和取地址(&)二種運算。
9. 求位元組數運算子:用於計算資料型別所佔的位元組數(sizeof)。
10. 特殊運算子:有括號(),下標,成員(→,.)等幾種。
c語言中位移位運算子C語言中位移位運算子
位移運算子 符號 描述 左移 右移 位移運算子作用於其左側的變數,其右側的表示式的值就是移動的位數,運算結果就是移動後的變數結果。b a 2 就是a的值左移兩位並賦值為b。a本身的值並沒有改變。向左移位就是在低位補0,向右移位就是在高位上補0。右移時可以保持結果的符號位,也就是右移時,如果最高位為1...
c語言賦值運算子是什麼意思,c語言中規定賦值運算子的左邊必須是什麼
i j i i j i j i i copy j i 1 i i 1 以此類推 bai 與運算 或運算 異或運算 向右du移位 向左移位 你自己寫zhi個簡單dao 的驗證一下看看對不對 c語言中規定 賦值運算子的左邊必須是什麼?賦值運算子的左邊必bai須是變數。簡單du賦值運zhi算符記為 由 連...
c語言中邏輯運算子用法,C語言中邏輯運算子用法
1 邏輯運算子bai是根據du表示式的值來返zhi回真值或是假值dao。在c語言中沒有專版門的真值和假值,認定權非0為真值,0為假值。2 邏輯運算子運算規則 或 兩個條件中,只要有一個成立,則結果就成立 與 兩個條件中,兩個同時成立,則結果成立,否則不成立 非 取反之意,如果是真,結果是假,如果是假...