C程式設計:方法與實踐

C程式設計:方法與實踐

《C程式設計:方法與實踐》是2017年5月清華大學出版社出版圖書,作者是劉喜平、萬常選、舒蔚、駱斯文。

基本介紹

  • 書名:C程式設計:方法與實踐
  • 作者:劉喜平、萬常選、舒蔚、駱斯文
  • ISBN:9787302467151
  • 定價:59.50元
  • 出版社:清華大學出版社
  • 出版時間:2017.05.01
  • 開本:32
內容簡介,作者簡介,圖書目錄,

內容簡介

本書是強調程式設計能力培養的教材,以C語言為載體,圍繞程式的基本構造、數據組織和構造方法展開。全書共15章。第1章簡要介紹程式設計的基本概念、算法與數據結構以及軟體開發過程;第2章首先介紹了C語言最核心的核心;第3~6章在這個核心的基礎上介紹了C語言的基礎: 數據類型、表達式和基本結構,通過學習這些章節的知識,學生可以閱讀和編寫基本的C程式;第7~13章介紹了函式、常見算法、指針、結構體和檔案等語言元素,使用這些語言特徵可以編寫出更加複雜的C程式;第14章介紹了常見的兩個C程式開發工具以及調試技巧,第15章列出了配套的實驗。 本書的主要特點是: 精心組織結構,精選例題,增強實用性,注重從軟體開發和系統的角度來介紹程式設計,突出算法思想的培養,達到提高學生程式設計綜合素質和能力的目的。 本書可作為高等學校計算機及相關專業學生的程式設計課程教材,也可供程式設計愛好者自學和參考。

作者簡介

劉喜平,香港科技大學訪問學者、美國羅格斯-新澤西州立大學訪問學者,近年來在國內外核心以上期刊發表學術論文40餘篇,完成專著2部,正在主持一項國家自然基金項目,主持完成了省級項目3項。參與編寫了《資料庫系統原理與設計》、《C語言與程式設計方法》等教材4部,其中《資料庫系統原理與設計》於2012年11月獲批第一批“十二五”普通高等教育本科國家級規劃教材。在《計算機教育》等國家級教學期刊上發表教學研究論文4篇;獲得了省優秀教學成果一等獎1項,省普通高等學校優秀教材一等獎2項;是《資料庫系統及套用》國家精品課程、國家精品資源共享課的核心成員。
萬常選,工學博士,教授,博士生導師,國務院政府特殊津貼專家,江西省首批“贛鄱英才555工程——領軍人才培養計畫”人選,江西省高校中青年學科帶頭人,江西省“十二五”重點學科“計算機科學與技術”學科帶頭人。國家精品資源共享課《資料庫系統及套用》課程負責人,國家精品課程《資料庫系統及套用》課程負責人,國家級特色專業“信息管理與信息系統”負責人,國家級教學團隊“管理決策與決策支持教學團隊”核心成員(決策支持教學子團隊負責人),國家級教學團隊“信息系統系列課程教學團隊”核心成員。獲第六屆高等教育國家級教學成果獎二等獎1項,江西省優秀教學成果一等獎2項、二等獎3項,江西省高校優秀教材一等獎2部。主持國家自然科學基金、國家社會科學基金項目多項。出版專著教材多部,其中《資料庫系統原理與設計》入選第一批“十二五”普通高等教育本科國家級規劃教材。在國內外權威期刊或國際會議發表學術論文30餘篇。獲江西省高校科技成果獎一等獎3項、二等獎2項,江西省自然科學獎三等獎1項。

圖書目錄

