您的位置:首頁(yè) > 業(yè)內(nèi)資訊 > C語(yǔ)言入門經(jīng)典(第5版) PDF掃描
C語(yǔ)言是每一位程序員都應(yīng)該掌握的基礎(chǔ)語(yǔ)言。C語(yǔ)言是微軟.NET編程中使用的C#語(yǔ)言的基礎(chǔ);C語(yǔ)言是iPhone、iPad和其他蘋果設(shè)備編程中使用的Objective-C語(yǔ)言的基礎(chǔ);C語(yǔ)言是在很多環(huán)境中(包括GNU項(xiàng)目)被廣泛使用的C++語(yǔ)言的基礎(chǔ)。C語(yǔ)言也是Linux操作系統(tǒng)及其很多功能的基礎(chǔ)。學(xué)習(xí)C語(yǔ)言可以給編程職業(yè)生涯提供牢固的基礎(chǔ),也有助于更好地理解更為現(xiàn)代的語(yǔ)言(如Java)。
《C語(yǔ)言入門經(jīng)典(第5版)》主要介紹最基礎(chǔ)的計(jì)算機(jī)語(yǔ)言之一——C語(yǔ)言。
《C語(yǔ)言入門經(jīng)典(第5版)》從最基礎(chǔ)的內(nèi)容開(kāi)始,步步深入講解作為一位稱職的C語(yǔ)言程序員應(yīng)該具備的知識(shí)和技能。
主要內(nèi)容
◆ 闡述C語(yǔ)言的核心特征,例如循環(huán)和分支
◆ 如何使用指針和指令動(dòng)態(tài)管理內(nèi)存
◆ 如何使用頭文件和函數(shù)模塊化代碼
◆ 程序如何通過(guò)鍵盤、顯示器和數(shù)據(jù)文件讀寫數(shù)據(jù)
◆ 如何通過(guò)預(yù)處理命令在編譯時(shí)優(yōu)化代碼
◆ 如何使用結(jié)構(gòu)有效地管理輸入數(shù)據(jù)
《C語(yǔ)言入門經(jīng)典(第5版)》完整地介紹了一個(gè)C應(yīng)用程序的開(kāi)發(fā)過(guò)程,這樣你在閱讀過(guò)程中可以結(jié)合實(shí)際的應(yīng)用場(chǎng)景提高編程技能。書中的樣例提供了實(shí)驗(yàn)的基礎(chǔ),可以通過(guò)修改其中的部分代碼來(lái)對(duì)比前后程序運(yùn)行的結(jié)果。后面的練習(xí)題用來(lái)測(cè)試對(duì)新知識(shí)、新技能的掌握情況,如果需要練習(xí)題答案,可以網(wǎng)上下載。
閱讀完本書,你應(yīng)該有能力和信心開(kāi)發(fā)自己的C應(yīng)用程序,并且具備在大型項(xiàng)目中應(yīng)用C語(yǔ)言思想的技能。第5版詳細(xì)介紹了C語(yǔ)言的最新國(guó)際標(biāo)準(zhǔn),并且修訂涵蓋了語(yǔ)言編譯器新支持的C11功能。
C語(yǔ)言入門經(jīng)典(第5版) 目錄:
第1章 C語(yǔ)言編程 1
1.1 C語(yǔ)言 1
1.2 標(biāo)準(zhǔn)庫(kù) 2
1.3 學(xué)習(xí)C 2
1.4 創(chuàng)建C程序 2
1.4.1 編輯 2
1.4.2 編譯 3
1.4.3 鏈接 4
1.4.4 執(zhí)行 4
1.5 創(chuàng)建第一個(gè)程序 5
1.6 編輯第一個(gè)程序 5
1.7 處理錯(cuò)誤 6
1.8 剖析一個(gè)簡(jiǎn)單的程序 7
1.8.1 注釋 7
1.8.2 預(yù)處理指令 8
1.8.3 定義main()函數(shù) 9
1.8.4 關(guān)鍵字 10
1.8.5 函數(shù)體 10
1.8.6 輸出信息 11
1.8.7 參數(shù) 11
1.8.8 控制符 11
1.8.9 三字母序列 13
1.9 預(yù)處理器 14
1.10 用C語(yǔ)言開(kāi)發(fā)程序 14
1.10.1 了解問(wèn)題 14
1.10.2 詳細(xì)設(shè)計(jì) 15
1.10.3 實(shí)施 15
1.10.4 測(cè)試 15
1.11 函數(shù)及模塊化編程 16
1.12 常見(jiàn)錯(cuò)誤 19
1.13 要點(diǎn) 19
1.14 小結(jié) 20
1.15 習(xí)題 20
第2章 編程初步 21
2.1 計(jì)算機(jī)的內(nèi)存 21
2.2 什么是變量 23
2.3 存儲(chǔ)整數(shù)的變量 24
2.3.1 變量的使用 28
2.3.2 變量的初始化 29
2.4 變量與內(nèi)存 36
2.4.1 帶符號(hào)的整數(shù)類型 36
2.4.2 無(wú)符號(hào)的整數(shù)類型 37
2.4.3 指定整數(shù)常量 37
2.5 使用浮點(diǎn)數(shù) 39
2.6 浮點(diǎn)數(shù)變量 41
2.6.1 使用浮點(diǎn)數(shù)完成除法運(yùn)算 42
2.6.2 控制輸出中的小數(shù)位數(shù) 43
2.6.3 控制輸出的字段寬度 43
2.7 較復(fù)雜的表達(dá)式 44
2.8 定義命名常量 46
2.8.1 極限值 49
2.8.2 sizeof運(yùn)算符 51
2.9 選擇正確的類型 52
2.10 強(qiáng)制類型轉(zhuǎn)換 55
2.10.1 自動(dòng)轉(zhuǎn)換類型 56
2.10.2 隱式類型轉(zhuǎn)換的規(guī)則 56
2.10.3 賦值語(yǔ)句中的隱式類型轉(zhuǎn)換 57
2.11 再談數(shù)值數(shù)據(jù)類型 58
2.11.1 字符類型 58
2.11.2 字符的輸入輸出 59
2.11.3 枚舉 62
2.11.4 存儲(chǔ)布爾值的變量 64
2.12 賦值操作的op=形式 65
2.13 數(shù)學(xué)函數(shù) 66
2.14 設(shè)計(jì)一個(gè)程序 67
2.14.1 問(wèn)題 68
2.14.2 分析 68
2.14.3 解決方案 70
2.15 小結(jié) 73
2.16 練習(xí) 74
第3章 條件判斷 75
3.1 判斷過(guò)程 75
3.1.1 算術(shù)比較 75
3.1.2 基本的if語(yǔ)句 76
3.1.3 擴(kuò)展if語(yǔ)句:if-else 79
3.1.4 在if語(yǔ)句中使用代碼塊 82
3.1.5 嵌套的if語(yǔ)句 83
3.1.6 測(cè)試字符 85
3.1.7 邏輯運(yùn)算符 88
3.1.8 條件運(yùn)算符 91
3.1.9 運(yùn)算符的優(yōu)先級(jí) 94
3.2 多項(xiàng)選擇問(wèn)題 98
3.2.1 給多項(xiàng)選擇使用else-if語(yǔ)句 98
3.2.2 switch語(yǔ)句 99
3.2.3 goto語(yǔ)句 107
3.3 按位運(yùn)算符 108
3.3.1 按位運(yùn)算符的op=用法 110
3.3.2 使用按位運(yùn)算符 111
3.4 設(shè)計(jì)程序 114
3.4.1 問(wèn)題 114
3.4.2 分析 114
3.4.3 解決方案 114
3.5 小結(jié) 118
3.6 練習(xí) 118
第4章 循環(huán) 119
4.1 循環(huán) 119
4.2 遞增和遞減運(yùn)算符 120
4.3 for循環(huán) 120
4.4 for循環(huán)的一般語(yǔ)法 124
4.5 再談遞增和遞減運(yùn)算符 125
4.5.1 遞增運(yùn)算符 125
4.5.2 遞增運(yùn)算符的前置和后置形式 125
4.5.3 遞減運(yùn)算符 126
4.6 再論for循環(huán) 127
4.6.1 修改for循環(huán)變量 129
4.6.2 沒(méi)有參數(shù)的for循環(huán) 129
4.6.3 循環(huán)內(nèi)的break語(yǔ)句 130
4.6.4 使用for循環(huán)限制輸入 132
4.6.5 生成偽隨機(jī)整數(shù) 135
4.6.6 再談循環(huán)控制選項(xiàng) 137
4.6.7 浮點(diǎn)類型的循環(huán)控制變量 137
4.7 while循環(huán) 138
4.8 嵌套循環(huán) 140
4.9 嵌套循環(huán)和goto語(yǔ)句 146
4.10 do-while循環(huán) 147
4.11 continue語(yǔ)句 149
4.12 設(shè)計(jì)程序 150
4.12.1 問(wèn)題 150
4.12.2 分析 150
4.12.3 解決方案 151
4.13 小結(jié) 162
4.14 習(xí)題 163
第5章 數(shù)組 165
5.1 數(shù)組簡(jiǎn)介 165
5.1.1 不用數(shù)組的程序 165
5.1.2 什么是數(shù)組 167
5.1.3 使用數(shù)組 168
5.2 尋址運(yùn)算符 171
5.3 數(shù)組和地址 173
5.4 數(shù)組的初始化 174
5.5 確定數(shù)組的大小 175
5.6 多維數(shù)組 176
5.7 多維數(shù)組的初始化 178
5.8 變長(zhǎng)數(shù)組 184
5.9 設(shè)計(jì)一個(gè)程序 186
5.9.1 問(wèn)題 186
5.9.2 分析 186
5.9.3 解決方案 187
5.10 小結(jié) 193
5.11 習(xí)題 193
第6章 字符串和文本的應(yīng)用 195
6.1 什么是字符串 195
6.2 存儲(chǔ)字符串的變量 197
6.3 字符串操作 202
6.3.1 檢查對(duì)C11的支持 202
6.3.2 確定字符串的長(zhǎng)度 203
6.3.3 復(fù)制字符串 204
6.3.4 連接字符串 204
6.3.5 比較字符串 208
6.3.6 搜索字符串 211
6.3.7 單元化字符串 215
6.3.8 將換行符讀入字符串 219
6.4 分析和轉(zhuǎn)換字符串 221
6.4.1 轉(zhuǎn)換字符的大小寫形式 223
6.4.2 將字符串轉(zhuǎn)換成數(shù)值 225
6.5 設(shè)計(jì)一個(gè)程序 227
6.5.1 問(wèn)題 227
6.5.2 分析 227
6.5.3 解決方案 228
6.6 小結(jié) 233
6.7 習(xí)題 233
第7章 指針 235
7.1 指針初探 235
7.1.1 聲明指針 236
7.1.2 通過(guò)指針訪問(wèn)值 237
7.1.3 使用指針 240
7.1.4 指向常量的指針 244
7.1.5 常量指針 244
7.1.6 指針的命名 245
7.2 數(shù)組和指針 245
7.3 多維數(shù)組 248
7.3.1 多維數(shù)組和指針 252
7.3.2 訪問(wèn)數(shù)組元素 253
7.4 內(nèi)存的使用 256
7.4.1 動(dòng)態(tài)內(nèi)存分配:malloc()函數(shù) 256
7.4.2 釋放動(dòng)態(tài)分配的內(nèi)存 257
7.4.3 用calloc()函數(shù)分配內(nèi)存 261
7.4.4 擴(kuò)展動(dòng)態(tài)分配的內(nèi)存 262
7.5 使用指針處理字符串 265
7.5.1 使用指針數(shù)組 266
7.5.2 指針和數(shù)組記號(hào) 272
7.6 設(shè)計(jì)程序 276
7.6.1 問(wèn)題 276
7.6.2 分析 277
7.6.3 解決方案 277
7.7 小結(jié) 284
7.8 習(xí)題 285
第8章 編程的結(jié)構(gòu) 287
8.1 程序的結(jié)構(gòu) 287
8.1.1 變量的作用域和生存期 288
8.1.2 變量的作用域和函數(shù) 291
8.2 函數(shù) 291
8.2.1 定義函數(shù) 291
8.2.2 return語(yǔ)句 294
8.3 按值傳遞機(jī)制 299
8.4 函數(shù)原型 300
8.5 指針用作參數(shù)和返回值 301
8.5.1 常量參數(shù) 302
8.5.2 返回指針的風(fēng)險(xiǎn) 307
8.6 小結(jié) 310
8.7 習(xí)題 310
第9章 函數(shù)再探 313
9.1 函數(shù)指針 313
9.1.1 聲明函數(shù)指針 313
9.1.2 通過(guò)函數(shù)指針調(diào)用函數(shù) 314
9.1.3 函數(shù)指針的數(shù)組 316
9.1.4 作為變?cè)暮瘮?shù)指針 319
9.2 函數(shù)中的變量 321
9.2.1 靜態(tài)變量:函數(shù)內(nèi)部的追蹤 321
9.2.2 在函數(shù)之間共享變量 323
9.3 調(diào)用自己的函數(shù):遞歸 325
9.4 變?cè)獋(gè)數(shù)可變的函數(shù) 328
9.4.1 復(fù)制va_list 331
9.4.2 長(zhǎng)度可變的變?cè)斜淼幕疽?guī)則 331
9.5 main()函數(shù) 332
9.6 結(jié)束程序 333
9.6.1 abort()函數(shù) 333
9.6.2 exit()和atexit()函數(shù) 333
9.6.3 _Exit()函數(shù) 334
9.6.4 quick_exit()和at_quick_exit()函數(shù) 334
9.7 提高性能 335
9.7.1 內(nèi)聯(lián)聲明函數(shù) 335
9.7.2 使用restrict關(guān)鍵字 335
9.7.3 _Noreturn函數(shù)限定符 336
9.8 設(shè)計(jì)程序 336
9.8.1 問(wèn)題 336
9.8.2 分析 337
9.8.3 解決方案 338
9.9 小結(jié) 351
9.10 習(xí)題 352
第10章 基本輸入和輸出操作 353
10.1 輸入和輸出流 353
10.2 標(biāo)準(zhǔn)流 354
10.3 鍵盤輸入 354
10.3.1 格式化鍵盤輸入 355
10.3.2 輸入格式控制字符串 355
10.3.3 輸入格式字符串中的字符 360
10.3.4 輸入浮點(diǎn)數(shù)的各種變化 362
10.3.5 讀取十六進(jìn)制和八進(jìn)制值 363
10.3.6 用scanf_s()讀取字符 364
10.3.7 從鍵盤上輸入字符串 366
10.3.8 單個(gè)字符的鍵盤輸入 367
10.4 屏幕輸出 372
10.4.1 使用printf_s()的格式化輸出 372
10.4.2 轉(zhuǎn)義序列 375
10.4.3 整數(shù)輸出 375
10.4.4 輸出浮點(diǎn)數(shù) 378
10.4.5 字符輸出 379
10.5 其他輸出函數(shù) 380
10.5.1 屏幕的非格式化輸出 381
10.5.2 數(shù)組的格式化輸出 381
10.5.3 數(shù)組的格式化輸入 382
10.6 小結(jié) 382
10.7 習(xí)題 383
第11章 結(jié)構(gòu)化數(shù)據(jù) 385
11.1 數(shù)據(jù)結(jié)構(gòu):使用struct 385
11.1.1 定義結(jié)構(gòu)類型和結(jié)構(gòu)變量 387
11.1.2 訪問(wèn)結(jié)構(gòu)成員 388
11.1.3 未命名的結(jié)構(gòu) 390
11.1.4 結(jié)構(gòu)數(shù)組 391
11.1.5 表達(dá)式中的結(jié)構(gòu)成員 393
11.1.6 結(jié)構(gòu)指針 393
11.1.7 為結(jié)構(gòu)動(dòng)態(tài)分配內(nèi)存 394
11.2 再探結(jié)構(gòu)成員 397
11.2.1 將一個(gè)結(jié)構(gòu)作為另一個(gè)結(jié)構(gòu)的成員 397
11.2.2 聲明結(jié)構(gòu)中的結(jié)構(gòu) 398
11.2.3 將結(jié)構(gòu)指針用作結(jié)構(gòu)成員 399
11.2.4 雙向鏈表 403
11.2.5 結(jié)構(gòu)中的位字段 406
11.3 結(jié)構(gòu)與函數(shù) 407
11.3.1 結(jié)構(gòu)作為函數(shù)的變?cè)?nbsp; 407
11.3.2 結(jié)構(gòu)指針作為函數(shù)變?cè)?nbsp; 408
11.3.3 作為函數(shù)返回值的結(jié)構(gòu) 409
11.3.4 二叉樹(shù) 414
11.4 共享內(nèi)存 421
11.5 設(shè)計(jì)程序 425
11.5.1 問(wèn)題 425
11.5.2 分析 426
11.5.3 解決方案 426
11.6 小結(jié) 438
11.7 習(xí)題 438
第12章 處理文件 441
12.1 文件的概念 441
12.1.1 文件中的位置 442
12.1.2 文件流 442
12.2 文件訪問(wèn) 442
12.2.1 打開(kāi)文件 443
12.2.2 緩存文件操作 445
12.2.3 文件重命名 446
12.2.4 關(guān)閉文件 447
12.2.5 刪除文件 447
12.3 寫入文本文件 448
12.4 讀取文本文件 449
12.5 在文本文件中讀寫字符串 452
12.6 格式化文件的輸入輸出 456
12.6.1 格式化文件輸出 456
12.6.2 格式化文件輸入 457
12.7 錯(cuò)誤處理 459
12.8 再探文本文件操作模式 460
12.9 freopen_s()函數(shù) 461
12.10 二進(jìn)制文件的輸入輸出 462
12.10.1 以二進(jìn)制模式打開(kāi)文件 462
12.10.2 寫入二進(jìn)制文件 463
12.10.3 讀取二進(jìn)制文件 464
12.11 在文件中移動(dòng) 469
12.11.1 文件定位操作 469
12.11.2 找出我們?cè)谖募械奈恢?nbsp; 470
12.11.3 在文件中設(shè)定位置 471
12.12 使用臨時(shí)文件 477
12.12.1 創(chuàng)建臨時(shí)文件 477
12.12.2 創(chuàng)建唯一的文件名 478
12.13 更新二進(jìn)制文件 479
12.13.1 修改文件的內(nèi)容 484
12.13.2 從鍵盤輸入創(chuàng)建記錄 485
12.13.3 將記錄寫入文件 486
12.13.4 從文件中讀取記錄 486
12.13.5 寫入文件 487
12.13.6 列出文件內(nèi)容 488
12.13.7 更新已有的文件內(nèi)容 489
12.14 文件打開(kāi)模式小結(jié) 495
12.15 設(shè)計(jì)程序 496
12.15.1 問(wèn)題 496
12.15.2 分析 496
12.15.3 解決方案 496
12.16 小結(jié) 501
12.17 習(xí)題 501
第13章 支持功能 503
13.1 預(yù)處理 503
13.1.1 在程序中包含頭文件 503
13.1.2 定義自己的頭文件 504
13.1.3 管理多個(gè)源文件 504
13.1.4 外部變量 505
13.1.5 靜態(tài)函數(shù) 505
13.1.6 替換程序源代碼 506
13.2 宏 507
13.2.1 看起來(lái)像函數(shù)的宏 507
13.2.2 字符串作為宏參數(shù) 509
13.2.3 在宏展開(kāi)式中結(jié)合兩個(gè)變?cè)?nbsp; 510
13.3 多行上的預(yù)處理器指令 510
13.3.1 預(yù)處理器邏輯指令 511
13.3.2 條件編譯 511
13.3.3 測(cè)試多個(gè)條件 512
13.3.4 取消定義的標(biāo)識(shí)符 512
13.3.5 測(cè)試標(biāo)識(shí)符的指定值的指令 512
13.3.6 多項(xiàng)選擇 513
13.3.7 標(biāo)準(zhǔn)預(yù)處理宏 514
13.4 調(diào)試方法 515
13.4.1 集成的調(diào)試器 515
13.4.2 調(diào)試階段的預(yù)處理器 515
13.4.3 斷言 519
13.5 日期和時(shí)間函數(shù) 521
13.5.1 獲取時(shí)間值 522
13.5.2 獲取日期 525
13.5.3 確定某一天是星期幾 529
13.6 小結(jié) 531
13.7 習(xí)題 531
第14章 高級(jí)專用主題 533
14.1 使用國(guó)際字符集 533
14.1.1 理解Unicode 533
14.1.2 設(shè)置區(qū)域 534
14.1.3 寬字符類型wchar_t 535
14.1.4 寬字符串的操作 537
14.1.5 寬字符的文件流操作 540
14.1.6 存儲(chǔ)Unicode字符的固定大小類型 541
14.2 用于可移植性的專用整數(shù)類型 545
14.2.1 固定寬度的整型 545
14.2.2 最小寬度的整型 545
14.2.3 最大寬度的整型 546
14.3 復(fù)數(shù)類型 546
14.3.1 復(fù)數(shù)基礎(chǔ) 546
14.3.2 復(fù)數(shù)類型和操作 547
14.4 用線程編程 550
14.4.1 創(chuàng)建線程 550
14.4.2 退出線程 551
14.4.3 把一個(gè)線程連接到另一個(gè)線程上 552
14.4.4 掛起線程 555
14.4.5 管理線程對(duì)數(shù)據(jù)的訪問(wèn) 555
14.5 小結(jié) 561
附錄A 計(jì)算機(jī)中的數(shù)學(xué)知識(shí) 563
附錄B ASCII字符代碼定義 571
附錄C C語(yǔ)言中的保留字 575
附錄D 輸入輸出格式說(shuō)明符 577
附錄E 標(biāo)準(zhǔn)庫(kù)頭文件 583
情侶黃鉆,qq情侶黃鉆一個(gè)是黃鉆開(kāi)了以后另一個(gè)是黃鉆嗎
閱讀生活是奇怪的開(kāi)發(fā)人員宣布新的專注于這些特定類型
閱讀男孩第4季促銷宣布“ Supe Lives Matter”和“使美國(guó)再次超級(jí)”
閱讀Prime視頻現(xiàn)在可能有廣告,但是亞馬遜不會(huì)關(guān)閉FreeVee
閱讀旗幟:新伊甸園評(píng)論的幽靈 - 捉鬼敢死隊(duì)
閱讀亞馬遜的幾個(gè)狂戰(zhàn)士收藏品都可以預(yù)訂
閱讀一個(gè)安靜的地方:第一天預(yù)告片揭示了外星人來(lái)到地球的那一天
閱讀在有限的時(shí)間內(nèi),Amazon的狂歡漫畫豪華版在亞馬遜享受50%的折扣
閱讀因?yàn)榍婪,熱?ài)《夢(mèng)幻西游》手游的他選擇了棄號(hào)重開(kāi)
閱讀13代i9+滿血RTX4060,機(jī)械師曙光16Pro開(kāi)啟預(yù)售!
閱讀艾克索拉:一家創(chuàng)辦17年的全球化公司,正在凸顯“沉淀”對(duì)游戲支付的價(jià)值
閱讀燃的不止卡塔爾!2022英特爾大師挑戰(zhàn)賽網(wǎng)咖及電競(jìng)酒店聯(lián)賽燃情謝幕
閱讀貴州移動(dòng)云游戲電競(jìng)大賽正式啟動(dòng),球王全省招募中
閱讀本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]
湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2025 haote.com 好特網(wǎng)