運算子:計算機就是用來計算(運算)的
c語言中提供了大量用於計算的符號級運算子,例如:+ -*/...
表示式:運算符合數字(變數)結合起來的式子 即稱為表示式
例如: 1+2 a+b
+ - * / %:加 減 乘 除 取餘 (模運算子)
注意事項:
1)如果參與除法運算的兩個數字都是整型數字 運算結果也為整型(運算結果只保留了整數部分)3/2結果為1
2)/和%不能對整數0進行操作,否則程式崩潰 例如:5/0,5%0
3)%不能對浮點數使用,編譯報錯 例如:5%1.1
4)如果/運算時 浮點數0.0
5/0.0 得到的是無窮大 inf
**a = 100; //將右邊的值給到左邊的變數
//本質就是將右邊的值寫入變數 a 對應記憶體中去
1)使用方式一
int a = 10;
a = 20;
2) 使用方式二
int a, b, c;
a = b = c = 0;
3) 使用方式三
賦值運算子=和其它運算子結合起來使用
a += b; 等價於 a = a + b;
a -= b; 等價於 a = a - b;
a *= b; 等價於 a = a * b;
a /= b; 等價於 a = a / b;
a %= b; 等價於 a = a % b;
注意事項:
賦值運算子的左側是變數
不能是常量(字元常量『a』/整型常量100/浮點數1.1)
100=a;//編譯器報錯
100=200;//編譯器報錯
不能是表示式
a + b = c;//編譯器報錯 **
定義:
自增運算子使得變數對應記憶體中的只加1
自減運算子使得變數對應記憶體中的值減1
使用方式:
前++:先對變數的值加1,然後再去計算表示式的值
後++:先計算表示式的值,然後再去給變數做加1的操作
前--:先對變數減1,後算表示式的值
後--:先算表示式的值,後完成對變數的減1操作
注意事項:
不能對常量進行自增自減操作
100++;
--100;// 編譯器報錯
==:判斷是否相等
!=:判斷是否不等
: 判斷是否大於<: 判斷是否小於
=:判斷是否大於等於
=:判斷是否小於等於
注意:
1)關係運算子的運算結果只有兩種值:
1(俗稱真或者true)
0(俗稱假或者false)
2)不要進行連續的關係運算
邏輯運算子有三個:
&&:邏輯與(並且)
||:邏輯或(或者)
!:邏輯非(取反)
邏輯運算返回值 只有兩種:
真/1/true
假/0/false
**邏輯與
語法格式:
c = 表示式a && 表示式b
語義:只有a和b值都為真(非0), c的值才為真
邏輯或語法格式:c = 表示式a || 表示式b
語義:只有a和b值都為真(非0), c的值才為真
邏輯非語法格式:!表示式a
語義:表示式a為真,運算結果為假
表示式a為假,運算結果為真**
注意事項:短路運算
形式1:
a && b, 如果a的值為假,b的**就不會被執行了
例如:int a = 1;
int res = 0;
res = 1 > 2 && ++a;
printf("a=%d\n", a); //1
int b = 1;
res = 2>1 && ++b;
printf("b=%d\n", b);//2
形式2:
a || b, 如果a的值為真 , b的**就不會被執行了
int a =1;
int res = 0;
res = 1>2 || ++a;
printf("a=%d\n", a);//2
int b = 1;
res = 2>1 || ++b;
printf("b=%d\n", b);//1
運算子與表示式
學習c語言時,在我們已經學習了型別,常量與變數,接下來就是通過學習運算子與表示式對型別,常量與變數進行運算。簡單說一下概念,用來對資料進行運算的符號,就可以稱為運算子。c中運算子和資料構成的式子,就稱為表示式。表示式再在其後加乙個分號,即構成c 語言語句。先說一下運算子吧。c語言的運算子多,一般記住...
運算子與表示式
數 算 注意事項 兩端的變數必須是同種型別,並返回同種型別。取餘運算,負數的餘數符號與被模數符號相同,1 5 1,1 5 1 num n,n 0,結果範圍 0,n 是週期函式。注意整除問題 1 2 0 整數的除法是整除 1.0 2 0.5 1d 2 0.5 單獨的前 後自增或自減是沒區別的,有了賦值...
運算子與表示式
1.了解什麼是表示式 表示式是由運算子與資料組成的式子,每乙個表示式都有運算的結果。2.我的老師每次使用這個運算子的時候都會說到這個老梗,sizeof是運算子不是函式,別看sizeof後面還要加乙個括號,但不是所有的都是函式。這也從側面sizeof在面試題中經常出現。3.隱式轉換型別 由於有的編譯系...