c語言中算術運算子都是什麼意思?能舉

2021-05-25 06:30:51 字數 5414 閱讀 1567

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 邏輯運算子運算規則 或 兩個條件中,只要有一個成立,則結果就成立 與 兩個條件中,兩個同時成立,則結果成立,否則不成立 非 取反之意,如果是真,結果是假,如果是假...