『+』 『-』 『*』 『/』 『%』
/
如果使用兩個整數進行除法運算,結果為整數。如果使用浮點數運算,結果為小數。
5/3=1
5.0/3.0=1.666667(保留六位小數)
%
取餘只能使用整數進行運算不能使用浮點數
5%3=2
5.0%3.0出錯
單目運算子與雙目運算子
我們將進行運算的數稱為操作物件。
1 + 2 左右兩邊都有運算元的運算子叫做雙目運算子。
正負號只有乙個運算元叫做單目運算子。
表示式用運算子和括號將運算元連線起來的式子,我們稱之為表示式。
運算子的優先順序和結合性
注1:優先順序相同的運算子,運算次序由結合性決定。
比如 3 * 4 / 5 % 6,其中乘號、除號和求餘運算子在同一優先順序,結合性是「左到右」,因此先計算 3 * 4,再計算 / 5,最後計算 % 6
再如 -i++,符號和自增運算子在同一優先順序,結合性是「右到左」,因此 -i++ 相當於 -(i++)
注2:* 目運算子是指運算元的個數,比如單目運算子只有乙個運算元,雙目運算子有兩個運算元,而三目運算子則有三個運算元。
注3:通過使用小括號可以提公升表示式的優先順序至最高。
比如 (1 + 2) * (3 - 4),其中加號、減號運算子的優先順序本身是要低於乘號運算子的,但由於使用了小括號,且結合性均是「左到右」,所以先計算 (1 + 2),再計算 (3 - 4),最後才將前兩者的結果相乘。
由上面的例子可以看出,資料型別不同進行計算會出現錯誤,要是想要輸出結果為自己想要的資料型別就要進行資料型別轉換。
注意,高精度向低精度的轉換會損失精度。
浮點型1.8強制轉換為整型就會丟失精度0.8變成1。
使用關係運算子來比較兩個數的大小關係
優先順序高:
< 小於
<= 小於等於
> 大於
>= 大於等於
優先順序低:
== 等於
!= 不等於
關係表示式
用關係表示式將兩邊的變數、資料或表示式連線起來,稱之為關係表示式。
關係表示式只會返回兩個邏輯值 0或1 (假或真)
#include
#include
#include
intmain()
! 非 取反
&& 與 同真為真 其中乙個為假結果為假
|| 或 其中乙個為真結果為真,同假為假
邏輯表示式
用邏輯運算子將兩邊的變數、資料或表示式連線起來,稱為邏輯表示式:
3>1&&1<2 為真
3+1||2==0 為真 任何非0的數都為真
C語言 運算子與 運算子
我們平時使用帶參巨集時,字串中的巨集引數是沒有被替換的。例如 輸出結果為 然而,我們期望輸出的結果是 5 20 2513 14 27 這該怎麼做呢?其實,c語言允許在字串中包含巨集引數。在類函式巨集 帶參巨集 中,號作為乙個預處理運算子,可以把記號轉換成字串。例如,如果a是乙個巨集形參,那麼 a就是...
C語言 運算子和 運算子
變數 代表 取變數的位址 變數 代表 指標型的變數 取址運算子 用來取得其運算元的位址。如果運算元 x 的型別為 t,則表示式 x 的型別是 t 型別指標 指向 t 的指標 取址運算子的運算元必須是在記憶體中可定址到的位址。換句話說,該運算子只能用於函式或物件 例如左值 而不可以用於位欄位,以及那些...
C語言運算子
1級優先順序左結合 圓括號 下標運算子 指向結構體成員運算子 結構體成員運算子 字尾增量運算子 字尾增量運算子 2級優先順序右結合 邏輯非運算子 按位取反運算子 字首增量運算子 字首增量運算子 負號運算子 型別 型別轉換運算子 指標運算子 位址與運算子 sizeof 長度運算子 3級優先順序左結合 ...