C語言入門 運算子與表示式

2021-10-14 16:35:53 字數 2446 閱讀 8397

常見的運算子分類:

算術運算子:用於處理四則運算

賦值運算子:用於將表示式的值賦值給變數

比較運算子:用於表示式的比較,返回乙個真值或者假值

邏輯運算子:用於根據表示式的值返回真值或者假值

算術運算子按運算元個數可分為一元運算子(含乙個運算元)和二元運算子(含兩個運算元)。一元運算子的優先順序一般高於二元運算子一元運算子:+(正號)、-(負號)、++(自增1)、–(自減1)

二元運算子:+(加號)、-(減號)、*(乘號)、/(取商)、%(取餘)

自增自減量運算子:++(增1)、–(減1)

兩種適用形式:

字首形式:++a 為字首加形式的增 1 表示式,表示把變數 a 的值加 1 後的值作為該表示式的值,同時變數 a 本身的值加 1;–a 類似,表示把變數 a 的值減 1 後的值作為該表示式的值,同時變數 a 本身的值減 1。

int a =5;

++a--

----

----

----

--++a =

6, a =

6

字尾形式:a++為字尾加形式的增 1 表示式,表示先直接把變數 a 原來的值作為該表示式的值,然後變數 a 本身的值加 1; a-- 類似,表示先直接把變數 a 原來的值作為該表示式的值,然後變數 a 本身的值減 1

int a =5;

a++--

----

----

--a++=5

, a =

6;

增1、減1運算子的***增1、減1運算子是具有***的運算子,即不僅能改變表示式的值,也改變了變數自身的值。使用時要慎重,尤其以下兩種情況,要避免使用。

一、當乙個變數多次出現在某表示式中時,建議不要將增 1 或減 1 運算子應用於該變數

二、多參函式呼叫時,如果乙個變數出現在多個實參中時,不要對該變數使用增 1 或減 1 運算子。不同編譯器可能得到不同結果,出現歧義性。

除法運算子(/):

當運算子 / 的運算元(被除數和除數)均為整數時,結果為取商(取整)。

16/5

==3

取餘運算子(%):當運算子 % 的運算元(被除數和除數)均為整數時,結果為取餘。

16%5

==1

在程式設計中,經常使用求商和求餘運算子分解整數的各位數字。例如,分解十進位制整數 123 的個位、十位和百位數字,可以有多種不同的分解方案,下面是其中一種方案。

int a =

123, b,c ,d;

b = a %10;

//個位

c =(a /10)

/%10//十位

d =(a/10)

/10//百位

「真」用數字「1」來表示, 「假」用數字「0」來表示。

運算子優先順序:

不需要專門記憶,也沒有必要。哪個優先順序高、哪個優先順序低我們很難記住。當時用到時查詢即可。

當乙個表示式**現多個運算子時,c語言會先比較各個運算子的優先順序,按照優先順序從高到低的順序依次執行;當遇到優先順序相同的運算子時,再根據結合性決定先執行哪個運算子:如果是左結合性就先執行左邊的運算子,如果是右結合性就先執行右邊的運算子。

自動型別轉換(隱式轉換):遵循一定的規則由編譯系統自動完成。

強制型別轉換:把表示式的運算結果強制轉換成所需的資料型別。

注意:

C語言運算子與表示式

運算子是一種向變異程式說明乙個特定的數學或邏輯運算的符號。主要有三大類 算術運算子 關係運算與邏輯運算子 按位運算子。除此之外,還有一些用於完成特殊任務的運算,如賦值運算子 條件運算子 逗號運算子等。c語言的運算子歸納如下 1 算術運算子 2 關係運算子 3 邏輯運算子 4 位運算子 按位與 運算子...

C語言 運算子與表示式

1.運算子 用於進行某種運算的符號 通過涉及到的數目分為單目運算子 i 雙目運算子 三目運算子 判斷 a b 在c語言中a b 是不等價與 b a 的,ru i i j 與 i j i c語言運算優先順序,單目運算子 算術運算子 關係運算子 邏輯運算子 條件運算子 賦值運算子 逗號運算子 1 算術運...

C 運算子與表示式

作用 用於處理四則運算 算術運算子包括以下符號 運算子術語示例結果 正號 33 負號 3 3 加 10 515 減10 55 乘10 550 除10 52 取模 取餘 10 31 前置遞增 a 2 b a a 3 b 3 後置遞增 a 2 b a a 3 b 2 前置遞減 a 2 b a a 1 b...