《C語言程式設計(第4版)》是由蘇小紅、趙玲玲、孫志崗、王宇穎等編著,高等教育出版社於2019年8月出版的“十二五”普通高等教育本科國家級規劃教材、國家級精品資源共享課和國家精品線上開放課程主講教材、“高等學校本科計算機專業套用型人才培養研究”項目規劃教材。該教材可作為高等學校各專業的C語言程式設計課程教材,也可作為從事計算機相關工作的科技人員、計算機愛好者及各類自學人員的參考書。
該教材共14章,內容包括為什麼要學習編程、基本數據類型、基本算術運算、鍵盤輸入和螢幕輸出、選擇控制結構、循環控制結構、函式與模組化程式設計、數組和算法基礎、指針、字元串、指針和數組、結構體和數據結構基礎、檔案操作及簡單的遊戲設計。
基本介紹
- 書名:C語言程式設計(第4版)
- 作者:蘇小紅、趙玲玲、孫志崗、王宇穎等
- 類別:“十二五”普通高等教育本科國家級規劃教材
- 出版社:高等教育出版社
- 出版時間:2019年08月06日
- 頁數:472 頁
- 開本:16 開
- 裝幀:平裝
- ISBN:978-7-04-051998-3
- 字數:670千字
成書過程
修訂情況
出版工作
責任編輯 | 封面設計 | 責任校對 | 責任印製 | 插圖繪製 | 版式設計 |
---|---|---|---|---|---|
劉茜 | 張志 | 劉莉 | 尤靜 | 於博 | 張傑 |
內容簡介
教材目錄
前輔文 第1章 為什麼要學習編程 1.1 學習編程的熱潮 1.1.1 席捲全球的“編程一小時” 1.1.2 資本洶湧的少兒編程 1.1.3 “再不學編程就晚了” 1.2 為什麼要學編程 1.3 什麼是“編程” 1.4 怎么學編程 1.4.1 一切都是計算 1.4.2 學編程不是學語法 1.4.3 動手,動手,再動手 1.5 本章小結 習題1 第2章 基本數據類型 2.1 常量與變數 2.1.1 常量 2.1.2 變數 2.2 簡單的螢幕輸出 2.3 數據類型 2.4 如何計算變數或數據類型所占記憶體空間的大小 2.5 變數的賦值和賦值運算符 2.6 本章擴充內容 2.7 本章知識點小結 2.8 本章常見錯誤小結 習題2 第3章 基本算術運算 3.1 C運算符和表達式 3.1.1 算術運算符和表達式 3.1.2 複合的賦值達算符 3.1.3 增1和減1運算符 3.2 宏常量與宏替換 3.3 const常量 3.4 自動類型轉換與強制類型轉換運算符 3.5 常用的標準數學函式 3.6 本章知識點小結 3.7 本章常見錯誤小結 習題3 第4章 鍵盤輸入和螢幕輸出 4.1 單個字元的輸入/輸出 4.1.1 字元常量 4.1.2 字元的輸入/輸出 4.2 數據的格式化螢幕輸出 4.3 數據的格式化鍵盤輸入 4.4 本章擴充內容 4.4.1 用%c輸入字元時存在的問題 4.4.2 %c格式符存在問題的解決方法 4.5 本章知識點小結 4.6 本章常見錯誤小結 習題4 第5章 選擇控制結構 5.1 生活中與計算機中的問題求解方法 5.2 算法的概念及其描述方法 5.2.1 算法的概念 5.2.2 算法的描述方法 5.3 關係運算符與關係表達式 5.4 用於單分支控制的條件語句 5.5 用於雙分支控制的條件語句 5.6 條件運算符和條件表達式 5.7 用於多分支控制的條件語句 5.8 用於多路選擇的switch語句 5.9 邏輯運算符和邏輯表達式 5.10 本章擴充內容 5.10.1 程式測試 5.10.2 對輸入非法字元的檢查與處理 5.10.3 位運算符 5.11 本章知識點小結 5.12 本章常見錯誤小結 習題5 第6章 循環控制結構 6.1 循環控制結構與循環語句 6.2 計數控制的循環 6.3 嵌套循環 6.4 條件控制的循環 6.5 流程的轉移控制 6.5.1 goto語句 6.5.2 break語句 6.5.3 continue語句 6.5.4 窮舉法編程實例 6.6 本章擴充內容 6.6.1 結構化程式設計的核心思想 6.6.2 常用的程式調試與排錯方法 6.6.3 類型溢出 6.7 本章知識點小結 6.8 本章常見錯誤小結 習題6 第7章 函式與模組化程式設計 7.1 分而治之與信息隱藏 7.2 函式的定義 7.2.1 函式的分類 7.2.2 函式的定義 7.3 向函式傳遞值和從函式返回值 7.3.1 函式調用 7.3.2 函式原型 7.3.3 函式封裝與防禦性程式設計 7.3.4 函式設計的基本原則 7.4 函式的遞歸調用和遞歸函式 7.5 變數的作用域和生存期 7.5.1 變數的作用城 7.5.2 變數的生存期 7.6 模組化程式設計 7.6.1 模組分解的基本原則 7.6.2 自頂向下、逐步求精 7.6.3 模組化程式設計與多檔案編程實例 7.6.4 條件編譯 7.7 本章擴充內容——代碼風格 7.8 本章知識點小結 7.9 本章常見錯誤小結 習題7 | 第8章 數組和算法基礎 8.1 一維數組的定義和初始化 8.2 二維數組的定義和初始化 8.3 向函式傳遞一維數組 8.4 排序和查找 8.5 向函式傳遞二維數組 8.6 本章知識點小結 8.7 本章常見錯誤小結 習題8 第9章 指針 9.1 變數的記憶體地址 9.2 指針變數的定義和初始化 9.3 間接定址運算符 9.4 按值調用與模擬按引用調用 9.5 用指針變數作函式參數的程式實例 9.6 函式指針及其套用 9.7 本章知識點小結 9.8 本章常見錯誤小結 習題9 第10章 字元串 10.1 字元串字面量 10.2 字元串的存儲 10.3 字元指針 10.4 字元串的訪問和輸入/輸出 10.4.1 如何訪問字元串中的單個字元 10.4.2 字元串的輸入/輸出 10.5 字元串處理函式 10.6 向函式傳遞字元串 10.7 從函式返回字元串指針 10.8 本章擴充內容 10.8.1 const類型限定符 10.8.2 字元處理函式 10.8.3 數值字元串向數值的轉換 10.9 本章知識點小結 10.10 本章常見錯誤小結 習題10 第11章 指針和數組 11.1 指針和一維數組間的關係 11.2 指針和二維數組間的關係 11.3 指針數組及其套用 11.3.1 指針數組用於表示多個字元串 11.3.2 指針數組用於表示命令行參數 11.4 動態數組 11.4.1 C程式的記憶體映像 11.4.2 動態記憶體分配函式 11.4.3 長度可變的一維動態數組 11.4.4 長度可變的二維動態數組 11.5 本章擴充內容 11.5.1 常見的記憶體錯誤及其對策 11.5.2 緩衝區溢出攻擊 11.6 本章知識點小結 11.7 本章常見錯誤小結 習題11 第12章 結構體和數據結構基礎 12.1 從基本數據類型到抽象數據類型 12.2 結構體的定義 12.2.1 為什麼要定義結構體類型 12.2.2 結構體變數的定義 12.2.3 用typedef定義數據類型 12.2.4 結構體變數的初始化 12.2.5 嵌套的結構體 12.2.6 結構體變數的引用 12.2.7 結構體所占記憶體的位元組數 12.3 結構體數組的定義和初始化 12.3.1 結構體數組的定義 12.3.2 結構體數組的初始化 12.4 結構體指針的定義和初始化 12.4.1 指向結構體變數的指針 12.4.2 指向結構體數組的指針 12.5 向函式傳遞結構體 12.6 共用體 12.7 枚舉數據類型 12.8 動態數據結構——單向鍊表 12.8.1 問題的提出 12.8.2 鍊表的定義 12.8.3 單向鍊表的建立 12.8.4 單向鍊表的刪除操作 12.8.5 單向鍊表的插入操作 12.9 本章擴充內容 12.9.1 棧和佇列 12.9.2 樹和圖 12.9.3 數據的邏輯結構和存儲結構 12.10 本章知識點小結 12.11 本章常見錯誤小結 習題12 第13章 檔案操作 13.1 二進制檔案和文本檔案 13.2 檔案的打開和關閉 13.3 按字元讀寫檔案 13.4 按格式讀寫檔案 13.5 按數據塊讀寫檔案 13.6 本章擴充內容 13.6.1 檔案的隨機讀寫 13.6.2 標準輸入/輸出重定向 13.7 本章知識點小結 13.8 本章常見錯誤小結 習題13 第14章 簡單的遊戲設計 14.1 動畫的基本原理 14.2 迷宮遊戲 14.3 Flappy bird遊戲 14.4 本章知識點小結 14.5 本章常見錯誤小結 習題14 附錄A C關鍵字 附錄B GCC中基本數據類型的取值範圍 附錄C C運算符的優先權與結合性 附錄D 常用字元與ASCII碼值對照表 附錄E 常用的ANSIC標準庫函式 參考文獻 |
註:目錄排版順序為從左列至右列 |
教學資源
- 課程資源
- 配套教材
書名 | ISBN | 出版社 | 出版時間 | 作者 |
---|---|---|---|---|
《C語言程式設計學習指導(第4版)》 | 978-7-04-052489-5 | 高等教育出版社 | 2019年10月10日 | 蘇小紅、王甜甜、趙玲玲、范江波、車萬翔 |