1 / 107

網際網路程式設計 C# 資料型別與流程控制

網際網路程式設計 C# 資料型別與流程控制. 鄧姚文 http://www.ywdeng.idv.tw. 參考書. 李育丞( 2012 ), ASP.NET 網頁資料庫程式設計, 博碩文化股份有限公司, ISBN 978-986-201-628-2 (書號 PG31204 ). 大綱. 認識 C# 的資料型別 學習變數的宣告與使用 學習運算子與運算式的使用 學習 C# 選擇結構語法 學習 C# 重複結構語法 學習 C# 例外處理語法. 程式 的構成 要素. 識別項( Identifier ) 陳述句( Statement )

Download Presentation

網際網路程式設計 C# 資料型別與流程控制

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 網際網路程式設計C#資料型別與流程控制 鄧姚文 http://www.ywdeng.idv.tw

  2. 參考書 李育丞(2012), ASP.NET網頁資料庫程式設計, 博碩文化股份有限公司, ISBN 978-986-201-628-2 (書號 PG31204)

  3. 大綱 認識C# 的資料型別 學習變數的宣告與使用 學習運算子與運算式的使用 學習C# 選擇結構語法 學習C# 重複結構語法 學習C# 例外處理語法

  4. 程式的構成要素 識別項(Identifier) 陳述句(Statement) 保留字(Reserved Words)、關鍵字(Keywords) 語法(Syntax)

  5. 2.1.1 識別項 • 每一個東西,都要有名字 • 沒有名字的東西,無法調用 • 同名同姓造成困擾 • 識別項 • 識別字 • Identifier

  6. 識別項命名規則 • 第一個字元必須是Unicode的英文字母(大寫或小寫)、底線 _ 字元,可以使用中文字。接在後面的字元可以是英文字母、數字或底線 _ 或中文字。 • 識別項中間不可以有空白 • 最大長度限 16,383 個字元。 • 不要以關鍵字作為識別項。 • 關鍵字之前加上前置字元 @ 可當作識別項。 • byte 為關鍵字, @byte 為識別項。 • 英文字母大小寫視為相異 • Score 和 score 不同 • 有效的識別項:_x、isEven、Part9、POOL_SIZE、七十二變 • 無效的識別項:101Metro(以數字開頭),M&M(中間出現&)、追分 成功(中間有空格)

  7. 陳述式 int m = 1; int n = 2; int p = m; m = n; n = p; • 陳述式 • 敘述 • Statement • 高階語言程式中最小的可執行單位 • 程式(Program) • 由一行一行的陳述式組成 • 陳述式的組成 • 關鍵字、運算子、變數、常數、運算式等 • 讀取/執行的方向 • 由左而右 • 由上而下 • 每一行敘述的結尾都以分號「;」結束

  8. 分號『;』標示 Statement 的結束,不管它寫成幾行

  9. 關鍵字 • 關鍵字(Key Word) • 保留字(Reserved Word) • 對編譯器(Compiler)有特殊意義而預先定義的保留識別項 • 若萬不得已必須使用關鍵字當作變數,必須在關鍵字最前面加上一個前置字元 @ • Visual Studio 顯示程式碼時,若關鍵字以藍色標示

  10. 常數與變數 • 識別項,用於代表資料或物件 • 常數(Constant) • 恆常不變者 • 變數(Variable) • 內容可以改變

  11. 常數(Constant) • 常值常數(Literal Constant) • 文數字常數 • 符號常數(Symbolic Constant)

  12. 常值常數(Literal Constant) • 程式中的文字與數字

  13. 二. 符號常數(Symbolic Constant) • 為某些文字或數字命名 • 提高可讀性 • 易於維護 • 以 const宣告 • 宣告之後就不可修改或指派新的值 • 通常以『全部大寫』的英文字母命名 • 宣告方式:

  14. 一個成績查詢範例:為何要用常數 • 一個班級60個同學 • 成績存在檔案裡 • 檔案格式:一行一個數字,整數沒有小數點,第 1 行是 1 號同學的成績,第 2 行是 2 號同學的成績,其餘依此類推,沒有空號。 • 成績查詢功能: • 輸入座號(1~60號) • 輸出成績與評語 • 評語只有『及格』、『不及格』兩種 • 成績達 60 分為及格

  15. 一個使用 Literal 的解 問題:人數若變成 65 怎麼辦?

  16. 一個成績查詢範例:使用符號常數

  17. Visual Studio .Net 共用整合式開發環境 方案 Solution 專案 Project 一個方案之中可以包含多個專案

  18. 變數(Variable) • 一個變數代表一個特定的資料項目或值 • 在記憶體中預留一個位置儲存該項資料 • 為變數指派一個值之後,該變數會維持該值,一直到指派另一個新值給它為止

  19. 資料型別 整數型別(Integer) 浮點數型別(Floating Point) decimal 型別(錢) char 型別(字元) bool 型別(布林、真假值) object 型別(物件) string 型別(字串)

  20. 整數型別 kilo, mega, giga, tera, peta, exa, zetta

  21. 浮點數型別 float ratio = 1.5F

  22. Decimal 型別 相較於 double, decimal 有效位數較多,值域較小,適合金融運算。 decimal ratio = 32.25M

  23. Char 型別 字元採 Unicode 編碼 'A' 是一個字元 '文' 也是一個字元

  24. Bool 型別 只有 true 和 false 兩個值 bool thisOneIsBigger = thisOne > thatOne; if (thisOneIsBigger) { loadLargerOne(thisOne); } else { loadLargerOne(thatOne); }

  25. Object 型別 System.Object是一切類別的始祖

  26. String 型別 字串採 Unicode 編碼 字串並不僅僅是字元的線性集合 "This is a book" "這是第一行\n這是第二行\n目前路徑為C:\\Windows" 以 @ 括住的字串常值不處理逸出序列, 適用於Windows檔案名稱: string fileName = @"c:\data\20091122.txt";

  27. 數值資料 • 整數(Integer) • 十進位26,十六進位 0x1A,八進位032 • 浮點數(Floating Point) • 2300,2.3E3 • 字元(Character) • '文'、'a'、'\u0061'、'\x0061' • 字串(String) • "電腦" • 跳脫字元(Escape Characters) • '\n'

  28. 運算子與運算式 P + Q • 運算子(Operator) • 運算符號 • 例如: + - * / % • 運算元(Operand) • 運算的對象

  29. 2.4.1 運算子與運算元 • 運算式( Expression ) • 又稱為『表示式』 • 由運算元和運算子構成 • 例如: • a++ • a – b • (a > 0) ? a : -a 一元運算(Unary) 二元運算(Binary) 三元運算(Ternary)

  30. 運算子的分類 • 算術運算子 • 指定(複合)運算子 • 關係運算子 • 邏輯運算子 • 合併運算子 • 移位運算子

  31. 算術運算子 用於數學計算

  32. 算術運算依照優先順序處理 • 由左而右,先乘除後加減,括弧內的先做

  33. 練習:攝氏溫度轉華氏溫度 • 輸入: • 攝氏溫度 C • 輸出: • 華氏溫度 F • 轉換公式 • 技術 • 以 double.Parse() 將字串轉換為數字

  34. 關係運算子 用於比較大小

  35. 邏輯運算子 • 關係邏輯 • 真 true • 假 false • 且 AND && • 或 OR || • 互斥或 XOR ^ • 否、非 NOT !

  36. 邏輯運算子 AND

  37. 邏輯運算子 OR

  38. 邏輯運算子 XOR

  39. 邏輯運算子 NOT

  40. 指定運算子

  41. 合併運算子 • + 用於字串為合併,用於數字為加法

  42. 移位運算子 • 移位運算子用於數值資料,以二進制的方式處理 • << :左移運算子 • 往左移一個位元(Bit),即該數值乘以2 • >> :右移運算子 • 往右移一個位元(Bit),即該數值除以2 • 譬如:int a=10; • Response.Write(a>>1); // 1010=10102右移一位01012=510 • Response.Write(a<<2); // 1010=10102左移兩位1010002=4010

  43. 運算子優先順序和順序關聯性 • 運算式的運算子優先執行先後順序 • 優先順序(Precedence) • 關聯性(Associativity) • 當運算式包含多個運算子時,運算子的優先順序控制評估運算式的順序 • 例如 • 運算式 x + y * z 的評估方式是 x + (y * z) • 因為 * 運算子的優先順序比 + 運算子高。

  44. 正號、負號 加、減

  45. 練習:計算三角形面積 • 輸入: • 三角形的三邊長 a, b, c • 輸出: • 三角形面積 • 其中 • 提示: • 用 Math.Sqrt() 開根號

  46. Escape Sequence 控制字元 • 在Visual C# 中若欲印出「'」單引號、「"」雙引號或是「\」倒斜線等符號,就必須使用「逸出序列」(Escape Sequence) • 逸出字元(跳脫字元)為預先定義有特殊功能的字元組合

  47. Escape Sequence

  48. 選擇結構 • 按照不同的條件,進行不同的處理。 • if…. else (雙重或單一選擇) • if… else if… else (多重選擇兩種以上) • switch (多重選擇兩種以上)

More Related