互聯(lián)網時代,網絡、數據、應用軟件構成了它的主旋律。應用軟件編寫、網頁設計、數據庫開發(fā)等,都離不開IT人員的開發(fā)與維護,編程的重要性 不 言 而 喻,因 此 程 序 員、軟 件 工 程 師 更 是 成 為 互 聯(lián) 網 時 代 的寵兒。
現(xiàn)在,越來越多的人想要從事IT 行業(yè),潮流不可阻擋。我們怎樣才能從事這個行業(yè)?都需要我們做哪些準備? 答案就在這本書中。
無論是編程初學者還是有編程基礎的人員,相信在程序開發(fā)問題上都存在著這樣或那樣的困惑:
編程語言有多種類型,為何初學者都傾向選擇 C語言?
C語言和其他語言本質上是否有區(qū)別,它的特色是什么?
C語言在這個多種開發(fā)語言并存的時代是否已經過時?
C語言憑借什么從眾多高級語言中殺出重圍,獨占鰲頭?
學會 C語言是否就能輕松掌握其他高級語言?
本書撥開迷霧,直指本質,用簡單明確的語句告訴你什么是 C 語言、C語言的特點以及應用范圍,幫助你在編程道路上越走越遠,實現(xiàn)編程夢想。
本書由三大部分組成,由易到難、由淺入深地系統(tǒng)介紹了 C語言這個編程王國。
基礎篇,了解 C語言的魅力,追溯 C語言的發(fā)展歷史,了解常用編譯軟件、常量和變量、關鍵字、數據類型、基本語句、宏定義、枚舉變量和函數等基礎知識,包括 C語言書寫規(guī)范和命名規(guī)則等內容;認識一個完整C語言程序所具有的成分,從結構上理解 C語言的組成部分。
拓展篇,帶你走進 C語言的核心知識,如指針、數組的使用,預處理的巧妙應用,結構體、鏈表的應用以及有關文件、套接字、數據庫的基礎知識,通過一些案例針對性地進行講解,和你一起探討 C 語言的升級內容,加強 C語言核心知識的應用。
實戰(zhàn)篇,探尋 C語言究竟如何為我們的生活提供便利,如何利用 C語言編寫項目;計算器如何制作,它的各種功能如何通過 C 語言程序來實現(xiàn);票務系統(tǒng)如何搭建和完善,訂票、查詢等功能又是如何借助 C語言來運行的。不同項目中,函數、結構體、指針是如何發(fā)揮作用的……在項目的實戰(zhàn)中體會、探索與感受 C語言的魅力,培養(yǎng)和提高獨立編程能力。
另外,本書創(chuàng)造性地設計了5個版塊,幫你快速走入 C 語言進階通道。技巧集錦助你快速掌握核心知識點,有效記憶章節(jié)重點;新手誤區(qū)幫你避開 雷區(qū),減少錯誤發(fā)生概率;技能升級幫你了解相關知識,拓展思維,進一步提高編程技能; 實力檢測助你測試掌握水平,有效增強編程實力;劍指offer初級挑戰(zhàn)助你打通職場賽道,快速拿到offer。這些版塊內容的設計,層層遞進,加深知識點記憶,并在提高編程技能的同時引發(fā)思考。
全書結構清晰,內容豐富,語言通俗易懂,啟發(fā)性強。全書以入門到實操的邏輯線索,按照 C 語言基礎知識、進階知識和項目實際應用的順序,對 C語言程序中出現(xiàn)的知識點進行詳細講解,邏輯嚴謹,層次分明。通過閱讀本書,相信你一定可以掌握 C語言基礎知識,提升編程技能,并有所收獲。
本書在編撰過程中,參考了不少學者、有識之士的觀點與相關資料,在此深表感謝! 同時,歡迎讀者和我們一起探討 C 語言,提出意見和建議,以交流和不斷 完 善 本 書,讓 我 們 一 起 在 探 索 C 語 言 的 道 路 上 砥 礪前行!
基礎篇 了解C語言的魅力
第1章 走進職場實戰(zhàn):了解 C語言
1.1 編程語言
1.1.1 機器語言
1.1.2 匯編語言
1.1.3 高級語言
1.2 C語言的基本情況
1.2.1 C語言大事記
1.2.2 不要再搞混 C家族語言,它們各不相同
1.2.3 C語言在實際運用中的優(yōu)勢
1.2.4 C語言的書寫 特立獨行
1.3 搭建 C語言的開發(fā)環(huán)境
1.3.1 安裝 VisualStudioCode
1.3.2 安裝 VSCode小插件
1.3.3 修改環(huán)境變量,讓 C語言 暢行無阻
1.4 編寫個 C語言程序HelloWorld.c
第2章 走近 數據元素,了解數據類型與運算符
2.1 關鍵字
2.1.1 案例導入會員卡次數計算
2.1.2 關鍵字在案例中的運用
2.2 數據類型
2.2.1 基本類型
2.2.2 結構類型
2.2.3 指針類型
2.2.4 空類型
2.3 常量與變量
2.3.1 案例導入素數計算
2.3.2 變量在素數計算時的用法
2.4 數據的輸入與輸出
2.4.1 案例導入大小寫轉換
2.4.2 輸入/輸出函數的應用
2.5 運算符
2.5.1 運算符的種類
2.5.2 運算符的優(yōu)先級
2.6 為重構和調用做準備代碼注釋
2.7 沒有規(guī)矩,不成方圓編碼也要注意規(guī)范
2.7.1 編碼的常見錯誤
2.7.2 編碼規(guī)范的注意事項
第3章 走向基本語句,為變量增加關聯(lián)
3.1 循環(huán)語句
3.1.1 案例導入數學計算
3.1.2 數學計算中如何使用 while循環(huán)
3.1.3 while循環(huán)語句
3.1.4 do-while循環(huán)語句
3.1.5 while語句和do-while語句的區(qū)別
3.1.6 for語句
3.2 判斷語句
3.2.1 案例導入排序問題
3.2.2 排序問題中if判斷的應用
3.2.3 if語句
3.2.4 ifelse語句
3.2.5 if???elseif???else語句
3.2.6 switch???case語句
3.2.7 if???elseif???else語句和switch???case語句的區(qū)別
3.3 將關系轉移的方式、
3.3.1 goto語句與if伴生,遇真就失效
3.3.2 continue語句
3.3.3 break語句
第4章 巧用宏和枚舉實現(xiàn)自由賦值
4.1 宏
4.1.1 案例導入宏定義
4.1.2 宏對象在函數中的應用
4.1.3 宏對象在函數中的意義
4.1.4 使用宏創(chuàng)建一個缺項
4.1.5 宏保護變量
4.1.6 定義宏時的 坑
4.2 枚舉變量
4.2.1 案例導入撥鐘問題
4.2.2 枚舉在撥鐘問題中的應用
4.3 枚舉變量的基本操作
4.3.1 聲明一個枚舉變量
4.3.2 給一個枚舉變量進行賦值
4.3.3 調用枚舉變量中的數值
第5章 巧用函數整合零散語句,使語句更加模塊化
5.1 函數
5.1.1 案例導入利用遞歸求階乘
5.1.2 遞歸函數在求階乘的案例中的應用
5.1.3 如何增加函數被調用的概率
5.2 函數與零散語句相輔相成
5.2.1 函數的構成
5.2.2 函數的定義
5.2.3 函數的功能
5.2.4 函數的分類
5.2.5 函數的調用
5.3 函數的形參與實參
5.3.1 函數里不能缺的元素形參
5.3.2 函數執(zhí)行結果的 掌舵人實參
5.3.3 有哪些方法傳入實參
拓展篇 掌握C語言的核心知識
第6章 巧用預處理,讓并行變成可能
6.1 用好預處理,并發(fā)能力將大大提高
6.1.1 提高程序并發(fā)能力文件包含
6.1.2 文件包含命令的應用
6.2 低調而隱性的預處理
6.2.1 案例導入改寫字符
6.2.2 條件編譯
6.2.3 宏定義
6.2.4 預處理的優(yōu)點
6.2.5 預處理命令使用注意事項
第7章 巧用函數庫,實現(xiàn)代碼 變薄
7.1 函數庫增強復用性,減少重復代碼
7.1.1 案例導入引用函數庫
7.1.2 函數庫的應用
7.2 寫好頭文件,弊病遠離你
7.2.1 程序橋梁頭文件
7.2.2 頭文件的應用
7.2.3 頭文件的編寫
7.2.4 頭文件的注意事項
7.3 重構代碼,讓功能更直觀
第8章 巧用數組技巧,讓程序變得飽滿
8.1 數組令人驚嘆的承載能力
8.1.1 案例導入求和計算
8.1.2 數組的應用
8.2 一維數組行天下,精簡的數組類型
8.2.1 一維數組精簡
8.2.2 一維數組的初始化
8.2.3 一維數組的天然優(yōu)勢
8.3 二維數組增承載,適合復雜數據使用
8.3.1 案例導入矩陣相加
8.3.2 二維數組承載多個數據
8.3.3 二維數組的初始化
8.3.4 二維數組矩陣運算中的高手
8.4 字符串的 進化型,字符串之庫字符數組
8.4.1 案例導入字符的判斷
8.4.2 字符數組字符串的救星
8.4.3 別再弄混字符數組和字符串
8.5 一秒學會使用字符數組
8.6 索引越界常見,索引細則很關鍵
第9章 C語言的特色指針操作技巧
9.1 數據有 上又有 下,交流全靠它
9.1.1 案例導入指針
9.1.2 指針變量另類的 數據傳遞
9.2 指針的移動規(guī)則
9.2.1 指針的 前后移動
9.2.2 指針的關系運算規(guī)則
9.2.3 指針的賦值規(guī)則
9.3 指針能解決的實際問題
9.3.1 指針有參函數的 王炸
9.3.2 指針一維數組的 王者
9.3.3 指針字符串隱藏的 奇兵
9.3.4 指針指向函數不常見
第10章 讓數據產生關聯(lián)性鏈表操作技巧
10.1 讓數據產生關聯(lián),鏈表有序生成
10.2 鏈表的S型形態(tài)
10.2.1 內存管理函數為鏈表 量身定制
10.2.2 定義功能函數讓鏈表使用簡單化
10.2.3 鏈表和數組的比較
第11章 讓變量存儲更自由結構體與聯(lián)合體
11.1 跨類型存儲新寵結構體
11.1.1 結構體整合不同數據類型
11.1.2 使用超方便的結構體變量
11.2 如何操作一個結構體
11.3 內存不夠就找聯(lián)合體解決
11.4 談談聯(lián)合體的 克星
第12章 巧用代碼解決文件讀寫需求
12.1 如何定義 C語言中的文件
12.2 文件讀取狀態(tài)怎么獲取
12.3 文件的讀寫操作fopen()
12.4 將文件關閉的操作fclose()
12.5 文件讀寫函數fgetc()和fputc()
12.6 成塊讀寫文件fread()和fwrite()
12.7 其他能操作文件的函數
第13章 項目前瞻1網絡基礎知識
13.1 網絡通信包含哪些內容
13.2 將網絡按連接范圍進行分類
13.3 常用服務占用的端口號
13.4 常用套接字
13.5 TCP和 UDP協(xié)議
13.6 C語言代碼是如何接入互聯(lián)網的
第14章 項目前瞻2數據庫基礎知識
14.1 大數據時代的數據庫
14.1.1 數據庫的變遷
14.1.2 數據庫的兩大類別
14.1.3 大數據時代數據庫的應用
14.2 mysql數據庫
14.3 redis數據庫
14.4 C語言和數據庫如何實現(xiàn)互聯(lián)互通
實戰(zhàn)篇 挑戰(zhàn)C語言項目
第15章 C語言函數專場
15.1 項目1函數小劇場
15.2 項目2指針的妙用
第16章 C語言賦予軟件功能與生命力
16.1 項目1工資管理系統(tǒng)
16.2 項目2電影票訂票管理系統(tǒng)
參考文獻