本書根據C語言程序設計的特點,以培養初學者的編程思維、分析和解決問題的能力、程序設計基本能力為目標,通過豐富的實例詳細介紹了C 語言程序設計的思想及方法。
全書分為11章,主要內容包括:C語言概述、數據類型、運算符與表達式、簡單程序設計、輸入/輸出函數、程序流程控制、數組、函數、指針、結構體、共用體與枚舉、位運算、文件和綜合應用實例。本書敘述嚴謹、實例豐富、重點突出、語言簡練,每章均配有教學課件和精心設計的習題。
以培養初學者的編程思維、分析和解決問題的能力、程序設計基本能力為目標
李列文,2014年畢業獲工學博士學位。長沙師范學院電子與信息工程系教授。承擔科研項目——湖南省教育廳科學研究項目,《深亞納米工藝下FPGA靜態功耗優化方法研究》等多項課題。
第1章 緒論
1.1 C語言的發展歷史
1.2 C語言的特點
1.3 簡單的C語言程序介紹
1.3.1 程序快速簡介
1.3.2 程序細節
1.4 C語言程序的格式
1.5 使用C語言的7個步驟
1.6 開發環境
1.6.1 Visual C++ 6.0
1.6.2 使用Turbo C 2.0編程
小 結
習 題
第2章 數據類型、運算符與表達式
2.1 數據類型
2.2 變量
2.2.1 變量的類型
2.2.2 類型修飾符
2.2.3 變量的定義
2.2.4 存儲單元的基本概念
2.3 常量
2.3.1 整型常量
2.3.2 實型常量
2.3.3 字符常量
2.3.4 字符串常量
2.3.5 符號常量
2.4 運算符與表達式
2.4.1 運算符的優先級和結合性
2.4.2 算術運算符和算術表達式
2.4.3 關系運算符和關系表達式
2.4.4 邏輯運算符和邏輯表達式
2.4.5 位運算符
2.4.6 賦值運算符和賦值表達式
2.4.7 逗號運算符和逗號表達式
2.4.8 條件運算符和條件表達式
2.4.9 求字節數運算符
2.5 不同類型數據之間的轉換
2.5.1 自動類型轉換
2.5.2 強制類型轉換
小 結
習 題
第3章 簡單的程序設計
3.1 C語句概述
3.2 順序結構
3.3 輸入/輸出
3.3.1 字符數據輸入/輸出
3.3.2 格式化輸入/輸出
小 結
習 題
第4章 控制流與程序結構
4.1 算法概述
4.1.1 算法
4.1.2 算法的主要特征
4.1.3 算法的表示
4.2 選擇語句
4.2.1 if語句
4.2.2 switch…case語句
4.3 循環語句
4.3.1 while語句
4.3.2 do…while語句
4.3.3 for語句
4.3.4 循環語句的嵌套
4.4 跳轉語句
4.4.1 goto語句
4.4.2 break語句
4.4.3 continue語句
小 結
習 題
第5章 數組
5.1 數組概述
5.1.1 初始化
5.1.2 指定初始化項目
5.1.3 為數組賦值
5.1.4 數組邊界
5.1.5 指定數組大小
5.2 多維數組
5.2.1 二維數組
5.2.2 更多維數的數組
5.3 數組的排序算法
5.3.1 冒泡法排序
5.3.2 插入法排序
5.3.3 折半法排序
5.4 字符串處理函數
5.4.1 字符串復制函數
5.4.2 字符串連接函數
5.4.3 字符串比較函數
5.4.4 獲得字符串長度函數
小 結
習 題
第6章 函數
6.1 函數概述
6.2 函數的定義與調用
6.2.1 函數定義
6.2.2 函數調用
6.2.3 形式參數與實際參數
6.2.4 函數的值
6.3 函數的嵌套與遞歸
6.3.1 嵌套調用
6.3.2 遞歸調用
6.4 變量的作用域
6.4.1 局部變量
6.4.2 全局變量
6.5 變量的存儲類型
6.5.1 自動變量
6.5.2 靜態變量
6.5.3 寄存器變量
6.5.4 外部變量
6.6 內部函數和外部函數
6.6.1 內部函數
6.6.2 外部函數
6.7 預處理指令
6.7.1 文件包含
6.7.2 宏定義
6.7.3 條件編譯
小 結
習 題
第7章 指針
7.1 指針相關概念
7.1.1 地址與指針
7.1.2 變量與指針
7.1.3 指針變量
7.1.4 指針自加自減運算
7.2 數組與指針
7.2.1 一維數組與指針
7.2.2 二維數組與指針
7.2.3 字符串與指針
7.2.4 字符數組
7.3 指針與函數
7.3.1 函數返回值是指針
7.3.2 指向函數的指針
7.4 動態存儲分配
小 結
習 題
第8章 結構體、共用體與枚舉
8.1 結構體
8.1.1 結構體類型的定義
8.1.2 結構體變量的定義和初始化
8.1.3 結構體變量的引用
8.1.4 結構體數組
8.1.5 結構指針
8.1.6 結構體與函數
8.1.7 鏈表的基本操作
8.2 共用體
8.2.1 共用體類型的定義
8.2.2 共用體變量的說明和引用
8.3 枚舉類型
8.3.1 枚舉類型的定義
8.3.2 枚舉變量的定義和引用
8.4 用戶定義類型
8.5 程序舉例
小 結
習 題
第9章 位運算
9.1 數值在計算機中的表示
9.1.1 二進制位與字節
9.1.2 數的表示主要形式
9.2 位運算
9.2.1 按位與運算
9.2.2 按位或運算
9.2.3 按位異或運算
9.2.4 按位取反運算
9.2.5 左移運算
9.2.6 右移運算
9.3 位域
9.3.1 位域的定義和位域變量的說明
9.3.2 位域的使用
小 結
習 題
第10章 文件
10.1 文件的概述
10.1.1 文件的基本概念
10.1.2 文件指針
10.2 文件的打開與關閉
10.2.1 文件的打開
10.2.2 文件的關閉
10.3 文件的讀/寫
10.3.1 字符讀/寫函數
10.3.2 字符串讀/寫函數
10.3.3 格式化讀/寫函數
10.3.4 數據塊讀/寫函數
10.3.5 判斷文件結束函數
10.4 文件定位函數
10.4.1 fseek函數
10.4.2 rewind函數
小 結
習 題
第11章 C語言項目實踐
11.1 圖書管理系統
11.1.1 系統功能與系統總體設計
11.1.2 功能模塊的設計
11.1.3 數據結構設計
11.1.4 函數功能描述
11.1.5 程序演示
11.1.6 程序清單
11.2 企業員工信息管理系統
11.2.1 系統功能總體設計
11.2.2 功能模塊的設計
11.2.3 數據結構設計
11.2.4 函數功能描述
11.2.5 程序演示
11.2.6 程序清單
11.3 Linux下C語言程序開發
11.3.1 Linux簡介
11.3.2 Linux安裝與常用命令
11.3.3 Linux常用命令
11.3.4 編輯器vi的使用
11.3.5 Linux下的C語言開發流程
小 結
附錄A 常用ASCII碼對照表
附錄B C語言中的關鍵字
附錄C 運算符的優先級和結合性
附錄D 常用ANSI C語言標準庫函數
參考文獻