Download presentation
Presentation is loading. Please wait.
1
Instructor:Po-Yu Kuo 教師:郭柏佑
EL 計算機概論 (電子一A) Introduction to Computer Science Ch. 4 運算元 Instructor:Po-Yu Kuo 教師:郭柏佑
2
本章簡介 以電腦語言寫成的運算式子我們稱之為算式。 本章節我們將討論如何將一般的數學算式, 改寫成程式語言中的算式。
以及算式的組成 - 運算元與算符, 都會作一詳細的討論。
3
算術算符
4
4-1 算術算符 C 語言程式是由敘述構成, 而敘述則是由算式 (expression) 組合而成。算式是由至少一個 『運算元』(operand) 配合『算符』(operator)所組成
5
4-1 算術算符 算式的結構如下: 運算元可以為數值或者變數, 甚至可以是其他的算式。 算符可以分成以下3種:
4-1 算術算符 算式的結構如下: 運算元可以為數值或者變數, 甚至可以是其他的算式。 算符可以分成以下3種: 算數算符:為數學的基本運算, 如加、減、乘、除等。
6
4-1 算術算符 邏輯算符:將兩個數值以邏輯關係結合, 如AND 、OR。 關係算符:描述兩個數值的關係, 如大於、小於、等於。
7
4-1 算術算符 由運算元加上算符才能算是一個完整的算式, 以一個簡單的數學式子 a+b 為例:
8
加減乘除的混合運算
9
加減乘除的混合運算
10
加減乘除的混合運算
11
4-1-2 除法算符與餘數算符 %
12
4-1-2 除法算符與餘數算符 %
13
4-1-2 除法算符與餘數算符 % 範例 : 假設今天有 100 顆球, 我們每次拿掉 7 個, 拿到最後不足 7 之數剩幾個。 100顆球
每次拿走7顆球
14
4-1-2 除法算符與餘數算符 % 程式碼 : totalball = 100; /* 總共100顆球 */
left = totalball % ball; 結果 left = 2 得到兩數相除的餘數
15
4-1-3 利用括號改變運算順序 擁有最高的優先權, 可以利用括號算符來改變算式的順序
16
關係算符
17
關係算符 關係算符是用來比較每個數值的大小關係, 共有 6 個如下:
18
關係算符 關係算符的結果只有兩種 真, True, 或 1。 假, False, 或 0。 運算結果會以整數表示 真 (1)。 假 (0)。
19
關係算符 例如: 父親的年齡 fatherage 一定比小孩年齡 childage 大, 因此其關係為:
20
判斷敘述是否正確
21
練習換行的控制
22
邏輯算符
23
邏輯算符 在邏輯算符中, 把所有的運算元都歸類成兩種: 如果運算元的值為非 0 值, 則為真。 如果運算元的值為 0 , 則為假。
C 語言所使用的邏輯算符如下:
24
4-3-1 邏輯算符的意義與推演 邏輯算符是取運算元的真假值來參與運算, 運算結果也只有兩種:真與假
邏輯算符的意義與推演 邏輯算符是取運算元的真假值來參與運算, 運算結果也只有兩種:真與假 ◎ 邏輯運算又稱為布林代數 (Boolean algebra)
25
邏輯算符的意義與推演
26
邏輯算符與其他算符的混合運用
27
邏輯算符與其他算符的混合運用
28
指定算符與其他算符
29
指定 (=) 算符 累加 ++ 與累減 -- 算符
30
指定 (=) 算符 指定數值 C 語言中的等號與關係算符中的等於不太一樣, 關係算符的 == 是『判斷是否相等』, 而單一個 = 等號是『將等號右邊的數值指定給等號左邊的變數』
31
指定 (=) 算符 指定數值
32
指定 (=) 算符 等號與其它算符合併
33
指定 (=) 算符 等號與其它算符合併
34
指定 (=) 算符 等號與其它算符合併
35
累加 ++ 與累減 -- 算符 ++ 與 -- 算符可以放在變數前面或者後面, 若與其它算符一同出現在算式中, 則放在變數『前面』、『後面』對算式會有不同影響
36
算式結構與算符的優先權
37
算式結構與算符的優先權
38
算式結構與算符的優先權 優先權高者, 先處理:數字越小表示優先權越高, 優先權高者先處理。
優先權高者, 先處理:數字越小表示優先權越高, 優先權高者先處理。 優先權同者, 由左至右處理:在算式中, 相同優先權者會從最左邊開始, 逐次將每個算符作處理。 括號算符 () 擁有最高優先權:當括號算符出現時, 左右括號括住的算式會擁有最高的優先權 指定算符 = 優先權最低:指定算符的出現都是代表著一個算式的結束
39
綜合演練
40
判斷為大寫或小寫字母
41
判斷為大寫或小寫字母 第10行中, ch>64 && ch<91, 意思就是判斷輸入的字元, 是否在ASCII碼數字 65 ~ 90之間(大寫字母)。 第11行中, ch>96 && ch<123, 意思就是判斷輸入的字元, 是否在ASCII碼數字 97 ~ 122之間(小寫字母)。
42
判斷英文字母並做大小寫轉換 試寫一程式, 讓使用者從鍵盤輸入字元, 當輸入不是英文字母, 螢幕印出訊息”The character is not English Letter!!” 。當輸入是英文字母時, 在螢幕上印出字母, 並做大小寫的轉換。 說明: 執行結果 Please input a character: h The character you typed: h The uppercase letter: H Please input a character: H The character you typed: H The uppercase letter: h OR 小寫轉大寫 大寫轉小寫
43
Homework#4 1. 學習評量 Ch3. (7), (9)。 Ch4. (3), (9) 。
提示: 程式練習(5) 輸出的結果要印出小數點。 3. 試寫一程式, 從鍵盤輸入4位數字, 當使用者輸入1個數字時, 螢幕輸出 ’*’ 。當輸入完成後, 螢幕立即輸出4位數字 。 (提示: 使用 # include <conio.h>含括檔) 說明: 執行結果 Please input 4 digit number: **** The number you typed is 1234. 使用者輸入時, 數字會被隱藏起來並印出’*’的符號。當輸入完成後, 再印出4位數字。
44
Homework#4 4. 試寫一程式, 讓使用者從鍵盤輸入字元, 當輸入不是英文字母, 螢幕印出訊息”The character is not English Letter!!” 。當輸入是英文字母時, 在螢幕上印出字母, 並做大小寫的轉換。 5. 試寫一程式, 讓使用者從鍵盤輸入2個整數, 然後將兩個整數作交換, 並在螢幕上印出, 記住不可使用任何暫存變數。 繳交期限: 2016/12/8 。
Similar presentations