第1章 程式設計與軟體開發
1.1 程式設計的基本概念
1.1.1 程式
1.1.2 程式設計語言
1.1.3 程式設計
1.2 算法與數據結構
1.2.1 算法及其特徵
1.2.2 算法的結構
1.2.3 算法的描述
1.2.4 數據結構
1.3 軟體開發
1.3.1 軟體
1.3.2 軟體工程
1.4 本章小結
習題
第2章 C語言概述
2.1 C語言的發展與特點
2.1.1 C語言的發展
2.1.2 C語言的特點
2.2 一個C程式實例
2.2.1 編寫和運行C程式
2.2.2 注釋
2.2.3 預處理命令
2.2.4 程式主體
2.3 C語言的字元集與標識符
2.4 數據類型
2.5 常量和變數
2.5.1 常量
2.5.2 變數
2.6 運算符和表達式
2.6.1 運算符
2.6.2 表達式
2.7 輸入與輸出
2.7.1 輸出函式printf
2.7.2 輸入函式scanf
2.8 語句
2.8.1 簡單語句
2.8.2 語句塊
2.8.3 if語句
2.8.4 while語句
2.8.5 for語句
2.9 函式
2.10 編程實踐: 代碼風格
2.11 本章小結
習題
第3章 數據類型與輸入輸出
3.1 整型
3.1.1 整數的內部表示
3.1.2 整型常量
3.1.3 整數的輸出
3.1.4 整數的輸入
3.2 浮點型
3.2.1 浮點常量
3.2.2 浮點數的內部表示
3.2.3 浮點數的輸出
3.2.4 浮點數的輸入
3.2.5 浮點數的比較和計算
3.3 字元型
3.3.1 字元型數據的內部表示
3.3.2 字元常量和變數
3.3.3 字元輸出
3.3.4 字元輸入
3.3.5 字元處理
3.4 數組
3.4.1 什麼是數組
3.4.2 數組的內部表示
3.4.3 數組元素的訪問
3.4.4 數組的初始化
3.5 字元串
3.5.1 字元串常量
3.5.2 用字元數組處理字元串
3.5.3 字元串的輸出
3.5.4 字元串的輸入
3.6 文本檔案輸入與輸出
3.6.1 聲明FILE *類型的變數
3.6.2 打開檔案
3.6.3 關閉檔案
3.6.4 讀寫檔案
3.7 變數的進一步討論
3.7.1 變數的聲明與初始化
3.7.2 限定詞const
3.8 編程實踐: 命名
3.9 本章小結
習題
第4章 運算符與表達式
4.1 運算符與表達式概述
4.1.1 C運算符簡介
4.1.2 C表達式簡介
4.2 算術運算符和算術表達式
4.2.1 算術運算符
4.2.2 算術表達式
4.2.3 算術表達式的例子
4.3 賦值運算符和賦值表達式
4.3.1 賦值運算符
4.3.2 賦值表達式
4.3.3 複合賦值運算符
4.4 增量減量運算符
4.5 子表達式的求值順序
4.6 數據類型的轉換
4.6.1 隱式類型轉換
4.6.2 賦值運算符兩側數據的類型轉換
4.6.3 強制類型轉換
4.7 逗號運算符和逗號表達式
4.8 本章小結
習題
第5章 分支結構
5.1 關係運算符和關係表達式
5.2 邏輯運算符和邏輯表達式
5.2.1 邏輯運算符
5.2.2 邏輯表達式
5.3 條件運算符和條件表達式
5.4 C語句概述
5.5 if語句
5.6 switch語句
5.7 套用舉例
5.8 本章小結
習題
第6章 循環結構與程式設計基本算法
6.1 循環結構與控制語句
6.1.1 while語句
6.1.2 for語句
6.1.3 do-while語句
6.1.4 循環嵌套
6.1.5 流程控制語句(break語句、continue語句和goto語句)
6.2 控制循環的基本方法
6.2.1 通過計數器變數控制循環
6.2.2 通過程式執行的狀態控制循環
6.3 窮舉算法
6.4 疊代與遞推算法
6.4.1 疊代
6.4.2 遞推
6.5 程式設計實例
6.6 編程實踐: 程式計時
6.7 本章小結
習題
第7章 函式與結構化程式設計
7.1 函式
7.1.1 為什麼要使用函式
7.1.2 函式定義
7.1.3 函式調用
7.1.4 函式原型與函式聲明
7.1.5 函式的執行
7.1.6 主調函式與被調函式之間的數據傳遞
7.1.7 函式設計的思路
7.2 遞歸調用與遞歸算法
7.2.1 遞歸調用的執行過程
7.2.2 遞歸算法
7.2.3 Hanoi塔問題
7.3 程式的函式分解
7.4 C程式結構
7.4.1 編譯預處理命令
7.4.2 全局聲明
7.4.3 函式
7.4.4 C程式的邏輯與物理構成
7.5 編程實踐: 軟體測試
7.6 本章小結
習題
第8章 指針與數組
8.1 指針與指針變數
8.1.1 指針的概念
8.1.2 指針變數的聲明與初始化
8.1.3 指針的基本運算
8.2 數組的指針
8.2.1 一維數組的指針
8.2.2 二維數組
8.2.3 二維數組的元素指針和行指針
8.2.4 指向一維數組的指針變數(行指針變數)
8.3 字元指針與字元串
8.3.1 字元串處理函式
8.3.2 指向字元的指針變數處理字元串
8.4 指針作為函式參數
8.4.1 變數的指針作為函式參數
8.4.2 一維數組的指針作為函式參數
8.4.3 二維數組的指針作為函式參數
8.5 返回指針的函式
8.6 指針數組
8.6.1 指針數組的概念及其套用
8.6.2 指針數組作main函式的形參
8.6.3 行指針數組
8.7 編程實踐: 實用字元串處理
8.8 本章小結
習題
第9章 C程式運行原理
9.1 一個C程式的運行之旅
9.2 計算機指令的執行過程
9.3 計算機的存儲模型
9.4 程式的記憶體布局
9.4.1 概述
9.4.2 棧
9.4.3 堆
9.4.4 執行檔映像
9.5 變數的存儲類型
9.5.1 作用域
9.5.2 存儲期限(生存期)
9.5.3 連結
9.5.4 變數分類
9.6 編程實踐: 程式設計與作業系統
9.7 本章小結
習題
第10章 複雜問題的求解算法
10.1 分治法
10.1.1 分治法的基本思想
10.1.2 折半查找
10.1.3 循環賽賽程安排
10.2 貪心算法
10.2.1 貪心算法的基本概念
10.2.2 活動安排問題
10.2.3 背包問題
10.3 動態規划算法
10.3.1 動態規劃介紹
10.3.2 最長公共子序列問題
10.3.3 0-1背包問題
10.3.4 動態規划算法總結
10.4 回溯法
10.4.1 回溯法的基本思想
10.4.2 n皇后問題
10.4.3 0-1背包問題
10.4.4 回溯法總結
10.5 本章小結
習題
第11章 結構體、聯合共用體與枚舉類型
11.1 數據類型的再討論
11.1.1 數據類型與事物屬性
11.1.2 數據類型的定義
11.2 結構體
11.2.1 結構體類型的定義
11.2.2 結構體變數的聲明與存儲
11.2.3 結構體變數的引用與初始化
11.3 結構體數組
11.4 結構體指針
11.5 結構體與函式
11.5.1 函式的結構體類型參數
11.5.2 結構體類型的函式
11.6 結構體嵌套
11.7 線性鍊表
11.7.1 線性鍊表概述
11.7.2 C語言實現線性鍊表
11.8 聯合共用體
11.9 枚舉類型
11.9.1 枚舉類型定義與變數聲明
11.9.2 枚舉類型的使用方法
11.9.3 類型名重新定義typedef
11.10 編程實踐: 中文處理
11.11 本章小結
習題
第12章 檔案
12.1 C檔案概述
12.1.1 C檔案的基本概念
12.1.2 文本檔案與二進制檔案
12.1.3 檔案的處理方法
12.2 流與檔案類型的指針
12.3 檔案操作
12.3.1 檔案的打開
12.3.2 檔案的關閉
12.3.3 字元方式讀寫檔案
12.3.4 數據塊方式讀寫檔案
12.4 檔案的定位與隨機讀寫
12.4.1 檔案的定位
12.4.2 隨機讀寫
12.5 檔案操作的出錯檢測
12.6 檔案讀寫操作套用實例
12.6.1 檔案中數據的修改
12.6.2 檔案中數據的刪除
12.6.3 向檔案中追加或插入數據
12.7 編程實踐: C與C++
12.8 本章小結
習題
第13章 指針的進一步討論與位運算
13.1 多級指針
13.1.1 指向指針的指針與指向行指針的指針
13.1.2 指向指針的指針數組與指向行指針的指針數組
13.2 函式與指針
13.2.1 指向函式的指針變數
13.2.2 指向函式的指針數組
13.2.3 指向返回指針的函式的指針變數
13.2.4 指向返回指針的函式的指針數組
13.2.5 返回行指針的函式
13.2.6 指向返回行指針的函式的指針變數
13.2.7 指向返回行指針的函式的指針數組
13.3 位運算
13.3.1 二進制位運算概述
13.3.2 位運算符
13.3.3 位段
13.4 本章小結
習題
第14章 C程式開發環境與調試
14.1 Visual Studio Community 2015 的安裝與使用
14.1.1 Visual Studio Community 2015 簡介
14.1.2 Visual Studio Community 2015 的安裝
14.1.3 Visual Studio Community 2015 中編寫C程式
14.1.4 Visual Studio Community 2015 中運行C程式
14.1.5 Visual Studio Community 2015 中調試C程式
14.2 Code::Blocks的安裝與使用
14.2.1 Code::Blocks簡介
14.2.2 Code::Blocks的安裝
14.2.3 在Code::Blocks中編寫程式
14.2.4 在Code::Blocks中運行和調試程式
第15章 C語言上機實驗
15.1 實驗概述
15.1.1 實驗目的
15.1.2 實驗步驟
15.2 實驗項目
15.2.1 實驗1: C程式調試與輸入輸出
15.2.2 實驗2: 運算符、表達式及簡單C程式設計
15.2.3 實驗3: 分支及循環結構
15.2.4 實驗4: 循環程式設計
15.2.5 實驗5: 函式程式設計
15.2.6 實驗6: 函式設計
15.2.7 實驗7: 數組、指針的套用
15.2.8 實驗8: 二維數組的套用
15.2.9 實驗9: 結構體與檔案
附錄 部分字元與ASCII代碼對照表
參考文獻

相關詞條

熱門詞條

聯絡我們