day_07C語言運算子及流程控制

MediumPanda發表於2017-07-13

day_07 C語言中的運算子以及控制語句

昨日回顧:

有關標頭檔案的事:

<> 表示對應語言的標準庫
“” 表示使用者自定義的函式庫

區別:主要體現在,編譯的時候,編譯器查詢函式的宣告(先宣告,後使用;先定義,後使用)的過程。
<> 先找 標準庫 ,再找 標準連結庫 ,再找 其他函式庫(當前路徑)
“” 先找 其他函式庫(當前路徑), 再找 標準庫 ,再找 標準連結庫

效率問題:查詢速度

有關進位制的事:

進位制:表數方式

十進位制: 逢十進一 (9~0)

二進位制: 逢二進一 (1~0)

八進位制: 逢八進一 (7~0)

十六進位制:逢十六進一 (f~0)

十進位制轉二進位制:
123 -> 0111 1011

123/2 = 61 ...1   
61/2  = 30 ...1   
30/2  = 15 ...0   
15/2  = 7  ...1   
7/2   = 3  ...1   
3/2   = 1  ...1   
1/2   = 0  ...1   

運算機制:四捨六入五單進 1 2 3 4 6 7 8 9 (資料平衡)

九種控制語句
兩種選擇
三種迴圈
四種轉移

運算子(操作符,Operator)

運算子:實現運算功能的一些符號

運算元:參與運算的資料

從運算功能分類:

算術運算子:+, -, *, /, -(負號), %(模運算子), ++(自增), –(自減)
比較運算子:>, >=, <, <=, ==, !=,比較運算子的運算結果是一個布林(邏輯)值,即真或假
邏輯運算子:!(邏輯非), &&(邏輯與), ||(邏輯或),運算結果是一個邏輯值
位運算子:~(按位取反), &(按位與), |(按位或), ^(按位異或,相同為0,相異為1), >>(按位右移), <<(按位左移). 注意位運算子的運算元只能為整數型別或字元型別
條件運算子:(運算元1)?(運算元2):(運算元3)
賦值運算子:=,其運算結果就是其左值,運算效果是將右值賦給左值
複合賦值運算子:+=, -=, *=, ~=, &=等
逗號運算子:,,其運算結果為右運算元

從所帶運算元的個數分類:
一元(單目)運算子:-(符號), ++, –, !, ~等
二元(雙目)運算子:+, -, ,等
三元(三目)運算子:?:
(條件) ? 真 : 假 ;

按位右移有兩種不同的實現
算術右移(高位填充符號位)和邏輯右移(高位填充0),大多數系統都採用算術右移實現

分支結構可以巢狀使用,但建議巢狀層次不能太多,否則影響程式碼的可讀性

今日小結:
主講控制語句,順帶點了點函式,理論加實際操作進行驗證。對之前的內容進行了一次系統性的學習,加深對控制語句的理解。

相關文章