Microsoft Word - ch 校.doc

Size: px
Start display at page:

Download "Microsoft Word - ch 校.doc"

Transcription

1 變數與基本資料型別 CHAPTER 3 基本資料型別 延伸資料型別 字元 字串常值 整數 浮點數常值 符號常數 識別字與保留字 變數宣告 指定 算術 複合指定 遞增和遞減運算子 關係 邏輯運算子 運算子的優先順序 強制型別轉換 自動型別轉換 檢測模擬考題解析 3.1 資料型別 電腦軟體就是用來處理各類的資料, 以解決人類生活上的問題 生活中有各式各樣的資料, 例如姓名 身高 年齡 數量 車牌號碼 編號 等 這些資料的內容有些是屬於文字, 例如姓名 車牌號碼 等 有些是屬於數值內容, 例如身高 年齡 等 在 C 語言中定義了一些基本資料型別, 來處理各類的資料 在程式執行中為了方便快速存取資料, 資料會存在記憶體中 所以在使用相關資料時, 如果能根據資料的類別和可能的大小, 配置合適的記憶體空間, 如此才能順利運作又不浪費記憶體 例如學生人數是沒有小數的數值資料, 平均分數是有小數的數值資料, 政府總預算是有效位數較多的數值資料 身份證字號是長度為 10 的字串資料 基本資料型別 1. char 字元資料型別使用 8 位元 (1 Byte) 來存放字元資料, 有效範圍為 -128 ~ 127 char 可以代表電腦系統中的字元, 例如 A~Z ~ + - * / 等字元符號, 這些字元是以 ASCII 碼 (0~255) 存入記憶體 有些系統會將 char 轉為無號數, 增加可容納的範圍 (0~255) 電腦中最小記憶體單位為 Bit,8 個 Bits 會組合成一個 Byte

2 C 語言基礎必修課 記憶體 (Bit) char 資料 2. int 整數資料型別使用 32 位元 (4 Bytes) 來存放整數資料, 有效範圍為 -(2 31 ) ~ +(2 31-1) 若資料超過此範圍, 或有小數位就必須改成以浮點數來存放 3. float 單精確度浮點數資料型別使用 32 位元 (4 Bytes) 來存放帶有小數位數的實數資料, 有效範圍約為 -3.4x10-38 ~ 3.4x10 38, 有效位數約 6~7 位數 (10 進制 ) 4. double 倍精確度浮點數資料型別使用 64 位元 (8 Bytes) 來存放帶有小數位數的實數資料, 有效範圍約為 -1.8x ~ 1.8x10 308, 有效位數約 15~16 位數 (10 進制 ) 在 C 語言中, 每種資料型別都有規定的大小範圍, 例如 int 整數值是使用 4 Bytes 來存放 如果整數資料超過最大值 +(2 31-1) = +2,147,483,647 時, 就會發生資料溢位 (Overflow) 的現象 反之, 若整數小於 -(2 31 ) = -2,147, 483,648 也會發生資料不足位 (Underflow) 的現象 要特別注意, 在 C 語言中如果發生資料溢位或不足位現象時, 並不會產生錯誤訊息, 所以程式設計者要自行留意 C 語言提供結構資料型別, 來處理陣列 字串 結構, 至於指標資料型別是用來存取記憶體某個位址的內容, 這些較特殊的資料型別將在後面章節中陸續介紹 延伸資料型別 C 語言為了要增加或降低基本資料型別的精確度和所佔用記憶體, 可以使用 short long unsigned 等修飾詞, 來宣告為延伸資料型別 1. short 使用 short 修飾詞, 會減少資料的有效範圍 處理的資料若介於 -32,768 ~ +32,677 之間, 使用 4 Bytes 的 int 來儲存會浪費記憶體, 此時可以改用 short int 資料型別, 長度僅為 2 Bytes 較節省記憶空間 short int 可以簡寫為 short 2. long 使用 long 修飾詞, 會增加資料的有效範圍 long int 可以簡寫為 long, 但是 long int 在編譯器為 32 位元的環境下, 其長度與 int 都為 4 Bytes 3. unsigned 使用 unsigned 修飾詞會將資料改為正整數, 整數值會由 0 開始 3-2

3 變數與基本資料型別 3 資料型別常值種類長度有效範圍 char 字元 1Byte -128 ~ 127 short (int) 短整數 2Bytes ~ int 整數 4Bytes ~ long (int) 長整數 4Bytes ~ unsigned char 無號字元 1Bytes 0 ~ 256 unsigned short (int) 無號短整數 2Bytes 0 ~ unsigned int 無號整數 4Bytes 0 ~ unsigned long (int) 無號長整數 4Bytes 0 ~ float 單精確浮點數 4Bytes 約 -3.4x10-38 ~ 3.4x10 38 ( 有效位數 6~7 位 ) double 倍精確浮點數 8Bytes 約 -1.8x ~ 1.8x ( 有效位數 15~16 位 ) long double 長倍精確浮點數 16Bytes 約 -1.2x ~ 1.2x [ 註 ] 上表的資料可能會因電腦系統而不同 ( 有效位數 18~19 位 ) 要知道常值或變數所占記憶體的長度, 可用 sizeof() 函式來查詢 : (sizeof.c) printf("char 資料常值占用的記憶體大小 : %d \n", sizeof('a')); printf("int 資料常值占用的記憶體大小 : %d \n", sizeof(123)); printf("double 資料常值占用的記憶體大小 : %d \n", sizeof(123.45)); 3.2 常值與符號常數 所謂 常值 (Literal, 或稱字面值 ) 或稱 常數 (Constant), 是指資料本身的值不需要經過宣告, 就直接以電腦能處理的數值或字元資料存在敘述中 例如數字 3 字串 "three" 字元'A' 等 而符號常數 ( 或稱常數符號 ) 是指宣告後到程式執行結束, 該數的值不會隨著程式執行而改變 C 語言提供的常值有 : 1. 字元常值是用來顯示單一字元 2. 字串常值是用來顯示連續的字元 3. 整數常值用來顯示整數 4. 浮點常值是用來顯示帶有小數點數字的資料 3-3

