C語言學習——運算符號

1.運算符號是啥
C語言中的運算就是對數據進行操作、處理的過程。那麼運算符又幹什麼的呢?運算符就是指定該運算的處理方式。
※ 算術運算符 ※ 賦值運算符※ 關係運算符※ 邏輯運算符※ 三目運算符

2.算術運算符
C語言基本算術運算符如下表:
除法運算中注意:
如果相除的兩個數都是整數的話,則結果也爲整數,小數部分省略,如8/3 = 2;而兩數中有一個爲小數(不分前後),結果則爲小數,如:9.0/2 = 4.500000
取餘運算中注意:
該運算只適合用兩個整數進行取餘運算,如:10%3 = 1;而10.0%3則是錯誤的;運算後的符號取決於被模數的符號,如(-10)%3 = -1;而10%(-3) = 1。取決於前者
注:C語言中沒有乘方這個運算符,也不能用×,÷等算術符號。

3.自增與自減運算符
注意:無論是a++還是++a都等同於a=a+1,在表達式執行完畢後a的值都自增了1,無論是a--還是--a都等同於a=a-1,在表達式執行完畢後a的值都自減少1,但是在一開始的代碼輸入時必須先取值(即:a++),而在末尾段若出現a++或者a+
那麼最終的值仍爲a(沒運算),因爲a++的意思是先取值再運算,a++的值只有在下一次運算上才用的上,但是如果下一次是printf("%d\n",a)的話,即沒有運算,則取沒運算的a
例如:c=b++ 的值仍爲b 而不是b+1,只有再下一次運算時的值才爲b才變爲b+1

4.賦值運算符
C語言中賦值運算符分爲簡單賦值運算符和複合賦值運算符,之前我們已經接觸過簡單賦值運算符“=”號了,下面講一下複合賦值運算符:
複合賦值運算符就是在簡單賦值符“=”之前加上其它運算符構成,例如+=、-=、*=、/=、%=。
如:
分析:定義整型變量a並賦值爲3,a += 5;這個算式就等價於a = a+5; 將變量a和5相加之後再賦值給a
同理:a *= 2 意思是 a = a * 2
注意:複合運算符中運算符和等號之間是不存在空格的。

5.關係運算符
下面是C語言中的關係運算符:
關係表達式的值是“真”和“假”,在C程序用整數1和0表示,0表示不存在的,假
1表示存在的,真
注意:>=,<=,==,!=這種符號之間不能存在空格。
例子

6.邏輯運算符
下面我們看一下C語言中的邏輯運算符:
那麼前面的那個算式寫成計算機可以看的懂的算式就是:x>7 && x<100;
邏輯運算的值也是有兩種分別爲“真”和“假”,C語言中用整型的1和0來表示。其求值規則如下:
1) 與運算(&&)
參與運算的兩個變量都爲真時,結果才爲真,否則爲假。例如:5>=5 && 7>5 ,運算結果爲真;
2) 或運算(||)
參與運算的兩個變量只要有一個爲真,結果就爲真。 兩個量都爲假時,結果爲假。例如:5>=5||5>8,運算結果爲真;
3) 非運算(!)
參與運算的變量爲真時,結果爲假;參與運算量爲假時,結果爲真。例如:!(5>8),運算結果爲真。
例如:


7.三目運算符
C語言中的三目運算符:“?:”,其格式爲:
 表達式1 ? 表達式2 : 表達式3; 

執行過程是:
先判斷表達式1的值是否爲真,如果是真的話執行表達式2;如果是假的話執行表達式3。
注意輸出: printf("%c\n", price <= money? 'y': 'n')



8.運算符大比拼之優先級比較
優先級別爲1的優先級最高,優先級別爲10的優先級別最低。
來看一看下面的例子:
解析:C語言中運算符中最高等級的爲(),因此執行過程爲:
1、先計算a>3和a+3的結果,計算後算式爲1*a-14%3;
2、再計算1*a和14%3的結果,計算後算式爲11-2;
3、最後算出結果爲9。



















發佈了27 篇原創文章 · 獲贊 85 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章