C#編程入門與套用

C#編程入門與套用

《C#編程入門與套用》是2017年9月清華大學出版社出版的圖書,作者是李鑫、祝惠娟。

基本介紹

  • 中文名:C#編程入門與套用
  • 作者:李鑫、祝惠娟
  • 出版時間:2017年9月
  • 出版社:清華大學出版社
  • ISBN:9787302478393
  • 定價:78 元
內容簡介,圖書目錄,

內容簡介

C#是微軟公司發布的一種面向對象的、運行於.NET Framework之上的高級程式設計語言。全球每天有超過百萬的開發者正在用C#進行著各式各樣程式的開發,它是目前使用最廣泛的計算機語言之一。C#是一種安全的、穩定的、簡單的、優雅的、由C和C++衍生出來的面向對象的程式語言。C#綜合了Visual Basic簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向組件編程的支持,成為.NET開發的首選語言。
儘管C#非常優秀,但是對於第一次接觸編程的人來說並不容易學。萬事開頭難,本書總結了作者多年的教學成果,將為讀者打開一扇通往C#世界的大門,讓讀者少走彎路,快速入門,打好堅實的基礎。
本書共分為19章。第1~18章的主要內容包括:C#語言的發展、特點、運行環境、運算符與表達式、數據類型、變數、常量、注釋、流程控制語句、選擇語句、循環語句、跳轉語句、數組和排序、內置集合、自定義集合、面向對象編程、枚舉、結構、接口、類的封裝、繼承和多態特性、異常處理、程式調試、泛型、委託、事件、Windows窗體程式、窗體控制項、MDI窗體程式、選單控制項、ADO.NET對象、數據表格控制項、數據流、檔案輸入以及檔案輸出;第19章結合使用Visual Studio 2015和SQL Server 2012,開發一個簡單的汽車租賃系統。
本書可以作為高等院校計算機相關專業C#語言程式設計課程的教材,也可以作為C#程式設計的培訓教材,還可以作為自學者的參考書。

圖書目錄