4 C 語言基礎必修課 顯示基本資料型別常值 (basic_type.c) printf("%c 是 char 常值 \n", 'A'); printf("%d 是 int 常值 \n", 123); printf("%f 是 double 常值 \n", ); 字元常值字元常值是指用單引號頭尾框住的字元, 字元必須是屬於可顯示或可列印, 例如 :'A' ~ 'Z' 'a' ~ 'z' '0' ~ '9' 等 在程式中, 若必要時可用該字元的 ASCII 碼的十六進制表示 例如 'A' 的 ASCII 碼為 = 41 16, 所以使用 x41 會在螢幕上顯示大寫字母 A, 數值前面加 x 是表示該數值為十六進制 另外, 也可以該字元的 ASCII 碼以八進制表示, 例如 'A' 的 ASCII 碼為 = 101 8, 其寫法為 101 分別使用十六和八進制顯示 'A' 字元 (char.c) printf(" 十六進制 x41 的字元為 :\x41"); printf(" 八進制 101 的字元為 :\101"); 有些字元已經被定義成其他的特殊功能, 來當做程式中的控制字元, 例如單引號 (') 雙引號 (") 及反斜線 (\), 我們將這些字元稱為 逸出字元 (Escape Character) 使用 printf() 函式顯示訊息時, 如果有用到逸出字元時, 必須在該字元的前面加上一個 '\' 反斜線構成逸出序列 (Escape Sequence) 當編譯器掃描到這些逸出序列時, 會將反斜線後面的字元, 當成某種特殊意義來處理 詳細的逸出字元用法, 請參考下一章的說明 使用逸出序列的各種簡例 : (escape.c) 01 printf("it\'s a book.\n"); It's a book. 02 printf("\"how are you?\" said Jerry.\n"); "How are you?" said Jerry. 03 printf("\\\\\\ 注意事項 ///\n"); \\\ 注意事項 /// 1. 第 1 2 行 : 單引號 ( ' ) 雙引號 ( " ) 前加反斜線 ( \ ), 才能正常顯示 2. 第 3 行 :"\\\\\\" 六個反斜線只會顯示出三個反斜線 字串常值 字串常值是由一個或一個以上的連串字元, 頭尾使用雙引號 " 括住, 例如 : "Welcome" " 反毒 " "1234" 另外,'a' 為字元常值, 而 "a" 則為字串常值 3-4

5 變數與基本資料型別 整數常值整數常值是指沒有帶小數位數的整數數值, 例如 C 語言提供十進位制 (Decimal) 八進位制(Octal) 及十六進位制 (Hexadecimal) 三種方式, 來處理整數常值 1. 十進位制 : 在日常生活中習慣使用十進制來做計數, 程式中十進制數值的表示方式和一般習慣相同 程式中一連串的數字, 會視為十進制的 int 整數資料, 例如 123 數值後加 l( 小寫 L) 或 L 指定該值型別為 long 長整數, 例如 123l 或 123L 數值後加 u 或 U 指定該值型別為 unsigned int 無號整數, 例如 123u 或 123U 2. 八進位制 : 八進制是由數字 0 ~ 7 構成, 程式中要使用八進制數值必須以數字 0( 非字母 O) 開頭, 例如 十六進位制 : 十六進制是由數字 0 ~ 9 和字母 A ~ F 構成, 程式中要使用十六進制數值必須以 0x 或 0X 開頭 ( 為數字 0 開頭非字母 O), 例如 0x7b 或 0X7B 使用十 八 十六進制顯示整數常值 123: (int_literal.c) printf(" 十進制 123 顯示 :%d\n",123); 123 printf(" 十進制 123L 顯示 :%d\n",123l); 123 printf(" 十進制 123u 顯示 :%d\n",123u); 123 printf(" 八進制 0173 顯示 :%d\n",0173); 123 printf(" 十六進制 0X7B 顯示 :%d\n",0x7b); 浮點數常值浮點數 (Floating Point) 常值又稱為實數常值, 當我們需要用到帶小數點的數值時, 就必須使用浮點數常值 在 C 語言中浮點數有兩種表示方式, 一種是常用的小數點表示法, 例如 ; 另一種則是標準 IEEE-754 科學記號, 例如 e+2( x10 2 ) 例如數學式的 1.23x10 8 的數值, 在 C 語言中可用 或 1.23E8 來表示 在 C 語言中, 浮點數資料型別有 32 位元的 float( 單精確 ) 64 位元的 double( 倍精確 ) 和 128 位元的 long double( 長倍精確 ), 三者的差異在位元越多能顯示的位數越多, 但佔用的記憶體也越多 當在程式中直接使用帶有小數點的數字, 數字最後面未加任何字元時, 預設為倍精確度資料, 例如 : 若在帶有小數點的數字後面緊跟 F 或 f, 例如 :12.345F 或 f 則視為單精確度資料 若在帶有小數點的數字後面緊跟 L 或 l, 例如 :12.345L 或 l 則視為長倍精確度資料 使用小數點和科學記號顯示各種浮點數常值 : (float_literal.c) printf(" 顯示 :%f\n",123.45); printf(" 顯示 :%f\n", );

6 C 語言基礎必修課 printf("123.45f 顯示 :%f\n",123.45f); printf("1.2345e2 顯示 :%f\n",1.2345e2); printf("1.2345e8 顯示 :%f\n",1.2345e8); printf("1.2345e-2 顯示 :%f\n",1.2345e-2); 符號常數有些數值常值 字串常值 等資料, 如果希望程式中維持固定不能更動時, 就會將這些資料定義為符號常數, 使用符號常數可增加程式的可讀性和容易維護 符號常數會在程式開頭定義數值常值 字串常值或公式供程式中全域使用, 常數命名習慣上一律用大寫字母, 單字之間以底線 ( _ ) 連接 宣告符號常數的語法 : #define 符號常數名稱符號常數值或 const 資料型別符號常數名稱 = 符號常數值 ; 宣告符號常數可以使用前置處理命令 #define 來定義, 也可以在程式中使用 const 來定義 在程式中如果修改符號常數的內容值, 會產生錯誤造成程式無法執行 利用符號常數宣告書名和單價, 顯示 3 本書的售價 程式碼 ( 檔名 :ex03\define\define.c) 01 #include <stdio.h> 02 #include <stdlib.h> 03 #define BOOK_TITLE "C 語言基礎必修課 " 04 const int PRICE = 500; 05 int main(int argc, char *argv[]) { 06 int num=3; 07 printf("%s %d 本合計 %d 元 \n", BOOK_TITLE, num, num * PRICE); 08 /*PRICE = 550;*/ 09 system("pause"); 10 return 0; 11 } 3-6

7 變數與基本資料型別 3 1. 第 3 行 : 使用前置處理命令 #define, 定義 BOOK_TITLE 字串符號常數, 其有效範圍為整個程式 2. 第 4 行 : 使用 const 定義 PRICE 整數符號常數, 其有效範圍為整個程式 3. 第 7 行 : 直接使用符號常數來顯示或計算 4. 第 8 行 : 在程式中若修改符號常數的內容值, 會產生錯誤無法執行 3.3 識別字與保留字 識別字在現實的生活中, 我們會為周遭的人 事 地 物賦予名稱, 以方便說明和識別, 例如 小明牽來福去河濱公園散步 在程式設計時, 對程式中所使用的變數 常數 函式 等也會給於名稱, 這些名稱就稱為 識別字 (Identifier, 或稱識別項 ) 識別字在程式中必須是唯一的名稱, 不允許重複定義 識別字的命名規則如下 : 1. 識別字是由大小寫英文字母 阿拉伯數字和底線 (_) 所組成 但識別字的第一個字元限用英文字母或底線 (_) 當開頭, 第二個字元以後才可以使用數字, 至於空白字元或其他特殊字元是不被允許的 2. C 語言將大小寫字母視為不相同的字元, 所以 pass Pass PASS 為三個不同的識別字 3. 不能使用保留字 ( 或稱關鍵字 ) 當作識別字 4. 識別字可以為任意長度, 但是早期的 C 編譯器會限制長度 內部識別字名稱只認得最前面 31 字元, 外部識別字則只有前 6 個字元有效 5. ANSI C 標準保留兩個底線開頭的識別字名稱, 例如 : asm volatile... 等為系統保留字, 專供編譯器使用 另外, 以一個底線加上大寫字母開頭的識別項名稱, 習慣上作為系統使用的識別字 所以請避免使用以兩個底線和一個底線加上大寫字母開頭的識別字名稱, 以免編譯時產生錯誤 下列為合法的識別字 : p sum _ok stu_score lucky7 GoodMoring 下列為不合法的識別字 : 7Eleven 不能以數字開頭 A B 不能使用空白字元 B&Q 不能使用 & 字元 int 不能使用保留字 inline 編譯器系統保留字 總計 不能使用中文 3-7

8 C 語言基礎必修課 保留字 保留字 (Reserved Word) 又稱關鍵字 (Keyword), 是 C 語言定義具特定用途供程式設計 使用的識別字 透過這些保留字, 配合運算子 (Operator) 分隔符號 (Seperator).. 等, 就可 以撰寫出各種敘述 (Statement) 因為保留字已經有特定用途, 所以不允許使用保留字來做 識別字 下表為 ANSI C 所定義的保留字 : auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while 3.4 變數 常值不必經過宣告就可直接在程式中使用, 而變數 (Variable) 的內容值會隨程式執行而改變 在下面敘述中, 其中 a b 為變數, 而 1 為整數常值 a = b + 1; 變數使用前必須先行宣告 (Declare), 宣告變數時要給予一個名稱, 並指定資料型別 程式經過編譯後, 系統就會根據宣告的資料型別, 配置對應的記憶體空間給該變數使用 要存取變數時, 在低階語言要指定記憶體位址, 但在高階語言是利用一個變數名稱來指定 會較簡便 例如宣告一個 num 變數, 資料型別為 char 初值為 1 的示意圖如下 : 記憶體 (Bit) 變數值為 1 num 1 char 資料型別變數 num 宣告變數時要選擇適當的資料型別, 才不會佔用太大的記憶空間, 或超出範圍造成溢位或不足位而產生錯誤結果 例如學生人數可以用無號整數資料型別, 因為人數不會為負, 如果人數少於兩百五十人可以使用 unsigned char 型別, 最節省記憶體 又例如要將 數值存入變數中, 因為是屬於浮點數所以應使用 float 或 double 資料型別, 不可以使用 int 資料型別 另外, 使用 32 位元的 float 型別已經足夠儲存 -3.14, 雖然也可以使用 double 型別, 但是會浪費較大的記憶體空間 變數的宣告語法如下 : 3-8

9 變數與基本資料型別 3 方法 1 僅宣告未設定初值資料型別變數名稱 1 [, 變數名稱 2 ]; 方法 2 宣告並設定初值 建議使用資料型別變數名稱 1 = 初值 1 [, 變數名稱 2 = 初值 2 ]; 1. 使用方法 1 僅宣告變數但未設定初值時,C 語言會先從記憶體中配置記憶空間給該變數使用, 當程式執行到指定變數初值時, 才將初值置入對應的記憶體位址內 萬一所配置的記憶體空間已經有資料, 若未指定初值就直接讀取變數值時, 可能造成不可預期的結果 所以應該儘量在變數宣告後馬上給予初值, 或使用方法二宣告變數 2. 使用方法 2 時, 可以在宣告變數的同時指定變數的初值 3. 如果同資料型別有兩個 ( 含 ) 以上的變數要宣告時, 可以在同一行敘述中一起宣告, 變數間以, 逗號加以區隔即可 變數的名稱除了要遵循識別字的命名規則外, 要使用易懂而且有意義的名稱, 以提高程式的可讀性 不要貪圖一時方便, 使用簡單且無意義的字母當做變數名稱, 會造成以後維護程式的困擾 變數的命名通常依照下列方式來命名 : 1. 駝峰式命名法 (Camel Case) 用有意義的英文單字串連來命名, 一般第一個單字會以小寫字母開頭, 第二個單字起第一個字母改用大寫表示, 就像駱駝的駝峰一般 如果變數名稱是單一單字, 例如 : 單價 可以使用 price 變數名稱 如果是多個單字的組合, 例如 : 特價 可以使 priceforvip 變數名稱 2. 匈牙利命名法在變數名稱前面加上資料型別縮寫的字首 ( 可以用三個字或一個字 ), 可以馬上知道該變數得資料型別, 縮寫時一般是省略 a e i o u 這些母音 例如 :chrend( 字元變數 ) intnum inum( 整數變數 ) fltaverage ( 浮點變數 ) dtaxes( 倍精確變數 ) 下列為宣告變數的範例 : char cyesno = 'y'; /* 宣告 cyesno 為字元變數並設定初值為 'y' */ /* 宣告 passscore maxscore minscore 為無號短整數變數, 並設定初值 */ unsigned short passscore = 60, maxscore = 100, minscore = 0; int iincome, ipay = 500; /* 宣告 iincome ipay 為整數變數,iPay 設初值 */ iincome = 50000; /* 指定 iincome 變數值為 */ float fheight, fweight; /* 宣告 fheight fweight 為浮點數變數 */ float total = E+6; /* 宣告 total 為浮點數變數, 並設初值 */ double dvalue; /* 宣告 dvalue 為倍精確度變數 */ 3-9

10 C 語言基礎必修課 3.5 運算子 運算子 (Operator) 是指對運算元做特定運算的符號, 例如 + - * /... 等 運算元 (Operand) 是運算的對象, 運算元可以為變數 常值或是運算式 而運算式 (Expression) 是由運算元與 運算子所組成的計算式 運算式 num 運算元運算子運算元運算子運算元 運算子若按照運算所需要的運算元數目來分類, 可以分成 : 1. 一元運算子 (Unary Operator):-( 負 ) ++( 遞增 ) ++( 遞減 ), 如 :-5 ++x y-- 2. 二元運算子 (Binary Operator):+ - * / +=... 等, 如 :x + y x / y 3. 三元運算子 (Ternary Operator) ::? 條件運算子, 如 :max = x > y? x : y ; C 語言所提供的運算子, 如果按照運算子的性質可分為七大類 : 1. 指定運算子 (Assignment Operator) 2. 算術運算子 (Arithmetic Operator) 3. 複合指定運算子 (Shorthand Assignment Operator) 4. 遞增運算子 (Increment Operator) 5. 遞減運算子 (Decrement Operator) 6. 關係運算子 (Relational Operator) 7. 邏輯運算子 (Boolean Logical Operator) 指定運算子 宣告變數指定初值, 或是要改變數值時, 可以使用指定運算子 = 指定時可以將一個常值 變數或運算式的結果, 指定為變數的變數值, 其語法為 : 變數名稱 = 常值 變數 運算式 ; 例如將變數 x 指定變數值為 1, 寫法為 :x=1; 又例如變數 x 指定變數值為 y z 變數的和, 其寫法為 :x = y + z ; 上面兩個例子的示意圖如下: 1 x y 1 z 2 1 x

11 變數與基本資料型別 3 如果多個變數要同時指定相同的變數值時, 可以將指定運算子串接 例如同時指定整數變數 x y 和 z 的變數值為 1, 其寫法如下 : x = y = z = 1 ; 下列為指定變數值的範例 : x = 5; /* 指定 x 變數值為常值 5 */ x = y; /* 指定 x 變數值為變數 y 的值 */ x = 5 + y;/* 指定 x 變數值為運算式 5+y 的結果 */ x = y = 5;/* 指定 x y 變數值都為常值 5 */ 算術運算子 算術運算子可以用來執行數學運算, 包括加法 減法 乘法 除法 取餘數 等 下 表為 C 語言常用的算術運算子 : 運算子 功能說明 範例 結果 ( 假設 y=4) + 加法 x = y + 2 x 變數值為 6 - 減法 x = y - 2 x 變數值為 2 * 乘法 x = y * 2 x 變數值為 8 / 除法 x = y / 2 x 變數值為 2 % 取整數的餘數 x = y % 2 x 變數值為 0 >> 右移位元 x = y >> 2 x 變數值為 1( 等於除以 4) << 左移位元 x = y << 2 x 變數值為 16( 等於乘以 4) 下列為算術運算子的範例 : int length = ; 求三角形的周長, 結果為 47 float area = 12.5 * 8.7; 求長方形的面積, 結果為 int x = 24 % 5; 求兩整數的餘數, 結果為 4 已知圓的半徑為 6.4, 請算出圓的面積 圓周長和四分之一圓的面積 程式碼 ( 檔名 :ex03\arithmetic\arithmetic.c) 01 #include <stdio.h> 02 #include <stdlib.h> 03 #define PI int main(int argc, char *argv[]) { 05 double r=6.4; 06 printf(" 圓的半徑為 %f, 圓面積為 %f\n",r, PI*r*r); 07 printf(" 圓的半徑為 %f, 圓周長為 %f\n",r, PI*r*2); 08 printf(" 圓的半徑為 %f,1/4 圓面積為 %f\n",r, PI*r*r/4); 3-11

12 C 語言基礎必修課 09 system("pause"); 10 return 0; 11 } 複合指定運算子在程式中若需要將某個變數值運算後, 再將運算結果指定給該變數時, 可以利用複合指定運算子來簡化敘述 例如將 x 變數值加 5, 再指定給 x 變數寫法為 : x = x + 5; 因為指定運算子 (=) 的左右邊都有相同的變數 x, 此時可以使用複合指定運算子來簡化 敘述, 程式寫法改為 : x += 5; 下表是 C 語言常用的複合運算子 : 運算子 功能 範例 結果 (x 變數值原為 3) = 指定 x = 3 x 變數值為 3 += 相加後再指定 x += 2 ( x = x + 2) x 變數值為 5 -= 相減後再指定 x = 2 (x = x - 2) x 變數值為 1 *= 相乘後再指定 x *= 2 (x = x * 2) x 變數值為 6 /= 相除後再指定 x /= 2 (x = x / 2) x 變數值為 1 %= 相除取餘數後再指定 x %= 2 (x = x % 2 ) x 變數值為 遞增和遞減運算子 ++ 遞增運算子 (Increment Operator) 和 -- 遞減運算子 (Decrement Operator) 都屬於一元運算子, 用來對指定的變數值作加 1 和減 1 的運算 運算子若在變數前面稱為 前置式 如 :++x 或 --x, 會先做遞增減動作後才指定變數值 反之, 若運算子在變數後面則為 後置式 如 :x++ 或 x--, 會先指定後才做遞增減動作 遞增 減運算式一般運算式寫法結果 ( 若 x=2) y = ++x ; x = x + 1 ; y = x ; y = x++ ; y = x ; x = x + 1 ; x = 3, y = 3 x = 3, y =

