算術運算子和算術表示式(優先順序,結合性等)

2021-09-07 09:44:16 字數 1501 閱讀 2309

%  得到餘數  7 % 2 得到1

c語言中,運算子的運算優先順序共分為15級。1級最高, 15級最低。在表示式中, 優先順序較高

的先於優先順序較低的進行暈死。而在乙個運算量兩側的運算子優先順序相同時, 則按運算子的

結合性所規定的結合方向處理。

c語言中各運算子的結合性分為兩種, 即左結合性(自左至右)和右結合性(自右至左)。

例如:左結合性:

算術運算子的結合性是自左至右,即先左後右。如有表示式x-y+z則y應先與「-」結合,執行

x-y,在+z的yuns。這種是左結合性。

右結合性:例如:

最典型的右結合性運算子是賦值運算子。如x=y=z, 由於=的右結合性, 應先執行y=z, 

在執行x=, 可以理解為x=(y=z)的運算。

c語言運算子中有不少為右結合性, 應注意區別,避免理解錯誤。

自增1:自增1運算子記為++, 其功能是使變數的值自增1

自減1:自減1運算子記為--, 其功能是使變數值自減1.

自增1, 自減1運算子均為單目運算, 都具有右結合性。可有一下幾種形式:

++i       i自增1後在參加其他運算。

--i i自減後在參與其他運算

i++i參與運算後, i的值在自增1

i-- i參與運算後, i的值在自減1

void

main()

// i 的值為6, j 為5

增加難度

思路:i = 5, 然後i++ , 在i-- 這時候i是5, 然後-i 也就是-5 -- 也就是-6了 

在c語言中逗號「,」也是一種運算子, 稱為逗號運算子。其功能是把兩個表示式連線起來組成

乙個表示式, 成為逗號表示式。

其一般形式為:

表示式1, 表示式2

其求值過程是分別求兩個表示式的值, 並以表示式2的值作為整個逗號表示式的值。

注意了,而實際得到的是表示式1的值

那麼怎麼才能得到第二個值呢?在外面加個括號

C語言算術運算子和算術表示式

c語言中運算子和表示式數量之多,在高階語言中是少見的。正是豐富的運算子和表示式使c語言功能十分完善。這也是c語言的主要特點之一。c語言的運算子不僅具有不同的優先順序,而且還有乙個特點,就是它的結合性。在表示式中,各運算量參與運算的先後順序不僅要遵守運算子優先順序別的規定,還要受運算子結合性的制約,以...

C 算術運算子與算術表示式

在本章中主要介紹算術運算子與算術表示式,賦值運算子與賦值表示式,逗號運算子與逗號表示式,其他運算子將在以後各章中陸續介紹。常見算數運算子 運算子說明舉例 加法運算子,或正值運算子 3 5,3 減法運算子,或負值運算子 5 2,3 乘法運算子 3 5 除法運算子 5 3 模運算子,或稱求餘運算子 兩側...

lua算術表示式優先順序筆記

從低到高 and or not 右連線 最左推導的文法上的設計應該 高優先順序的表示式總是作為低優先順序表示式的最小不可分割因子 是 e eandandort eorandort andort andort andort logict andort logict andort logict ando...