第1 章 C# 入門概述
1.1 C# 語言概述 . 2
1.1.1 什麼是C# 語言 ... 2
1.1.2 C# 的發展歷史 .... 2
1.1.3 C# 的優勢分析 .... 2
1.1.4 如何學好C# 語言 .... 3
1.2 C# 環境——.NET 框架 ... 4
1.2.1 什麼是.NET 框架 .... 4
1.2.2 .NET 框架的組件 4
1.2.3 .NET 框架的版本 5
1.2.4 .NET 框架的體系結構 .. 6
1.3 C# 開發——Visual Studio 2015 7
1.3.1 什麼是Visual Studio 7
1.3.2 Visual Studio 的發展歷程 .. 8
1.3.3 Visual Studio 2015 的新功能 .. 8
1.4 高手帶你做——安裝VS 2015 .... 10
1.5 高手帶你做——創建第一個
控制台程式 14
1.6 認識C# 程式結構 16
1.6.1 C# 程式結構組成 ... 16
1.6.2 創建和執行C# 程式 ... 17
1.7 高手帶你做——通過記事本創建
應用程式 .... 17
1.8 高手帶你做——創建Windows
窗體應用程式 . 19
1.9 成長任務 .... 21
第2 章 C# 基礎語法
2.1 認識C# 語法 ... 24
2.2 using 關鍵字 .... 25
2.2.1 using 指令 25
2.2.2 常見的命名空間 .... 26
2.2.3 using 語句 27
2.2.4 高手帶你做——using 語句的
詳細使用 .. 28
2.3 namespace 關鍵字 29
2.3.1 定義命名空間 ... 30
2.3.2 嵌套命名空間 ... 30
2.3.3 高手帶你做——為自定義命名
空間指定別名 .... 31
2.4 class 關鍵字 32
2.5 Main( ) 方法 32
2.6 Console 類 .. 33
2.6.1 輸出內容到控制台 33
2.6.2 從控制台輸入內容 34
2.6.3 Console 類的其他方法 .... 34
2.7 C# 語言注釋 .... 35
2.7.1 單行注釋 . 35
2.7.2 多行注釋 . 36
2.7.3 文檔注釋 . 36
2.8 C# 關鍵字 ... 37
2.8.1 保留關鍵字 .. 37
2.8.2 上下文關鍵字 ... 38
2.9 C# 預處理器指令 . 38
2.9.1 C# 預處理器指令列表 38
2.9.2 #define 指令 .. 39
2.9.3 條件指令 . 40
2.9.4 #region 指令 . 41
2.10 高手帶你做——根據輸入內容
返回結果 ... 42
2.11 成長任務... 44
第3 章 變數、常量與數據類型
3.1 變數 .. 46
3.1.1 聲明變數 . 46
3.1.2 變數賦值 . 47
3.1.3 變數類型 . 47
3.2 常量 .. 50
3.2.1 常量概述 . 50
3.2.2 定義常量 . 51
3.3. 數據類型 ... 53
3.3.1 數據類型分類 ... 53
3.3.2 基本數據類型 ... 54
3.3.3 枚舉和結構類型 .... 57
3.4 數據類型轉換 . 57
3.4.1 隱式轉換 . 58
3.4.2 顯式轉換 . 60
3.5 高手帶你做——Convert 類實現
類型轉換 .... 62
3.6 成長任務 .... 64
第4 章 運算符和表達式
4.1 基礎運算符 66
4.1.1 算術運算符 .. 66
4.1.2 關係運算符 .. 67
4.1.3 邏輯運算符 .. 68
4.1.4 賦值運算符 .. 69
4.1.5 位運算符 . 71
4.2 高級運算符 73
4.2.1 自增運算符 .. 74
4.2.2 自減運算符 .. 74
4.2.3 雜項運算符 .. 76
4.3 高手帶你做——認識並使用
三元運算符 77
4.4 運算符的優先權 .. 77
4.5 表達式 ... 79
4.6 成長任務 .... 80
第5 章 流程控制語句
5.1 語句概述 .... 82
5.1.1 語句類型 . 82
5.1.2 空語句 83
5.2 if 選擇語句 . 83
5.2.1 簡單if 語句 .. 83
5.2.2 if else 語句 .. 85
5.2.3 if else if else 語句 .. 86
5.2.4 嵌套if 語句 .. 87
5.3 高手帶你做——根據輸入的年齡
判斷信息 .... 89
5.4 switch 選擇語句 ... 90
5.4.1 switch 語句 ... 90
5.4.2 嵌套switch 語句 .... 92
5.4.3 switch 語句與if 語句的區別 .... 94
5.5 循環語句 .... 95
5.5.1 while 語句 .... 95
5.5.2 do while 語句 .... 97
5.5.3 for 語句 .... 99
5.5.4 foreach 語句 .... 102
5.6 高手帶你做——循環列印點陣圖形.... 104
5.7 跳轉語句 .. 106
5.7.1 return 語句 .. 106
5.7.2 break 語句 .. 107
5.7.3 continue 語句 ... 108
5.7.4 goto 語句 .... 109
5.8 成長任務 .. 111
第6 章 字元串與正則表達式
6.1 認識String 類 114
6.1.1 創建String 對象 ... 114
6.1.2 null 字元串和空字元串 . 115
6.1.3 String 類的屬性 .... 116
6.2 字元串的基本操作 . 116
6.2.1 連線字元串 116
6.2.2 轉換大小寫 119
6.2.3 去除空格 .... 120
6.2.4 提取字元串 120
6.2.5 分割字元串 121
6.3 字元串的高級操作 . 122
6.3.1 替換字元串 122
6.3.2 比較字元串 123
6.3.3 定位字元串 124
6.3.4 格式化字元串 . 126
6.4 高手帶你做——驗證指定的
檔案和信箱 ... 126
6.5 StringBuilder 類操作字元串 .. 128
6.5.1 創建StringBuilder 對象 . 128
6.5.2 StringBuilder 類的屬性 .. 128
6.5.3 追加字元串 130
6.5.4 插入字元串 131
6.5.5 替換字元串 132
6.5.6 刪除字元串 132
6.6 高手帶你做——字元串加密和
解密操作 .. 133
6.7 正則表達式 ... 136
6.7.1 正則元字元 136
6.7.2 正則限定符 137
6.7.3 正則表達式Regex 類 .... 138
6.7.4 高手帶你做——將人民幣
金額轉換為大寫漢字 142
6.8 成長任務 .. 143
第7 章 數值處理和日期處理
7.1 數值處理——Math 類 . 146
7.1.1 靜態常量 .... 146
7.1.2 求最值 ... 146
7.1.3 求絕對值 .... 146
7.1.4 求整數值 .... 147
7.1.5 求三角函式 148
7.1.6 Math 的其他方法 . 149
7.2 偽隨機數——Random 類 . 149
7.2.1 初始化隨機數生成器 .... 149
7.2.2 生成隨機數 150
7.2.3 高手帶你做——求隨機數的
平均值和方差 .. 151
7.3 日期處理——DateTime 結構 153
7.3.1 靜態欄位 .... 153
7.3.2 靜態屬性 .... 153
7.3.3 實例屬性 .... 154
7.3.4 靜態方法 .... 155
7.3.5 實例方法 .... 156
7.3.6 ToString( ) 方法格式化日期 159
7.4 日期處理——TimeSpan 結構 .... 160
7.4.1 靜態欄位 .... 160
7.4.2 靜態常量 .... 161
7.4.3 實例屬性 .... 162
7.4.4 實例方法 .... 163
7.4.5 高手帶你做——基於TimeSpan
實現倒計時效果 ... 165
7.5 高手帶你做——根據年月輸出日曆.... 166
7.6 成長任務 .. 167
第8 章 數組
8.1 數組概述 .. 170
8.2 一維數組 .. 170
8.2.1 聲明數組 .... 170
8.2.2 分配空間 .... 171
8.2.3 初始化數組 171
8.2.4 獲取單個元素 . 172
8.2.5 獲取全部元素 . 173
8.3 二維數組 .. 174
8.3.1 聲明數組 .... 174
8.3.2 初始化數組 175
8.3.3 獲取單個元素 . 175
8.3.4 獲取全部元素 . 176
8.4 高手帶你做——二維數組如何
實現矩陣乘法 .... 177
8.5 多維數組 .. 179
8.5.1 三維數組 .... 179
8.5.2 交錯數組 .... 180
8.6 數組處理類 ... 181
8.6.1 Array 類 . 182
8.6.2 ArrayList 類 183
8.7 數組的基礎操作 185
8.7.1 添加元素 .... 185
8.7.2 複製元素 .... 186
8.7.3 反轉元素 .... 188
8.7.4 移除元素 .... 190
8.7.5 清除元素 .... 191
8.8 數組排序 .. 192
8.8.1 內置排序法 192
8.8.2 冒泡排序法 192
8.8.3 快速排序法 194
8.8.4 選擇排序法 195
8.8.5 插入排序算法 . 196
8.9 高手帶你做——商品信息查詢功能.... 197
8.10 成長任務 199
第9 章 內置集合和自定義集合
9.1 集合概述 .. 202
9.2 Hashtable 集合 ... 203
9.2.1 Hashtable 的常用屬性 ... 203
9.2.2 Hashtable 的常用方法 ... 203
9.2.3 Hashtable 的基本操作 ... 203
9.3 SortedList 集合 ... 206
9.3.1 SortedList 集合類的常用屬性 . 207
9.3.2 SortedList 集合的常用方法 207
9.3.3 SortedList 基本操作 .. 208
9.4 Stack 集合 212
9.4.1 Stack 的常用方法 212
9.4.2 Stack 的基本操作 212
9.5 Queue 集合 .... 214
9.5.1 Queue 的常用方法 .... 214
9.5.2 Queue 的基本操作 .... 214
9.6 BitArray 集合 216
9.7 高手帶你做——用戶自定義
集合運算元據 .... 217
9.8 成長任務 .. 220
第10 章 類和對象
10.1 面向對象編程 .. 222
10.1.1 什麼是面向對象. 222
10.1.2 類和對象... 222
10.2 認識類 .... 223
10.2.1 類的聲明... 223
10.2.2 System.Object 類 224
10.3 類的函式 224
10.3.1 構造函式... 225
10.3.2 析構函式... 226
10.4 類的成員 227
10.4.1 欄位和常量.... 227
10.4.2 定義屬性... 228
10.4.3 定義方法... 230
10.4.4 方法分類... 231
10.4.5 方法重載... 232
10.4.6 Main( ) 方法 ... 234
10.5 聲明和使用對象 ... 234
10.6 this 關鍵字 ... 235
10.6.1 引用類的當前實例.. 235
10.6.2 調用其他的構造函式... 236
10.6.3 聲明索引器.... 236
10.7 高手帶你做——字元串反轉及
字元出現次數 ... 237
10.8 高手帶你做——根據用戶選擇
列印圖形 . 238
10.9 高手帶你做——在類中嵌套
內部類 241
10.10 成長任務 ... 242
第11 章 類的面向對象編程
11.1 封裝性 244
11.1.1 封裝的概念.... 244
11.1.2 如何實現封裝 244
11.1.3 欄位和屬性的區別.. 246
11.2 繼承性 246
11.2.1 繼承的概念.... 247
11.2.2 如何實現繼承 247
11.2.3 繼承的缺點.... 249
11.3 多態性 249
11.3.1 多態的概念.... 249
11.3.2 編譯時多態.... 250
11.3.3 運行時多態.... 251
11.3.4 重載和重寫的區別.. 253
11.4 抽象類 254
11.4.1 抽象類的概念 254
11.4.2 抽象方法的概念. 254
11.4.3 實現抽象類和抽象方法.... 255
11.4.4 高手帶你做——實現從基類
中繼承的抽象屬性 .. 256
11.5 密封類 257
11.5.1 密封類的概念 257
11.5.2 密封方法的概念. 258
11.5.3 實現密封類和密封方法.... 259
11.6 類的常用關鍵字.... 260
11.6.1 base 關鍵字 ... 260
11.6.2 virtual 關鍵字 261
11.6.3 ref 關鍵字 . 262
11.6.4 out 關鍵字 264
11.7 高手帶你做——簡單計算器的
完整實現 . 265
11.8 成長任務. 269
第12 章 枚舉、結構和接口
12.1 枚舉 ... 272
12.1.1 枚舉概述... 272
12.1.2 定義枚舉... 272
12.1.3 使用枚舉... 274
12.1.4 枚舉類型強制轉換.. 275
12.1.5 Enum 類操作枚舉 ... 275
12.2 高手帶你做——獲取枚舉成員
對應的中文名稱 .... 278
12.3 結構 ... 280
12.3.1 結構概述... 280
12.3.2 定義結構... 281
12.3.3 使用結構... 281
12.3.4 結構和類的異同點.. 282
12.4 接口 ... 283
12.4.1 接口概述... 283
12.4.2 聲明接口... 284
12.4.3 接口成員... 285
12.4.4 實現接口... 286
12.4.5 接口和抽象類的區別... 288
12.5 高手帶你做——類顯式實現接口. 288
12.6 內置接口 290
12.6.1 IComparable 接口 .... 290
12.6.2 IComparer 接口 .. 291
12.7 成長任務 294
第13 章 C# 語言高級編程
13.1 異常處理 296
13.1.1 異常處理概述 296
13.1.2 異常處理語句 296
13.2 高手帶你做——Exception 類獲取
異常信息 . 300
13.3 程式調試 301
13.3.1 程式調試概述 302
13.3.2 程式調試操作 302
13.4 泛型 ... 304
13.4.1 泛型概述... 304
13.4.2 泛型類.. 304
13.4.3 泛型方法... 305
13.4.4 泛型委託... 306
13.4.5 泛型集合... 307
13.5 高手帶你做——泛型參數的約束. 309
13.6 委託和事件 . 310
13.6.1 委託. 310
13.6.2 事件. 312
13.7 成長任務 316
第14 章 Windows 窗體基礎控制項
14.1 Windows 窗體應用程式 . 318
14.1.1 創建Windows 窗體應用程式 .... 318
14.1.2 Windows 窗體概述 . 319
14.1.3 Windows 窗體屬性 . 321
14.1.4 Windows 窗體事件 . 323
14.1.5 Windows 窗體控制項概述 ... 325
14.2 基本控制項 325
14.2.1 Label 控制項 325
14.2.2 LinkLabel 控制項 ... 327
14.2.3 TextBox 控制項 . 329
14.2.4 RichTextBox 控制項 ... 331
14.2.5 MaskedTextBox 控制項 ... 333
14.3 按鈕控制項 334
14.3.1 Button 控制項 .... 334
14.3.2 RadioButton 控制項 .... 336
14.3.3 CheckBox 控制項 ... 337
14.4 列表控制項 339
14.4.1 ListBox 控制項 .. 339
14.4.2 ComboBox 控制項 . 340
14.4.3 ListView 控制項 342
14.4.4 CheckedListBox 控制項 ... 344
14.5 容器控制項 346
14.5.1 Panel 控制項 . 346
14.5.2 GroupBox 控制項 ... 347
14.5.3 TabControl 控制項 . 348
14.6 圖像控制項 349
14.6.1 PictureBox 控制項.. 349
14.6.2 ImageList 組件 ... 350
14.7 Windows 其他控制項 .... 351
14.7.1 Timer 組件 352
14.7.2 NotifyIcon 控制項 .. 352
14.7.3 DomainUpDown 控制項 .. 353
14.7.4 NumericUpDown 控制項 . 354
14.7.5 MonthCalendar 控制項 .... 354
14.8 高手帶你做——模擬線上
購物程式 . 356
14.9 成長任務 362
第15 章 構建MDI 窗體應用程式
15.1 MDI 窗體應用程式 .... 364
15.1.1 什麼是MDI 窗體 .... 364
15.1.2 創建MDI 父窗體 .... 364
15.1.3 設定MDI 子窗體 .... 366
15.1.4 子窗體訪問父窗體成員.... 367
15.2 MDI 窗體控制項 .. 369
15.2.1 MenuStrip 控制項 .. 369
15.2.2 ContextMenuStrip 控制項 372
15.2.3 ToolStrip 控制項 .... 374
15.2.4 StatusStrip 控制項 .. 376
15.3 高手帶你做——排列MDI 子窗體 .... 377
15.4 常用對話框 . 379
15.4.1 標準對話框.... 379
15.4.2 字型對話框.... 383
15.4.3 顏色對話框.... 384
15.4.4 瀏覽對話框. 385
15.4.5 打開和保存檔案對話框.... 386
15.5 高手帶你做——簡易圖片格式
轉換器 388
15.6 成長任務 389
第16 章 ADO.NET 技術訪問資料庫
16.1 ADO.NET 和資料庫 .. 392
16.1.1 ADO.NET 概述 .. 392
16.1.2 資料庫概述.... 393
16.2 連線資料庫 . 394
16.2.1 SqlConnection 簡述 . 394
16.2.2 打開資料庫連線. 395
16.2.3 關閉資料庫連線. 397
16.3 執行SQL 語句 . 397
16.3.1 SqlCommand 簡述... 397
16.3.2 獲取數據總記錄. 399
16.3.3 讀取數據... 400
16.3.4 刪除數據... 401
16.4 讀取數據 402
16.4.1 SqlDataReader 對象簡述 .. 402
16.4.2 判斷查詢結果中是否有值 403
16.4.3 獲取數據列的值. 403
16.5 數據適配器——SqlDataAdapter
對象 .... 406
16.6 數據集 .... 407
16.6.1 DataSet 對象簡述 .... 407
16.6.2 合併DataSet 內容 ... 408
16.6.3 複製DataSet 內容 ... 410
16.7 其他常見對象 .. 411
16.7.1 DataTable 對象 ... 411
16.7.2 DataView 對象.... 415
16.8 高手帶你做——ListView 控制項
載入和刪除圖書信息 . 417
16.9 成長任務 420
第17 章 Windows 表格數據控制項
17.1 了解DataGridView 控制項 422
17.1.1 DataGridView 控制項概述 ... 422
17.1.2 DataGridView 的結構 .. 423
17.1.3 DataGridView 的常用屬性 .... 423
17.1.4 DataGridView 的常用事件 .... 425
17.2 DataGridView 控制項的操作 .. 425
17.2.1 數據顯示... 426
17.2.2 獲取單元格.... 428
17.2.3 修改數據... 429
17.2.4 刪除數據... 430
17.2.5 設定選中行的顏色.. 432
17.2.6 禁止添加和刪除行.. 433
17.3 高手帶你做——為DataGridView
控制項手動添加數據 434
17.4 了解TreeView 控制項 ... 436
17.4.1 TreeView 控制項概述 . 436
17.4.2 TreeView 的常用屬性 .. 437
17.4.3 TreeView 的方法和事件 ... 438
17.5 TreeView 控制項的操作 439
17.5.1 添加節點... 439
17.5.2 移除節點... 440
17.5.3 清空節點... 441
17.5.4 獲取選中節點 441
17.5.5 為節點設定圖示. 442
17.6 高手帶你做——利用TreeView
控制項瀏覽圖像 ... 443
17.7 成長任務 445
第18 章 數據流和檔案的輸入/ 輸出
18.1 數據流 .... 448
18.1.1 流操作類的介紹. 448
18.1.2 FileStream 檔案流類 .... 448
18.1.3 寫入和讀取文本檔案... 450
18.1.4 寫入和讀取二進制檔案.... 453
18.2 System.IO 命名空間 .. 456
18.2.1 File 類 .. 456
18.2.2 Directory 類 ... 458
18.2.3 FileInfo 類 . 459
18.2.4 DirectoryInfo 類.. 460
18.3 檔案的基本操作 ... 461
18.3.1 判斷檔案是否存在.. 461
18.3.2 獲取檔案信息 462
18.3.3 創建檔案... 463
18.3.4 複製檔案... 464
18.3.5 移動檔案... 465
18.3.6 刪除檔案... 466
18.4 資料夾的基本操作 .... 467
18.4.1 判斷資料夾是否存在... 467
18.4.2 獲取資料夾信息. 468
18.4.3 遍歷資料夾.... 468
18.4.4 創建資料夾.... 470
18.4.5 移動資料夾.... 472
18.4.6 刪除資料夾.... 473
18.5 高手帶你做——實現Windows
資源管理器 .. 474
18.6 成長任務 479
第19 章 三層架構實現汽車租賃系統
19.1 了解汽車租賃系統 .... 482
19.1.1 開發背景... 482
19.1.2 功能介紹... 482
19.1.3 可行性分析.... 482
19.1.4 需求分析... 483
19.2 資料庫設計 . 483
19.2.1 資料庫概述.... 483
19.2.2 設計數據表.... 484
19.3 了解三層架構 .. 485
19.3.1 三層架構概述 485
19.3.2 實體層概述.... 486
19.3.3 三層架構的優缺點.. 486
19.4 搭建系統框架 .. 487
19.4.1 搭建三層項目 487
19.4.2 項目引用... 488
19.4.3 設定項目啟動項. 490
19.4.4 向三層框架中添加內容.... 490
19.5 SQLHelper 類詳解 495
19.5.1 SQLHelper 是什麼 .. 495
19.5.2 為SQLHelper 類添加內容 .... 496
19.6 用戶界面設計與實現 498
19.6.1 登錄窗體... 498
19.6.2 註冊窗體... 499
19.6.3 查看和修改用戶信息... 500
19.6.4 查找租車信息 502
19.6.5 汽車租賃... 504
19.6.6 操作租車記錄 506
19.6.7 汽車出租... 509
19.6.8 列印信息... 510
19.6.9 退出系統... 511

相關詞條

熱門詞條

聯絡我們