13 變數與基本資料型別 3 遞增 減運算式一般運算式寫法結果 ( 若 x=2) y = --x ; x = x 1 ; y = x ; y = x-- ; y = x ; x = x 1 ; x = 1, y = 1 x = 1, y = 2 y 指定給 y 3 = ++ 前置式 x 先加 1 x 2 3 y 先指定給 y 2 = x x 才加 後置式 關係運算子 關係運算子 (Relational Operator) 又稱為 比較運算子 是屬於二元運算子, 可以對兩 個運算元作比較, 並傳回比較結果 如果比較的結果是成立, 傳回結果為真 (true)c 語言以 1 表示 若不成立, 傳回結果為假 (false) 以 0 表之 關係運算子常配合 if 等選擇結構, 來 決定程式的流向 下表是 C 語言常用的關係運算子 : 關係運算子 功能 數學表示式 範例 結果 ( 若 x=1 y=2) == 等於 x = y x == y 0( 假 )!= 不等於 x y x!= y 1( 真 ) >= 大於等於 x y x >= y 0( 假 ) <= 小於等於 x y x <= y 1( 真 ) > 大於 x > y x > y 0( 假 ) < 小於 x < y x < y 1( 真 ) 練習各種關係 遞增和遞減運算子的運算 程式碼 ( 檔名 :ex03\relational\relational.c) 01 #include <stdio.h> 02 #include <stdlib.h> 03 int main(int argc, char *argv[]) { 04 int a = 2, b = 3; 05 printf("a = %d, b = %d a < b = %d\n", a, b, a < b); 06 printf("a = %d, b = %d a >= b = %d\n", a, b, a >= b); 07 printf("a = %d, b = %d\n", a, b); 08 printf("++a == b = %d\n", ++a == b); 09 printf("a = %d, b = %d\n", a, b); 3-13

14 C 語言基礎必修課 10 printf("a!= b-- = %d\n", a!= b--); 11 printf("a = %d, b = %d\n", a, b); 12 system("pause"); 13 return 0; 14 } 1. 第 5 行 : 因為 a=2 b=3, 所以 a < b 的值為 1( 真 成立 ) 2. 第 6 行 : 因為 a=2 b=3, 所以 a >= b 的值為 0( 假 不成立 ) 3. 第 8 行 : 因為 ++a 為前置式,a 會先加 1 變數值為 3, 所以 a==b 的值為 1 4. 第 9 行 : 第 8 行敘述執行後,a=3 b=3 5. 第 10 行 : 因為 b-- 為後置式, 所以會先執行 a!= b 傳回值為 0, 然後 b 才減 1 變數值為 邏輯運算子 邏輯運算子 (Logical Operator) 屬於二元運算子, 可以對兩個運算元作邏輯運算, 並傳 回運算結果 邏輯運算子運算的結果, 只有 1( 真 ) 和 0( 假 ) 兩種 邏輯運算子可以用來測試 較複雜的條件, 常常用來連結多個關係運算子 例如 (score >= 0) && (score <= 100), 其中 (score >= 0) 和 (score <= 100) 為關係運算子, 兩者用 &&( 且 ) 邏輯運算子連接, 表示兩個條 件都要成立才為真, 所以上述表 score 要介於 0~100 邏輯運算子常結合關係運算子, 在 if 等選擇結構中決定程式的流向 下表為 C 語言提供的邏輯運算子 : 邏輯運算子 功能 範例 結果 ( 若 x=1 y=0) 說明 && 且 x && y 0( 假 ) 兩者皆真結果才為真 或 x y 1( 真 ) 只要一個為真結果就為真! 非!x 0( 假 ) 相反 ( 原為真結果為假 ) 下表列出邏輯運算子的各種運算結果 : x y x && y x y!x!y

