c語言的相關運算,C語言中,有哪些算術運算子

2021-03-12 13:09:55 字數 4920 閱讀 5851

1樓:匿名使用者

後自增自減抄相當於這bai

樣一個du

函式x++()

可以這樣zhi理解:

(i=x; x=x-1; i) > (y+x) ? 10 : ...

第二題:dao

(i=x; x+=1; i) * (j=x; x-=1; j) != ...

2樓:

第一題bai因為1>0 而值為10

第二du題,答案為4無爭議。

你說的zhi問題dao是編譯器專

的問題,例屬如 x++*x--+--x 的問題,類似vc6.0編譯器會先將x++或x--的x值都取出來然後再做運算

可能和正常的理解不太一樣,但編譯器就是這樣編譯的,你可以多用幾個例子試一試,就知道了 。

3樓:小小孩love靛藍

第一題,x--是一個copy賦值語句,相當於baix=x-1,再將自減後的dux進行操作。x-->(y+x)?10:12.5>y++?'a':'z'

從左zhi至右:經x--,x變為0,所以第二個daox為0。

第二題也一樣,x++,x先變為1,再經x--變為0。

x--,和x++一樣,都是先賦值再進行操作。

c語言中,有哪些算術運算子?

4樓:哇哎西西

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++)等效是毫無疑問的。

5樓:之何勿思

七個,如下:

+   -   *    /    %     ++      --

雙目運算子+和-具有相同的優先順序,它們的優先順序比運算子*、/和%的優先順序低,而運算子*、/和%的優先順序又比單目運算子 +(正號) 和 -(負號) 的優先順序低。

6樓:晟睿教育

基本表示式 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級

「,」逗號運算子。

7樓:匿名使用者

七個+ - * / % ++ --

加減乘除不用我說了吧

"%"求餘,就是算除法,值是他的餘數

"/"這個是除法,但是有一點注意,兩邊運算元全為整數時,值是取整的。

「++」是自加,比如說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. 特殊運算子:有括號(),下標,成員(→,.)等幾種。

8樓:匿名使用者

(1)關係運算子

< 小於

<= 小於等於

> 大於

>= 大於等於

以上四個優先順序相同(高)

== 等於

!= 不等於

這兩個優先順序相同(低)

關係運算子的優先順序低於算術運算子

關係運算子的優先順序高於賦值運算子

(2)邏輯運算子

&& 邏輯與 就是and的意思|| 邏輯或 就是or的意思

! 邏輯非 就是not的意思

他們的優先次序為 !-&&-||即 !的優先順序最高其中&&和||的優先順序低於關係運算子 !的優先順序高於運算子(3)算術運算子

+ 加法

- 減法

* 乘法

/ 除法

% 模運算子 即求餘運算 兩邊必須是整數 如7%4=3需要說明的是 / 即除法中 5/3的結果是1 把小數部分捨去

c語言中運算子優先順序排序C語言中運算子優先順序排序

c語言中運算子優先順序排序如下 分為優先順序15級 1 圓括號 下標運算子 分量運算子的指向結構體成員運算子 結構體成員運算子 2 邏輯非運算子 按位取反運算子 自增自減運算子 負號運算子 型別轉換運算子 型別 指標運算子和取地址運算子 長度運算子 sizeof 3 乘法運算子 除法運算子 取餘運算...

c語言中的自增運算

b 和 b的區別 b 首先返回b的值 然後b自增1 b首先b自增1,然後返回b的值 y a a a 執行順序如下 a a 1 a 1 y a y 1 y y a y 2 a a 1 a 2 y y a y 4 a a 1 a 3 a,先做自增,再使用a的值 a 先使用a的值,再做自增 y a a a...

C語言中邏輯非是什麼意思,C語言中邏輯運算子非與或的優先順序怎麼說

邏輯與 是 邏輯非 否 比如 李宇春是男人,這句話就是 邏輯非 陳冠希是男人,這句話就是 邏輯與 邏輯非bai 是c語言中邏輯運算中的一種du,其運算子號zhi為英文半形嘆dao號,即 運算回為單目運算,即只有答一個運算元,與其後面的常量或變數相結合進行運算。c語言中的邏輯運算結果均只有真和假兩種,...