C語言程序設計教程

孟憲福主編書籍

《C語言程序設計教程》是2015年清華大學出版社出版的圖書,作者是孟憲福。

內容簡介


C語言是一種應用非常廣泛的結構化高級程序設計語言,既適合於編寫應用軟體,又特別適合於編寫系統軟體。本書由12章組成,按照循序漸進的原則,詳細地介紹C語言的基本概念和語法規則,同時在難點的講解上力求準確、完整。在此基礎上,通過精選的典型例題分析,使得讀者能夠儘快掌握利用C語言進行程序設計的技巧和方法,特別是,為了使讀者能夠儘快利用C語言編寫大型實用程序,在書中的最後一章詳細分析了一個圖形編輯程序的設計與實現過程,並給出了完整的源程序。本書是作者根據多年的教學經驗編寫而成的,在內容編排上盡量體現出易學的特點,在文字敘述上力求條理清晰、文字簡潔,以便讀者閱讀。本書可作為大專院校計算機專業及其相關專業的教材或教學參考書,也可作為自學用書。

圖書目錄


第1章緒言
1.1C語言簡介
1.1.1C語言發展簡史
1.1.2C語言的特點
1.2C語言程序的開發步驟
1.3C語言的程序結構
1.4演演算法的表示
1.4.1演演算法的流程圖表示法
1.4.2演演算法的NS流程圖表示法
1.4.3演演算法的偽代碼表示法
習題
第2章數據、運算符和表達式
2.1基本概念
2.1.1標識符
2.1.2常量
2.1.3變數
2.1.4關鍵字
2.2基本數據類型
2.2.1整型變數及其常量
2.2.2浮點型變數及其常量
2.2.3字元型變數及其常量
2.2.4長整型、短整型和無符號整型
2.2.5類型定義typedef
2.3算術運算符賦值運算符及其表達式
2.3.1算術運算符和算術表達式
2.3.2賦值運算符和賦值表達式
2.4關係運算符邏輯運算符及其表達式
2.4.1關係運算符和關係表達式
2.4.2邏輯運算符和邏輯表達式
2.5變數的初始化
2.6不同類型的數據之間的轉換
2.6.1自動類型轉換
2.6.2強制類型轉換
2.7sizeof運算符
2.8應用舉例
習題
第3章數據的輸入和輸出
3.1數據的輸入
3.1.1字元輸入函數getchar
3.1.2格式輸入函數scanf
3.2數據的輸出
3.2.1字元輸出函數putchar
3.2.2格式輸出函數printf
3.3應用舉例
習題
第4章基本語句
4.1結構化程序設計簡介
4.2語句和複合語句
4.3條件語句
4.3.1if語句
4.3.2條件運算符
4.3.3switch語句
4.3.4應用舉例
4.4循環語句
4.4.1while循環語句
4.4.2dowhile循環語句
4.4.3for循環語句
4.4.4break語句和continue語句
4.4.5goto語句
4.4.6逗號運算符和空操作語句
4.4.7應用舉例
習題
第5章數組
5.1一維數組
5.1.1一維數組的定義和引用
5.1.2一維數組元素的初始化
5.2二維數組
5.2.1二維數組的定義和引用
5.2.2二維數組元素的初始化
5.3字元數組和字元串
5.3.1字元數組
5.3.2字元串
5.4應用舉例
習題
第6章函數
6.1函數的概念
6.2函數的定義和調用
6.2.1函數的定義
6.2.2函數的調用
6.3函數的返回值
6.4函數原型
6.5函數的參數及其傳遞方式
6.5.1非數組作為函數參數
6.5.2數組作為函數參數
6.6函數的嵌套調用和遞歸調用
6.6.1函數的嵌套調用
6.6.2函數的遞歸調用
6.7變數的作用域及其存儲類別
6.7.1局部變數及其存儲類別
6.7.2全局變數及其存儲類別
6.8內部函數和外部函數
6.8.1內部函數
6.8.2外部函數
6.9應用舉例
習題
第7章編譯預處理
7.1宏定義
7.2文件包括
7.3條件編譯
7.4應用舉例
習題
第8章結構和聯合
8.1結構類型變數的定義
8.2結構類型變數的引用
8.3結構變數的初始化
8.4結構和函數
8.4.1結構變數作函數參數
8.4.2函數的返回值是結構類型變數
8.5結構和數組
8.5.1結構中包含數組
8.5.2結構數組
8.6結構的嵌套
8.7聯合
8.8枚舉
8.9應用舉例
習題
第9章位運算
9.1二進位位運算
9.2位段
9.3應用舉例
習題
第10章指針
10.1指針的基本概念
10.2指針變數的定義和引用
10.2.1指針變數的定義
10.2.2指針變數的引用
10.3指針和結構
10.3.1指向結構的指針
10.3.2結構中包含指針
10.3.3鏈表
10.3.4二叉樹
10.4指針和數組
10.4.1指向數組元素的指針及其操作
10.4.2數組名和函數參數
10.4.3字元串和指針
10.4.4指針數組
10.4.5指針與++、--運算符
10.5指針和函數
10.5.1指針變數作為函數的參數
10.5.2函數的返回值是指針
10.5.3指向函數的指針
10.5.4命令行參數
10.6.1二級指針的基本概念
10.6.2二級指針與指針數組的關係
10.7二維數組與指針
10.7.1指向二維數組的指針定義
10.7.2利用指針訪問二維數組元素
10.8二維數組與函數
10.8.1函數參數是二維數組
10.8.2函數的返回值是指向二維數組的指針
10.9複雜的定義形式
10.10對typedef的進一步說明
10.11應用舉例
習題
第11章文件
11.1文件的基本概念
11.2文件類型指針和文件號
11.3緩衝文件系統
11.3.1文件打開函數fopen
11.3.2文件關閉函數fclose
11.3.3文件讀函數fgetc,fread,fscanf
11.3.4文件寫函數fputcfwritefprintf
11.3.5文件定位函數rewind,fseekftell
11.3.6應用舉例
11.4非緩衝文件系統
11.4.1文件打開函數open和文件創建函數creat
11.4.2文件關閉函數close
11.4.3文件讀函數read
11.4.4文件寫函數write
11.4.5文件定位函數lseek、tell
11.4.6應用舉例
習題
第12章C語言綜合應用
12.1圖形編輯程序Panda
12.2圖形庫函數簡介
12.3Panda的數據組織
12.4Panda的實現
12.4.1Panda的菜單設計
12.4.2Panda的圖形處理
12.4.3Panda的文件操作
12.5Panda源程序清單
習題
附錄A標準ASCII字符集
附錄B運算符的優先順序及其結合性
附錄CTurboC集成開發環境簡介
附錄DC語言的巴科斯範式描述