15 變數與基本資料型別 3 下列為邏輯運算子的範例 : (1 < 2) && ('A' == 'a') 結果 0( 因為前者為真後者為假,&& 必須兩者皆真才為真 ) (-1 < 0) (-1 > 100) 結果 1( 因為前者為真, 一個真就為真 )!( 'A'!= 'a') 結果 0( 因為 'A'!= 'a' 為真, 所以做! 運算後結果為假 ) 運算子的優先順序 程式中的運算式可能非常複雜, 如果同時有多個運算子時,C 語言就必須根據一套規 則, 才能計算出正確的結果 基本原則為由左至右依序運算, 但有些運算子優先權較高必須要優先處理 下表為常用運算子的優先執行順序 : 優先次序運算子 (Operator) 運算次序 1 ()( 呼叫函數 ) []( 陣列註標 ) ++( 後置 ) --( 後置 ) () 由左至右 2!( 非 ) +( 正號 ) -( 負號 ) ++( 前置 ) --( 前置 ) 由右至左 3 *( 乘 ) / ( 除 ) %( 取餘數 ) 由左至右 4 +( 加 ) -( 減 ) 由左至右 5 << ( 左移 ) >> ( 右移 ) 由左至右 6 < <= > >= ( 關係運算子 ) 由左至右 7 == ( 相等 )!= ( 不等於 ) 由左至右 8 && ( 且邏輯運算子 ) 由左至右 9 ( 或邏輯運算子 ) 由左至右 10?: ( 條件運算子 ) 由右至左 11 = += -= *= /= %= <<= >== &= ^=!= ( 指定 複合指定運算子 ) 由右而左 12, ( 逗號 ) 由左至右 例如運算式 * 3, 因為 * 運算子的優先順序高於 +, 所以會先計算 2*3 結果為 6, 然後 所以結果為 7 運算式使用() 左右括號, 不但可以減少運算錯誤增加可讀性, 而且可以改變運算的順序 例如上面運算式改為 (1 + 2) * 3 時, 因為 用 () 括住所以要先計算結果為 3, 然後 3 * 3 結果為 * 3 / 2 % 5 = 2 (operator.c) (2 == 2) + 2 =

16 C 語言基礎必修課 int x=2, y=3; x >= y && x!= y x * 2 > y = 1 int x=2, y=3, z=4; z += ++x - --y 資料型別轉換 C 語言在宣告變數時要注意資料型別的範圍, 宣告範圍太大會浪費記憶體空間 ; 範圍太小時則會造成溢位的錯誤 為避免超出範圍產生的錯誤, 可以使用強制型別轉換 (Cast) 來自行轉型, 和利用系統的 自動型別轉換 (Automatic Type Conversion) 來轉型 前者是採外顯方式 (Explicit) 方式, 而後者是採隱含方式 (Implicit) 轉型 強制型別轉換在程式當中, 必要時可以將變數的資料型別做轉換, 例如將整數轉型為浮點數, 或將浮點數變數轉型為整數 強制型別轉換是採外顯方式語法如下 : ( 新資料型別 ) 變數名稱 ; 小範圍資料型別轉型為較大範圍型別時, 變數值沒有問題 但是大範圍轉型為較小範圍資料型別時, 變數值就會失真 例如浮點數強制轉型為整數時, 會將小數部分直接捨棄, 不會做四捨五入的運算 int i =(int) f; 變數 f 先轉型為 int, 才指定給整數變數 i (float) i * 2.5 變數 i 先轉型為 float, 才和 2.5 做乘法運算 體驗溢位產生的錯誤結果, 以及強制資料型別轉換 程式碼 ( 檔名 :ex03\cast\cast.c) 01 #include <stdio.h> 02 #include <stdlib.h> 03 int main(int argc, char *argv[]) { 04 unsigned char x = 255; 05 printf("++x = %d\n", ++x); 06 signed char y =127; 3-16

17 變數與基本資料型別 3 07 printf("++y = %d\n", ++y); 08 unsigned char x2 = 255; 09 int x3 = (int) x2; 10 printf("++x3 = %d\n", ++x3); 11 double z = 3.99; 12 printf("z = %f, z * 2 = %f\n", z, z * 2); 13 printf("(int) z = %d, (int) z * 2 = %d\n",(int) z,(int) z * 2); 14 printf("x2=%d, x2 / 2=%d, (float)a/2=%f\n",x2, x2 / 2, (float) x2 / 2); 15 system("pause"); 16 return 0; 17 } 1. 第 5 行 :x 變數值為 255 加 1 後變數值應為 256, 但 x 的資料型別為 unsigned char 範圍為 0~255, 會產生溢位結果值為 0 要注意編譯時, 並不會有任何錯誤提示 2. 第 7 行 :y 變數值為 127 加 1 後變數值應為 128, 但 y 的資料型別為 signed char 範圍為 -126~127, 會產生溢位結果值為 -128 編譯時一樣不會有任何錯誤提示 3. 第 9 行 :x2 資料型別為 unsigned char 變數值為 255, 用 (int) 強制轉型為整數, 然後指定給整數變數 x3 4. 第 10 行 :x3 變數值為 255 加 1 後, 因為 int 範圍大不會溢位所以值為 第 13 行 :z 變數值為 3.99, 用 (int) 強制轉型為整數, 小數部分會無條件捨棄, 所以變數值為 3, 會造成運算結果失真 6. 第 14 行 :x2 變數值為 255, 因為型別為 unsigned char 除以 2 後結果 127, 小數位數被捨棄了 如果希望提高精確度, 可以先將 x2 強制轉型為 float, 運算後的結果為 自動型別轉換當運算式中如果有資料型別不同的數值要做運算時, 除非主動使用強制型別轉換外, 否則系統會做自動型別轉換, 將資料型別轉成一致後再進行運算 自動型別轉換是屬於採隱含方式, 如果兩個不同資料型別的資料需要做運算時, 是將型別長度較小的資料先轉成型別長度較大者, 兩者調整為相同的資料型別才做運算 其轉型規則如下 : char int long float double 資料型別長度短 資料型別長度長 3-17

18 C 語言基礎必修課 編譯器在編譯運算式時, 會檢查運算元的資料型別 如果相同時, 就會直接進行運算 如果不相同時, 會將資料型別長度短的資料轉換成較長的資料型別, 然後才進行運算 所以在 C 語言中做除法運算時, 如果有一個運算元為浮點數資料型別, 就會自動轉型為浮點數 此時, 除法運算會採用浮點數除法就是我們熟悉的除法運算, 會計算到小數部份 但是如果兩個運算元都是整數, 則會採用整數除法 整數除法只會計算整數部份, 小數部份會無條件捨去 為避免運算結果失真, 應該使用前面介紹的強制型別轉換 printf("%f\n", 3/10); 執行結果為 不是期望的 0.3 printf("%d\n", 3/2); 執行結果為 1 不是 1.5, 因為小數部分被無條件捨棄 printf("%f\n", 3.0/10); 執行結果為 , 因為 3.0 是浮點數常值 printf("%f\n", (float)3/2); 執行結果為 , 因為用 (float) 強制轉型 練習運算式的自動型別轉換 程式碼 ( 檔名 :ex03\automatic\automatic.c) 01 #include <stdio.h> 02 #include <stdlib.h> 03 int main(int argc, char *argv[]) { 04 float f = 5 / 2; 05 printf("f = 5 / 2, f = %f\n", f); 06 printf("5.5 / 2 = %f\n", 5.5 / 2); 07 int i=2; short s=25; double d=2.5; 08 f=2.5; 09 printf("(i + f) + ( s / d) = %f\n", (i + f) + ( s / d)); 10 system("pause"); 11 return 0; 12 } 1. 第 4 行 :5 / 2 運算式的兩個運算元 5 和 2 資料型別都是整數, 所以就直接用整數相除結果為整數 2 指定給 float 型別變數 f 時, 會轉型為 float 結果變數值為 第 6 行 :5.5 / 2 運算式的兩個運算元 5.5 和 2, 資料型別分別為 double 和整數, 所以 2 會先轉型為 double, 才做相除運算結果為 2.75 資料型別為 double 3-18

CHAPTER VC#

CHAPTER VC# 1. 2. 3. 4. CHAPTER 2-1 2-2 2-3 2-4 VC# 2-5 2-6 2-7 2-8 Visual C# 2008 2-1 Visual C# 0~100 (-32768~+32767) 2 4 VC# (Overflow) 2-1 2-2 2-1 2-1.1 2-1 1 10 10!(1 10) 2-3 Visual C# 2008 10! 32767 short( )

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

Microsoft PowerPoint - 02_運算.pptx

Microsoft PowerPoint - 02_運算.pptx 回顧 第一個程式 基本架構 五行必寫的公式 註解的寫法 cout

More information

Microsoft PowerPoint - C_Structure.ppt

Microsoft PowerPoint - C_Structure.ppt 結構與其他資料型態 Janet Huang 5-1 結構的宣告 struct 結構名稱 struct 結構名稱變數 1, 變數 2,, 變數 m; struct 結構名稱 變數 1, 變數 2,, 變數 m; student; student; 5-2 1 結構變數初值的設定 struct 結構名稱 struct 結構名稱變數 = 初值 1, 初值 2,, 初值 n student="janet","1350901",100,95

More information

VB.Net

VB.Net VB.NET 視窗程式設計基本語法 : 變數宣告 NTU CSIE 講師 : 張傑帆 VB.NET 基本語法 在學習視窗程式之前我們需要先熟悉一下 Visual Basic 的基本語法, 包括 : 變數 運算子 選擇性結構 重複結構 陣列 程序 及結構化例外處理等語法 這些語法是程式邏輯的基礎, 也是程式和電腦硬體溝通, 並指揮電腦內部運作的橋梁 電腦五大單元 識別字 (Identifier) 程式

More information

新版 明解C言語入門編

