C運算子與運算式 Mr.CFG
先說一下,不管任何一種程式,在敘述句後一定得加上一個分號「;」,告訴編譯器此行程式到此結束。進入主題….
先舉個例子:
a = b + 10;
= 和 + 就是運算子
a 、 b 、 10是運算元
而a = b + 10是運算式
加個分號就成為一個敘述,而程式就是由許多敘述構成。
運算子分很多種。
指定運算子:=
算術運算子:+ 、 - 、 * 、 / 、%(取餘數)
例:
int a,b,c = 10;
b = c+1;
a = b+10;
宣告兩個整數變數a與b,而c等於10
將c+1的值指定給b,將b+1的值指定給a
關係運算子 |
意義 |
邏輯運算子 |
意義 |
> |
大於 |
&& |
AND |
< |
小於 |
| | |
OR |
>= |
大於等於 |
! |
NOT |
<= |
小於等於 |
|
|
==(註) |
等於 |
|
|
!= |
不等於 |
|
|
例:
int a = 11,b = a - 1,c;
c = (a>b && b = 10);
判斷a是否大於b,b是否等於10
眞值(true)為1
偽值(false)為0
兩者皆成立為眞值
所以c = 1
註:這裡的等於與上面指定運算子不同,一個是運算時的等號,另一個是比較兩者關係的等號!
遞增遞減運算子
++ 與 --
功能是將變數+1或-1
例:
int a=1;
a++;
a++就是a = a + 1的意思,雖然可以直接使用後者,但在龐大的程式碼中務必要使其簡潔。
a++ 與 ++a並不同,前者是將變數a的值先取出使用,結束後再+1
後者則是將a先+1後再取出其值使用。
三元運算子
由 ? 與 : 構成
會先看?前的式子是否成立,成立(眞值)就將:前的值指定給變數,若不成立(false)就將:後的值指定給變數。
例:
int a,b=10,c=11;
a = b==c ? b : c ;
由於b>c不成立
所以將c的值指定給a
a = 11
當然還有其他運算子,不過先說這些常用的。
下次將會打出一些程式碼(運用以上運算子)與說明printf()和scanf()的使用。
留言列表