運算符
在應用程序中,經常會對數據進行運算,為此,C語言提供了多種類型的運算符,即專門用于告訴程序執行特定運算或邏輯操作的符号。根據運算符的作用,可以将 C語言中常見的運算符分為下圖中的六大類。
算術運算符
在數學運算中最常見的就是加減乘除四則運算。C語言中的算術運算符就是用來處理四則運算的符号,這是最簡單、最常用的運算符号。表 2-11列出了 C語言中的算術運算符及其用法。
算術運算符看上去都比較簡單,也很容易理解,但在實際使用時還有很多需要注意的問題,具體如下:
1、進行四則混合運算時,運算順序遵循數學中“先乘除後加減”的原則。
2、在進行自增( )和自減(--)的運算時,如果運算符( 或--)放在操作數的前面則是先進行自增或自減運算,再進行其他運算。反之,如果運算符放在操作數的後面則是先進行其他運算再進行自增或自減運算。
請仔細閱讀下面的代碼塊,思考運行的結果。
3500/1000*1000
所得結果為3000。由于表達式的執行順序是從左到右,所以先執行除法運算 3500/1000,得到結果為 3,然後再乘以 1000,最終得到的結果就是 3000。
4、取餘運算在程序設計中都有着廣泛的應用,例如判斷奇偶數的方法就是求一個數字除以 2 的餘數是1 還是 0。在進行取餘運算時,運算結果的正負取決于被餘數(%左邊的數)的符号,與餘數(%右邊的數)的符号無關。
如:(-5)%3=-2,而 5%(-3)=2。
賦值運算符
賦值運算符的作用就是将常量、變量或表達式的值賦給某一個變量。下表中列舉了 C語言中的賦值運算符及其用法。
在這個表中, “ = ” 的作用不是表示相等關系,而是賦值運算符,即将等号右側的值賦給等号左側的變量。在賦值運算符的使用中,需要注意以下幾個問題:
1、在 C 語言中可以通過一條賦值語句對多個變量進行賦值,具體示例如下:
int x, y, z;
x = y = z = 5; //為三個變量同時賦值
在上述代碼中,一條賦值語句可以同時為變量 x、y、z賦值,這是由于賦值運算符的結合性為“從右向左”,即先将 5賦值給變量 z,然後再把變量 z的值賦值給變量 y,最後把變量 y的值賦值變量 x,表達式賦值完成。
需要注意的是,下面的這種寫法在 C語言中是不可取的。
intx = y = z = 5;//這樣寫是錯誤的
2、在該表中,除了 “ = ”,其他的都是特殊的賦值運算符,接下來以“ =”為例,學習特殊賦值運算符的用法,示例代碼如下:
int x=2;
x =3;
上述代碼中,執行代碼 x = 3後,x的值為 5。這是因為在表達式 x =3中的執行過程為:
(1)将 x的值和 3的執行相加。
(2)将相加的結果賦值給變量 x。
所以,表達式 x= 3就相當于 x = x 3,先進行相加運算,在進行賦值。-=、*=、/=、%=賦值運算符都可依此類推。
多學一招:運算符的結合性
運算符的結合性指同一優先級的運算符在表達式中操作的結合方向,即當一個運算對象兩側運算符的優先級别相同時,運算對象與運算符的結合順序。大多數運算符結合方向是“自左至右”。示代碼如下:
a-b c;
上述代碼中表達式 a- b c,b兩側有-和 兩種運算符的優先級相同,按先左後右的結合方向, b先與減号結合,執行 a- b的運算,然後再執行加 c的運算。除了自左至右的結合性外, C語言還有三類運算符,它們分别是單目運算符、條件運算符和賦值運算符。以賦值運算符為例,具體代碼如下所示:
a=b c;
求關注,求轉發,求支持!
想要學習的童鞋可以加群:564950050!
同時關注我們的【輕松學C語言】
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!