新版 明解C言語入門編 328, 4, 110, 189, 103, 11... 318. 274 6 ; 10 ; 5? 48 & & 228! 61!= 42 ^= 66 _ 82 /= 66 /* 3 / 19 ~ 164 OR 53 OR 164 = 66 ( ) 115 ( ) 31 ^ OR 164 [] 89, 241 [] 324 + + 4, 19, 241 + + 22 ++ 67 ++ 73 += 66

More information

FY.DOC

FY.DOC 高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主

More information

C C

C C C C 2017 3 8 1. 2. 3. 4. char 5. 2/101 C 1. 3/101 C C = 5 (F 32). 9 F C 4/101 C 1 // fal2cel.c: Convert Fah temperature to Cel temperature 2 #include 3 int main(void) 4 { 5 float fah, cel; 6 printf("please

More information

Java 程式設計入門

Java 程式設計入門 Java 程式設計入門 講師 : 陳昭源 CISE, NTU August 28, 2005 Outline 變數 Variables 運算子 Operators 運算式 (Expressions) 敘述(Statements) & 程式區塊 (Blocks) 流程控制 Control Flow Statements if-else statements switch statements August

More information

新・解きながら学ぶC言語

新・解きながら学ぶC言語 330!... 67!=... 42 "... 215 " "... 6, 77, 222 #define... 114, 194 #include... 145 %... 21 %... 21 %%... 21 %f... 26 %ld... 162 %lf... 26 %lu... 162 %o... 180 %p... 248 %s... 223, 224 %u... 162 %x... 180

More information

新・明解C言語入門編『索引』

新・明解C言語入門編『索引』 !... 75!=... 48 "... 234 " "... 9, 84, 240 #define... 118, 213 #include... 148 %... 23 %... 23, 24 %%... 23 %d... 4 %f... 29 %ld... 177 %lf... 31 %lu... 177 %o... 196 %p... 262 %s... 242, 244 %u... 177

More information

Microsoft Word - 投影片ch03

Microsoft Word - 投影片ch03 Java2 JDK5.0 教學手冊第三版洪維恩編著博碩文化出版書號 pg20210 第三章變數與資料型態 本章學習目標認識變數與常數認識 Java 的基本資料型態學習如何進行資料型態轉換學習如何由鍵盤輸入資料 變數與資料型態 3-2 Java 的資料型態分為 : 與 原始資料型態 (primitive type) 非原始資料型態 (non-primitive type) 原始資料型態包括了整數與浮點數等型態

More information

新版 明解C++入門編

新版 明解C++入門編 511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,

More information

Microsoft PowerPoint - ICP_02_Basic_Data_Type.ppt [相容模式]

Microsoft PowerPoint - ICP_02_Basic_Data_Type.ppt [相容模式] Introduction to Computer and Program Design Lesson 2 Basic Data Types James C.C. Cheng Department of Computer Science National Chiao Tung University The basic data types 變數 (variable) 是甚麼? 變數代表了一塊可以記錄資料的記憶體空間,

More information

C/C++语言 - C/C++数据

C/C++语言 - C/C++数据 C/C++ C/C++ Table of contents 1. 2. 3. 4. char 5. 1 C = 5 (F 32). 9 F C 2 1 // fal2cel. c: Convert Fah temperature to Cel temperature 2 # include < stdio.h> 3 int main ( void ) 4 { 5 float fah, cel ;

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

C/C++语言 - 运算符、表达式和语句

C/C++语言 - 运算符、表达式和语句 C/C++ Table of contents 1. 2. 3. 4. C C++ 5. 6. 7. 1 i // shoe1.c: # include # define ADJUST 7. 64 # define SCALE 0. 325 int main ( void ) { double shoe, foot ; shoe = 9. 0; foot = SCALE * shoe

More information

街街街街街街街街

街街街街街街街街 1 基本輸出入 與四則運算 本章大綱 5.1 本章的教學目標 5.2 Java 語言的運算子 5.3 算術與字串連接運算子 5.4 位元運算子 5.5 資料型態的轉換 5.1 本章的教學目標 程式語言有許多的算術運算所組成, 本章將介紹 Java 程式語言中基本輸出入運算子的功能與使用方式, 運算子包括 : 指定運算子 算數與字串連接運算子 位元運算子 資料型態的轉換運算子的功能與相關應用, 讓各位同學了解不同運算子的使用時機與應用方法

More information

碩命題橫式

碩命題橫式 一 解釋名詞 :(50%) 1. Two s complement of an integer in binary 2. Arithmetic right shift of a signed integer 3. Pipelining in instruction execution 4. Highest and lowest layers in the TCP/IP protocol suite

More information

Microsoft PowerPoint - STU_C_Lang_CH13.ppt

Microsoft PowerPoint - STU_C_Lang_CH13.ppt 第 13 章 動態配置記憶體 程式設計與生活 - 使用 C 語言 Shi-Huang Chen Spring 2013 第 13 章 動態配置記憶體 13-1 記憶體配置函式 malloc( ) 13-2 動態配置結構陣列 配置記憶體 預估需求數量的範圍是一項不容易的學問 例 : 大到預估今年國家預算, 小到預估櫥窗裡展示的毛線衣, 需要多少磅毛線才能織成 撰寫程式時, 一樣無法預估程式執行所需的記憶體空間

More information

C

C C 2017 3 14 1. 2. 3. 4. 2/95 C 1. 3/95 C I 1 // talkback.c: 2 #include 3 #include 4 #define DENSITY 62.4 5 int main(void) 6 { 7 float weight, volume; 8 int size; 9 unsigned long letters;

More information

Microsoft Word - ACL chapter02-5ed.docx

Microsoft Word - ACL chapter02-5ed.docx 第 2 章神奇的質數 2.1.1 什麼是質數 1 1 1 打下好基礎 - 程式設計必修的數學思維與邏輯訓練 1 1 0 10 2 3 5 7 4 6 8 9 10 4 10000 1229 1000 168 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131

More information

Microsoft PowerPoint - 04-array_pointer.ppt

Microsoft PowerPoint - 04-array_pointer.ppt Array 與 Pointer Array Dynamical Memory Allocation Array( 陣列 ) 陣列是用來存放同樣型態的資料陣列的大小必須在程式中預先設定在程式執行中, 陣列的大小無法改變陣列中的資料是透過索引 (index) 來存取 一維陣列的宣告 type array_name[array_size]; int iarray[100]; /* an integer array

More information

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 Excel - - Excel - -4-5 840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 ( 0 ) 智慧標籤 相關說明提示 -5 -- Excel 4 5 6 7 8 + - * / % ^ = < >= & 9 0 (:) (,) ( ) Chapter - :,

More information

!49 第 二講 資料型態 運算子與表示式 講師 : 李根逸 (Ken-Yi Lee),

!49 第 二講 資料型態 運算子與表示式 講師 : 李根逸 (Ken-Yi Lee), !49 第 二講 資料型態 運算子與表示式 講師 : 李根逸 (Ken-Yi Lee), E-mail: feis.tw@gmail.com !50 課程 大綱 資料型態 [P.51] C/C++ 內建的常 見資料型態 [P.52] 使 用 sizeof 看 大 小 [P.53] 變數宣告 [P.54] 不同資料型態間的差異 [P.55] 整數 (short int, int, long int)

More information

C 1

C 1 C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=

More information

Microsoft PowerPoint - Chapter3

Microsoft PowerPoint - Chapter3 第三章資料型別與運算 課程目標 1. 暸解 VBA 程式設計可用之資料型態 2. 定義變數 3. 運算子與優先順序 4. 變數與資料運算實務案例 - 業績獎金自訂函數範例與延伸 2 資料型別 在 VBA 巨集語言當中, 資料被分成十種基本型別, 再加上使用者自訂型別物件型別及附於 Variant 型別中的 Decimal 型別, 總共是十三種資料型態的表示法 3 數字資料型別 數字類資料型態的種類共可以分為

More information

C/C++程序设计 - 字符串与格式化输入/输出

C/C++程序设计 - 字符串与格式化输入/输出 C/C++ / Table of contents 1. 2. 3. 4. 1 i # include # include // density of human body : 1. 04 e3 kg / m ^3 # define DENSITY 1. 04 e3 int main ( void ) { float weight, volume ; int

More information

untitled

untitled A, 3+A printf( ABCDEF ) 3+ printf( ABCDEF ) 2.1 C++ main main main) * ( ) ( ) [ ].* ->* ()[] [][] ** *& char (f)(int); ( ) (f) (f) f (int) f int char f char f(int) (f) char (*f)(int); (*f) (int) (

More information

C/C++ - 文件IO

C/C++ - 文件IO C/C++ IO Table of contents 1. 2. 3. 4. 1 C ASCII ASCII ASCII 2 10000 00100111 00010000 31H, 30H, 30H, 30H, 30H 1, 0, 0, 0, 0 ASCII 3 4 5 UNIX ANSI C 5 FILE FILE 6 stdio.h typedef struct { int level ;

More information

Excel VBA Excel Visual Basic for Application

Excel VBA  Excel Visual Basic for Application Excel VBA Jun5,00 Sub 分頁 () Dim i As Integer Dim Cname As String Dim Code As Variant Set score=thisworkbook.sheets("sheet") Code=Array(" 專北一 "," 專北二 "," 專北三 "," 專桃園 "," 專桃竹 "," 專中苗 ", " 專台中 "," 專台南 ","

More information

Microsoft Word - AEL 序.doc

Microsoft Word - AEL 序.doc chapter 常數變數與資料 本章重點 2.1 C++ 程式結構 2.2 常數與變數 2.3 C++ 資料型態 2.4 習題 C++ 全方位學習 2.1 C++ 程式結構 一般而言, 一個複雜的 C++ 大程式是由許多不同檔案的小模組所組成, 而一個簡單的 C++ 小程式可儲存於單一檔案中 然而一個簡單的 C++ 小程式可概分為七部分 : 程式註解區 前置處理區 公用變數區 程式起始區 區域變數區

More information

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023)

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023) ( CIP) /. :, 2005. 2 ( ) ISBN 7-5624-3339-9.......... TP311. 1 CIP ( 2005) 011794 : : : : * : : 174 ( A ) :400030 : ( 023) 65102378 65105781 : ( 023) 65103686 65105565 : http: / /www. cqup. com. cn : fxk@cqup.

More information

nooog

nooog C : : : , C C,,, C, C,, C ( ), ( ) C,,, ;,, ; C,,, ;, ;, ;, ;,,,, ;,,, ; : 1 9, 2 3, 4, 5, 6 10 11, 7 8, 12 13,,,,, 2008 1 1 (1 ) 1.1 (1 ) 1.1.1 ( ) 1.1.2 ( ) 1.1.3 ( ) 1.1.4 ( ) 1.1.5 ( ) 1.2 ( ) 1.2.1

More information

C/C++ Programming

C/C++ Programming 265 第九講 結構 講師 : 李根逸 (Ken-Yi Lee), E-mail: feis.tw@gmail.com 266 課程 大綱 結構 (struct) 結構宣告 [P.267] 結構定義 [P.268] 結構變數宣告 [P.269] 結構變數的初始化 [P.272] 存取結構成員 [P.244] 傳送 大型資料型態參數 [P.277] 267 結構宣告 結構是 一種衍 生的 自訂資料型態,

More information

Microsoft Word - ACG chapter00c-3ed.docx

Microsoft Word - ACG chapter00c-3ed.docx Python 好好玩, 趣學電玩遊戲程式設計 Python Python BASIC Java JavaScript PHP C++ BASIC Python Python Python Xbox PlayStation Nintendo - 2 - 簡介 : 互動式 Python Shell : 編寫程式 Python File editor : 猜數字 : 腦筋急轉彎 : 龍域 ( ) : 使用

More information

chap07.key

chap07.key #include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,

More information

Python a p p l e b e a r c Fruit Animal a p p l e b e a r c 2-2

Python a p p l e b e a r c Fruit Animal a p p l e b e a r c 2-2 Chapter 02 變數與運算式 2.1 2.1.1 2.1.2 2.1.3 2.1.4 2.2 2.2.1 2.2.2 2.2.3 type 2.2.4 2.3 2.3.1 print 2.3.2 input 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 + 2.4.6 Python Python 2.1 2.1.1 a p p l e b e a r c 65438790

More information

Microsoft PowerPoint - CH02 Introduction to C++ Programming_輸入與輸出 [相容模式]

Microsoft PowerPoint - CH02 Introduction to C++ Programming_輸入與輸出 [相容模式] Ch2. Introduction to C++ Programming 輸入與輸出 標準 I/O 課程名稱 : 程式設計 Computer Programming 班級 : 資管一 Freshman, ISMS 任課教師 : 謝明哲 Hsieh, Ming-Che, Miller 單位職稱 : 台東大學資管系副教授 Associate Professor, ISMS, NTTU 電子郵件 :hmz@nttu.edu.tw

More information

(Microsoft PowerPoint - \262\304\244\273\263\271)

(Microsoft PowerPoint - \262\304\244\273\263\271) 第六章 VHDL 電路設計語言中表示式 表示式 VHDL 電路設計語言中的表示式, 係用來計算出一個式子中的算術或邏輯數值 在一個表示式中, 通常包含有 2 種的組成元素, 一為運算元 (Operand), 另一為運算子 (Operator) 在 VHDL 電路設計語言中, 表示式的語法構成了一個程式執行或計算的基本單元, 使程式具有實質計算上的意義 2 運算子 (Operator) VHDL 電路設計語言中,

More information

untitled

untitled Introduction to Programming ( 數 ) Lecture 3 Spring 2005 March 4, 2005 Lecture 2 Outline 數 料 If if 狀 if 2 (Standard Output, stdout): 料. ((Standard Input, stdin): 料. 類 數 數 數 說 printf 見 數 puts 串 數 putchar

More information

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit 6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C51 6.1 C51 6.1.1 C51 C51 ANSI C MCS-51 C51 ANSI C C51 6.1 6.1 C51 bit Byte bit sbit 1 0 1 unsigned char 8 1 0 255 Signed char 8 11 128

More information

C/C++语言 - 分支结构

C/C++语言 - 分支结构 C/C++ Table of contents 1. if 2. if else 3. 4. 5. 6. continue break 7. switch 1 if if i // colddays.c: # include int main ( void ) { const int FREEZING = 0; float temperature ; int cold_ days

More information

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1 0 0 = 1 0 = 0 1 = 0 1 1 = 1 1 = 0 0 = 1 : = {0, 1} : 3 (,, ) = + (,, ) = + + (, ) = + (,,, ) = ( + )( + ) + ( + )( + ) + = + = = + + = + = ( + ) + = + ( + ) () = () ( + ) = + + = ( + )( + ) + = = + 0

More information

3.1 num = 3 ch = 'C' 2

3.1 num = 3 ch = 'C' 2 Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:

More information

新・解きながら学ぶJava

新・解きながら学ぶJava 481! 41, 74!= 40, 270 " 4 % 23, 25 %% 121 %c 425 %d 121 %o 121 %x 121 & 199 && 48 ' 81, 425 ( ) 14, 17 ( ) 128 ( ) 183 * 23 */ 3, 390 ++ 79 ++ 80 += 93 + 22 + 23 + 279 + 14 + 124 + 7, 148, 16 -- 79 --

More information

C

C C 2017 4 1 1. 2. while 3. 4. 5. for 6. 2/161 C 7. 8. (do while) 9. 10. (nested loop) 11. 12. 3/161 C 1. I 1 // summing.c: 2 #include 3 int main(void) 4 { 5 long num; 6 long sum = 0L; 7 int status;

More information

C++ 程式設計

C++ 程式設計 C C 料, 數, - 列 串 理 列 main 數串列 什 pointer) 數, 數, 數 數 省 不 不, 數 (1) 數, 不 數 * 料 * 數 int *int_ptr; char *ch_ptr; float *float_ptr; double *double_ptr; 數 (2) int i=3; int *ptr; ptr=&i; 1000 1012 ptr 數, 數 1004

More information

資料結構之C語言重點複習

資料結構之C語言重點複習 鏈結串列自編教材 ( 一 ) 本教材 ( 一 ) 目標問題 : 每次以亂數產生一 [0,1000] 之整數值, 若該值 >100, 則以同方式繼續產生下一亂數值, 若該值

More information

untitled

untitled 不 料 料 例 : ( 料 ) 串 度 8 年 數 串 度 4 串 度 數 數 9- ( ) 利 數 struct { ; ; 數 struct 數 ; 9-2 數 利 數 C struct 數 ; C++ 數 ; struct 省略 9-3 例 ( 料 例 ) struct people{ char name[]; int age; char address[4]; char phone[]; int

More information

Microsoft Word - part doc

Microsoft Word - part doc 3 指標與陣列 3-1 指標與一維陣列 3-2 指標與二維陣列 3-3 陣列指標 3-4 為什麼 parr 等同於 *parr? 3-5 指向陣列的指標 3-6 多重指標 3-7 命令列引數 3-8 除錯題 3-9 問題演練 3-10 程式實作 32 Part 1 C 程式語言篇 指標其實就是一位址 陣列的名稱, 表示此陣列第一個元素的位址, 所以它也是指標 由此可知, 指標與陣列的關係是很密切的

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc Java C++ Pascal C# C# if if if for while do while foreach while do while C# 3.1.1 ; 3-1 ischeck Test() While ischeck while static bool ischeck = true; public static void Test() while (ischeck) ; ischeck

More information

c_cpp

c_cpp C C++ C C++ C++ (object oriented) C C++.cpp C C++ C C++ : for (int i=0;i

More information

資料型態

資料型態 Chapter 3. 變數與常數 3.1 進制轉換 3.2 變數 3.3 常數 3.1 進制轉換 我們從小慣用的進制為 10 進制, 數字的組合由 0~9 來構成, 而二進制的數字組合只有 1 和 0, 十進制超過 9 則左邊的位數便加 1, 而二進制也是如此, 唯一的差異在二進制是超過 1 就在左邊的位數加 1 為什麼要使用二進制呢 ~ 原因出在於電腦只認得 0 與 1 的信號, 而我們所看見的美麗的圖案

More information

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File 51 C 51 51 C C C C C C * 2003-3-30 pnzwzw@163.com C C C C KEIL uvision2 MCS51 PLM C VC++ 51 KEIL51 KEIL51 KEIL51 KEIL 2K DEMO C KEIL KEIL51 P 1 1 1 1-1 - 1 Project New Project 1 2 Windows 1 3 N C test

More information

Ps22Pdf

Ps22Pdf C ( CIP) C /. :, 2001. 7 21 ISBN 7-5624 -2355-5. C........ C. TP312 CIP ( 2001 ) 034496 C * * : 7871092 1 /16 : 14. 25 : 356 20017 1 20017 1 : 1 6 000 ISBN 7-5624-2355-5 / TP311 : 21. 00 C, C,,,, C,, (

More information

!249 第 八講 進階指標 講師 : 李根逸 (Ken-Yi Lee),

!249 第 八講 進階指標 講師 : 李根逸 (Ken-Yi Lee), 249 第 八講 進階指標 講師 : 李根逸 (Ken-Yi Lee), E-mail: feis.tw@gmail.com 250 課程 大綱 陣列的複製 [P.252] 字串的特殊性 [P.255] const 修飾字 [P.256] 指標陣列 [P.257] 字串陣列 [P.258] 指標與 二維陣列 [P.260] 動態記憶體配置與釋放 C 語 言中動態記憶體的配置 [P.266] C 語

More information

Microsoft Word C-A卷.docx

Microsoft Word C-A卷.docx 100 學年度資訊學院程式設計會考 (C) 101/05/5 題組 :A 選擇題及填充題, 請在答案卡上作答, 實作題請填寫於答案卷上, 並於實作題上方填寫班級 姓名 學號 一 選擇題題目 1. unsigned char 的最大值 (a) 127 (b) 255 (c) 512 (d) 1023 2. 下列何者為正確的變數名稱? (a) Android (b) C++ (c) I Phone (d)

More information

int *p int a 0x00C7 0x00C7 0x00C int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++;

int *p int a 0x00C7 0x00C7 0x00C int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++; Memory & Pointer trio@seu.edu.cn 2.1 2.1.1 1 int *p int a 0x00C7 0x00C7 0x00C7 2.1.2 2 int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++; 2.1.3 1. 2. 3. 3 int A,

More information

C/C++ - 字符输入输出和字符确认

C/C++ - 字符输入输出和字符确认 C/C++ Table of contents 1. 2. getchar() putchar() 3. (Buffer) 4. 5. 6. 7. 8. 1 2 3 1 // pseudo code 2 read a character 3 while there is more input 4 increment character count 5 if a line has been read,

More information

51 C 51 isp 10 C PCB C C C C KEIL

51 C 51 isp 10   C   PCB C C C C KEIL http://wwwispdowncom 51 C " + + " 51 AT89S51 In-System-Programming ISP 10 io 244 CPLD ATMEL PIC CPLD/FPGA ARM9 ISP http://wwwispdowncom/showoneproductasp?productid=15 51 C C C C C ispdown http://wwwispdowncom

More information

Microsoft Word - CS-981.doc

Microsoft Word - CS-981.doc 4. 資料表示法 4.1 十進位與數字系統 (1). 基本觀念 數字系統的觀念 人們習慣以十進位的計量方式來計算 不同的數字系統有二進位 (Binary) 八進位 (Octal) 十進位 (Decimal) 十六進位(Hexadecimal) 二進位 電腦內部用來表達訊號的資料只有兩種符號 : 0 表示沒電,1 表示有電透過多個電路的組合表示出無數符號, 電腦便利用這些符號來表示不同的數字 利用兩條電線可以表示出

More information

Microsoft PowerPoint - sql2005_ch09.ppt

Microsoft PowerPoint - sql2005_ch09.ppt 第九章 T-SQL 設計 9-1 關於 T-SQL 9-1-1 關於程式語言 9-1-2 T-SQL 的組成 9-1-3 測試及執行 9-2 基本語法說明 9-2-1 變數及常數 9-2-2 資料型別優先順序 9-2-3 運算子 9-2-4 取得工作狀態 9-2-5 設定工作狀態 9-2-6 流程控制 9-2-7 錯誤處理 9-3 實務說明 9-3-1 日期處理 9-3-2 小數資料處理 9-3-3

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 9 [P.11] : Dev C++ [P.12] : http://c.feis.tw [P.13] [P.14] [P.15] [P.17] [P.23] Dev C++ [P.24] [P.27] [P.34] C / C++ [P.35] 10 C / C++ C C++ C C++ C++ C ( ) C++

More information

現在人類獲取地球內部訊息的方法, 是從可能影響我們身家性命安全的地震, 用數學模型把地震資料轉換成地震波速度, 進而獲得地底物質密度與深度的關係 地下世界知多少 km/s g/cm 3 P Gpa km S P S 3,000 3,000 ak K 透視地底 Percy Bridgma

現在人類獲取地球內部訊息的方法, 是從可能影響我們身家性命安全的地震, 用數學模型把地震資料轉換成地震波速度, 進而獲得地底物質密度與深度的關係 地下世界知多少 km/s g/cm 3 P Gpa km S P S 3,000 3,000 ak K 透視地底 Percy Bridgma 透視地球深處 的窗戶? extreme condition extreme environment 94.5 1 270 21 3.9 12.3 6,400 300 4,000 1864 Jules Gabriel Verne 1959 2008 1990 Paul Preuss 2003 24 2013 2 482 現在人類獲取地球內部訊息的方法, 是從可能影響我們身家性命安全的地震, 用數學模型把地震資料轉換成地震波速度,

More information

C/C++ - 函数

C/C++ - 函数 C/C++ Table of contents 1. 2. 3. & 4. 5. 1 2 3 # include # define SIZE 50 int main ( void ) { float list [ SIZE ]; readlist (list, SIZE ); sort (list, SIZE ); average (list, SIZE ); bargragh

More information

Learning by debugging

Learning by debugging Learning C by debugging 序言 這本書是我規劃 C 語言學習地圖的第三本 看完第一本的 樂在 C 語言 後, 希望您能在 戰勝 C 語言, 這也是本書取名的考量因素 同時在內容的深度與廣度上也加以擴大, 俾能對 C 有更進一步的了解 第三本是 精通 C/C++ 指標 期使您對 C 語言的核心主題 指標, 能更上一層樓 有人常問我學好程式設計的秘方是什麼, 其實沒有秘方, 只要在碰到有錯誤時

More information

Microsoft PowerPoint - chap3

Microsoft PowerPoint - chap3 第三章基本輸出與輸入的方法 資訊科技系 林偉川 本章簡介 如何從鍵盤輸入資料以及從螢幕輸出結果, 是寫程式一個很基本的技巧, 因為這也是使用者與電腦交談的重要橋樑 在 C 語言函式庫中有不少輸出 / 入相關函式, 不過較常用到的也只有其中幾個 從螢幕輸出類 : 由鍵盤輸入類 : 2 1 從螢幕輸出類 printf(): 函數名稱取 print 以及 format 兩個字組成 此函式會將我們指定的字串以指定的格式輸出在螢幕上

More information

4

4 練習 9A ( 9. 特殊角的三角比 T ( 在本練習中, 不得使用計算機 如有需要, 答案以根式或分數表示. 試完成下表 三角比 θ 0 4 60 sin θ cos θ tan θ 求下列各數式的值 (. cos 60. sin 4 4. tan 4. cos0 4 tan 0 7. sin 4 cos 4 8. cos 60 tan 4 9. tan 60sin 0 0. sin 60 cos

More information

C/C++ 语言 - 循环

C/C++ 语言 - 循环 C/C++ Table of contents 7. 1. 2. while 3. 4. 5. for 6. 8. (do while) 9. 10. (nested loop) 11. 12. 13. 1 // summing.c: # include int main ( void ) { long num ; long sum = 0L; int status ; printf

More information

投影片 1

投影片 1 資料庫管理程式 ( 補充教材 -Part2) 使用 ADO.NET 連結資料庫 ( 自行撰寫程式碼 以實現新增 刪除 修改等功能 ) Private Sub InsertButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles InsertButton.Click ' 宣告相關的 Connection

More information

Microsoft Word - ¤W½Ò¤º®e RTF

Microsoft Word - ¤W½Ò¤º®e RTF (variable) &( ) ( ) 0 9 A...Z a z under line( _ ) 1) (A...Z a z) 2) case sensitive 3) C/C++ (reserved word or key word) 1, 2,.., n char ch; int m; int n; int m, n; // float f = 10.0; // double d =f * 10.0;

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

Microsoft Word - ACI chapter00-1ed.docx

Microsoft Word - ACI chapter00-1ed.docx 前言 Excel Excel - v - 財務管理與投資分析 -Excel 建模活用範例集 5 相關 平衡 敏感 - vi - 前言 模擬 If-Then 規劃 ERP BI - vii - 財務管理與投資分析 -Excel 建模活用範例集 ERP + BI + ERP BI Excel 88 Excel 1. Excel Excel 2. Excel 3. Excel - viii - 前言 1.

More information

第3章.doc

第3章.doc 3 3 3 3.1 3 IT Trend C++ Java SAP Advantech ERPCRM C++ C++ Synopsys C++ NEC C C++PHP C++Java C++Java VIA C++ 3COM C++ SPSS C++ Sybase C++LinuxUNIX Motorola C++ IBM C++Java Oracle Java HP C++ C++ Yahoo

More information

CH09

CH09 (Preprocessor) (Macro) C++ (#) 9-1 9-2 9-3 9-4 備註 : 可依進度點選小節 9-1 前置處理器 (Preprocessor) 9-1 前置處理器 (Preprocessor) 在上圖中, 為了開發一個大型的應用程式所需的 include 檔案 原始檔案都不一定只有一個 而在連結過程當中所加入的其它目的檔案也可以是 0 到多個, 但它的副檔名不一定只有.obj,

More information

C Programming

C Programming ~ `! 1 2 $ 4 5 ^ 6 7 * 8 ( 9 ) 0 : ; + " ' C 程式編寫 #1 合法的識別字 (Valid identifiers): 免費 IDE 下載 : Code::Block 16 www.codeblocks.org/downloads/binaries/ [33MB] Code::Block-EDU Portable codeblocks.codecutter.org

More information

Microsoft PowerPoint - ch03_AEL0080.ppt

Microsoft PowerPoint - ch03_AEL0080.ppt 3 基本資料型態 能盡物之性, 則可以贊天地之化育 可以贊天地之化育, 則可以與天地矣 中庸中庸.第二十一章第二十一章 1/88 基本資料型態 3.1 3.2 3.3 3.4 3.5 3.6 3.7 整數和浮點數變數和常數算術運算標準數學函數的運算邏輯值及其運算字元與字串位元處理運算 2/88 C++ 的資料型態 C++ 資料型態 基本資料型態 整數 int, short, long 浮點數 float,

More information

Microsoft PowerPoint - C-Ch11.ppt

Microsoft PowerPoint - C-Ch11.ppt 各式各樣的資料型態 11-1 結構的基礎知識 決定新的型態 關於結構 結構資料型態可以將不同資料型態的值整合成新的型態 結構型態的宣告語法 : struct 結構型態 { 資料型態識別字 ; 資料型態識別字 ; }; 加上 struct 進行宣告 宣告結構變數 語法 : 結構型態結構變數名稱 ; 範例 : struct Car car1; 對成員進行存取 使用結構型態的成員時, 必須使用成員選擇運算子

More information

Microsoft Word - PHP 基本語法.doc

Microsoft Word - PHP 基本語法.doc 引用自 : 王勝雄, 台中市網 PHP 程式語言編寫 研習課程網址 :http://km.tceb.edu.tw/~wsx/php/index.htm 程式碼概論 一 PHP 程式碼執行方式 : 透過 Web Server 方式 : 例如利用 Apache HTTP Server 來執行.php( 或.php3) 副檔名的網頁 ( 可參考 PHP 簡介的一個簡單介紹的範例 ) 文字模式下執行程式 :

More information

第四講 資料型態及變數、常數

第四講 資料型態及變數、常數 VBA 講義 4-1 第四講資料型態及變數 常數 VBA 的資料型態 (Data Types) 資料型態使用的記憶體空間數值範圍 Byte( 短整數 ) 1 Byte 0~255 Integer ( 整數 ) 2 Bytes -32768~32767 Long ( 長整數 ) 4 Bytes -2147483648~2147483647 Single ( 單倍精準浮點 數 ) Double ( 雙倍精準浮

More information

epub 33-8

epub 33-8 8 1) 2) 3) A S C I I 4 C I / O I / 8.1 8.1.1 1. ANSI C F I L E s t d i o. h typedef struct i n t _ f d ; i n t _ c l e f t ; i n t _ m o d e ; c h a r *_ n e x t ; char *_buff; /* /* /* /* /* 1 5 4 C FILE

More information

運算子多載 Operator Overloading

運算子多載 Operator Overloading 多載 Overloading 講師 : 洪安 1 多型 編譯時期多型 ( 靜態多型 ) function overloading 函數多載 如何正確呼叫同名的函數? 利用參數個數與型態 operator overloading 運算子多載 其實同 function overloading 執行時期多型 ( 或動態多型 ) 如何正確呼叫不同物件的相同名稱的成員函數 利用繼承與多型 2 函數多載 Function

More information

Microsoft Word - Chap02.doc

Microsoft Word - Chap02.doc 標準的輸入與輸出 2-1 字元的輸出與輸入 2-2 格式化的輸出與輸入 2-3 摘要 2-4 關鍵字 2-5 問題演練 2-6 程式實作 i 上 C 語言 這一章我們將談論標準的輸入與輸出 (standard input/output) 所謂標準的輸入與輸出, 其作用端分別為鍵盤和螢幕 除了標準的輸入與輸出外,C 語言還提供檔案的輸入與輸出, 其作用端皆為檔案, 此部份留在第十一章 : 檔案, 再加以解說

More information

Chapter 3

Chapter 3 Chapter 3 Arithmetic for Computers 陳瑞奇 (J.C. Chen) 亞洲大學資訊工程學系 Adapted from class notes by Prof. C.T. King, NTHU, Prof. M.J. Irwin, PSU and Prof. D. Patterson, UCB 3.2 Addition & Subtraction p.67 ( 頁 69)

More information

C

C C 14 2017 5 31 1. 2. 3. 4. 5. 2/101 C 1. ( ) 4/101 C C ASCII ASCII ASCII 5/101 C 10000 00100111 00010000 ASCII 10000 31H 30H 30H 30H 30H 1 0 0 0 0 0 ASCII 6/101 C 7/101 C ( ) ( ) 8/101 C UNIX ANSI C 9/101

More information

Microsoft PowerPoint - Class2.pptx

Microsoft PowerPoint - Class2.pptx C++ 程式初探 II 2015 暑期 C++ 程式 II 大綱 1. 變數 2. 運算式 3. 輸出 4. 條件判斷 5. 迴圈 6. 陣列 2 基本變數型態 整數 位元組 浮點數 位元組 字元 位元組 short 2 float 4 char ( 整數 ) 1 int 2 (4) double 8 long 4 (8) long double 8(10) 位元組 整數値域 浮點數値域 準確度 1-128

More information

The golden pins of the PCI card can be oxidized after months or years

The golden pins of the PCI card can be oxidized after months or years Q. 如何在 LabWindows/CVI 編譯 DAQ Card 程式? A: 請參考至下列步驟 : 步驟 1: 安裝驅動程式 1. 安裝 UniDAQ 驅動程式 UniDAQ 驅動程式下載位置 : CD:\NAPDOS\PCI\UniDAQ\DLL\Driver\ ftp://ftp.icpdas.com/pub/cd/iocard/pci/napdos/pci/unidaq/dll/driver/

More information

Microsoft Word - DA 資料處理-講義-01

Microsoft Word - DA 資料處理-講義-01 資資資資 講義 資料處理 ( 一 ) 數字系統 人類慣用十進位系統, 而電腦預設是採用二進位系統, 因此會有十進位系統與二進位系統間的轉換 此外, 為了節省儲存空間, 有時候電腦也會使用十六進位制 下面就跟大家介紹這幾種表示法以及各種表示法之間的換算 十進位 : 0,,, 3, 4, 5, 6, 7, 8, 9 鼎文公職二進位 : 從 0 開始, 逢 進位, 所以二進位的數字非 0 即, 亦即一般統稱的二元數字

More information

<4D F736F F D DA5BFA6A1C476C1C92DBEC7ACECB8D5A8F728B57BB35D292E646F63>

<4D F736F F D DA5BFA6A1C476C1C92DBEC7ACECB8D5A8F728B57BB35D292E646F63> 全國高級中等學校 106 學年度商業類科學生技藝競賽 程式設計 職種 學科 試卷 選手證號碼 ( 崗位編號 ): 姓名 : 注意事項 : 請將答案劃記於答案卡, 未依規定劃記者不予計分 試題說明 :( 選擇題共 25 題每題 4 分, 答錯不倒扣, 共 100 分 ) ( )1. 執行以下 Visual Basic 程式片段, 其結果為何?(A) 15 (B) 12 (C) 7 (D) 3 Dim

More information

CHAPTER 1

CHAPTER 1 CHAPTER 1 1-1 System Development Life Cycle; SDLC SDLC Waterfall Model Shelly 1995 1. Preliminary Investigation 2. System Analysis 3. System Design 4. System Development 5. System Implementation and Evaluation

More information

投稿類別:資訊類

投稿類別:資訊類 投稿類別 : 資訊類 篇名 : 從 VB.Net 學 C# 作者 : 陳諭瑩 高雄市立高雄高級工業職業學校 資訊科高三乙班王子喬 高雄市立高雄高級工業職業學校 資訊科高三乙班李宗恩 高雄市立高雄高級工業職業學校 資訊科高三乙班 指導老師 : 莊利吉老師 壹 前言 一 研究動機 在高職裡 VB.Net 是課程標準, 但由於現在職場上大部分都是使用 C#, 所以我們用 VB.Net 的基礎學 C#, 再利用高職所學到的

More information

C PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha

C PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha CYPOK CYPOK 1 UltraEdit Project-->Install Language Tool: Language Suite----->hi-tech picc Tool Name ---->PICC Compiler Executable ---->c:hi-picinpicc.exe ( Command-line Project-->New Project-->File Name--->myc

More information

C/C++ - 数组与指针

C/C++ - 数组与指针 C/C++ Table of contents 1. 2. 3. 4. 5. 6. 7. 8. 1 float candy [ 365]; char code [12]; int states [50]; 2 int array [6] = {1, 2, 4, 6, 8, 10}; 3 // day_mon1.c: # include # define MONTHS 12 int

More information

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc 2 5 8 11 0 13 1. 13 2. 15 3. 18 1 23 1. 23 2. 26 3. 28 2 36 1. 36 2. 39 3. 42 4. 44 5. 49 6. 51 3 57 1. 57 2. 60 3. 64 4. 66 5. 70 6. 75 7. 83 8. 85 9. 88 10. 98 11. 103 12. 108 13. 112 4 115 1. 115 2.

More information

Visual C# 2005程式設計

Visual C# 2005程式設計 Visual Basic 2005 程式設計 第 4 章型別 變數 常數 列舉與運算子 4-1 型別 弱型別 (weakly typed) V.S. 強型別 (strongly typed) 弱型別語言 :PHP,JavaScript,VBScript( 變數不須先定義 0) 強型別語言 :VB 2005,C,C++,C#,Java 實值型別 (value type) V.S. 參考型別 (reference

More information

Microsoft PowerPoint - Bronson-v3-ch02.ppt [相容模式]

Microsoft PowerPoint - Bronson-v3-ch02.ppt [相容模式] C++ FOR ENGINEERS AND SCIENTISTS THIRD EDITION Chapter 2 Problem Solving Using C++ 1 Objectives 目標 2 In this chapter, you will learn about: Modular programs 模組化程式 Programming style 寫程式的風格 Data types 資料種類

More information

_汪_文前新ok[3.1].doc

_汪_文前新ok[3.1].doc 普 通 高 校 本 科 计 算 机 专 业 特 色 教 材 精 选 四 川 大 学 计 算 机 学 院 国 家 示 范 性 软 件 学 院 精 品 课 程 基 金 青 年 基 金 资 助 项 目 C 语 言 程 序 设 计 (C99 版 ) 陈 良 银 游 洪 跃 李 旭 伟 主 编 李 志 蜀 唐 宁 九 李 涛 主 审 清 华 大 学 出 版 社 北 京 i 内 容 简 介 本 教 材 面 向

More information

105Tr_CIS1

105Tr_CIS1 准考證號碼 : 國立臺中教育大學 105 學年度學士班日間部轉學招生考試 計算機概論試題 適用學系 : 資訊工程學系二 三年級 一 選擇題 (40%, 每題 2%) 1. 在物件導向程式設計中, 一個抽象類別 (Abstract Class) 為 A. 一個沒有方法 (method) 的類別 B. 一個不能被繼承 (inherit) 的類別 C. 一個不能被實體化 (instantiated) 的類別

More information