第1章程序設計基礎
1.1算法及表示
1.1.1算法的特性
1.1.2算法的表示
1.2程序設計及結構化程序設計方法
1.2.1程序
1.2.2程序設計
1.2.3結構化程序設計
1.3C語言的發展及特點
1.3.1C語言出現的歷史背景
1.3.2C語言的特點
1.4C程序的構成
1.5程序的書寫格式和程序的書寫風格
實驗Turbo C、VC的使用
習題1
第2章數據類型、運算符和表達式
2.1C語言數據類型簡介
2.2標識符
2.2.1字符集
2.2.2標識符概述
2.2.3標識符的分類
2.3常量與變量
2.3.1常量
2.3.2符號常量
2.3.3變量
2.3.4變量賦初值
2.4整型數據
2.4.1整型數據在內存中的存儲形式
2.4.2整型常量
2.4.3整型變量
2.5實型數據
2.5.1實型常量
2.5.2實型變量
2.6字符型數據
2.6.1字符常量
2.6.2字符串常量
2.6.3字符變量
2.7運算符和表達式
2.7.1C運算符簡介
2.7.2表達式的求值規則
2.7.3混合運算中的類型轉換
2.8算術運算符和算術表達式
2.8.1基本算術運算符
2.8.2算術表達式和運算符的優先級與結合性
2.8.3自增、自減運算符
2.9賦值運算與賦值表達式
2.9.1賦值運算符
2.9.2類型轉換
2.9.3復合的賦值運算符
2.9.4賦值表達式
2.10逗號運算符和逗號表達式
2.11關繫運算符和關繫表達式
2.11.1關繫運算符及其優先次序
2.11.2關繫表達式
2.12邏輯運算符及邏輯表達式
2.12.1邏輯運算符及其優先次序
2.12.2邏輯表達式
2.13條件運算符與條件表達式
2.13.1條件運算符與條件表達式
2.13.2條件運算符的優先級與結合性
實驗數據類型、運算符和表達式
習題2
第3章順序結構程序設計
3.1C語句概述
3.2賦值語句
3.3字符數據的輸入/輸出
3.3.1字符輸出函數putchar()
3.3.2字符輸入函數getchar()
3.4格式輸入/輸出
3.4.1格式輸出函數printf()
3.4.2格式輸入函數scanf()
3.5應用舉例
實驗(一)輸入/輸出函數及格式
實驗(二)順序結構程序設計
習題3
第4章選擇結構程序設計
4.1if語句
4.1.1簡單if語句
4.1.2雙分支if語句
4.1.3多分支if語句
4.1.4if語句使用說明
4.2if語句的嵌套
4.3多分支結構
實驗(一)if語句
實驗(二)多分支選擇語句
習題4
第5章循環結構程序設計
5.1goto語句以及用goto語句構成循環
5.2while語句
5.3do…while語句
5.4for語句
5.5幾種循環的比較
5.6循環嵌套
5.7continue語句
5.8break語句
實驗(一)循環程序設計(一)
實驗(二)循環程序設計(二)
實驗(三)多重循環
實驗(四)綜合實驗
習題5
第6章數組
6.1數組素
6.2一維數組
6.2.1一維數組的定義和引用
6.2.2一維數組的初始化
6.3多維數組
6.3.1二維數組的定義和引用
6.3.2二維數組的初始化
6.4字符數組
6.4.1字符數組的定義和引用
6.4.2字符數組的初始化
6.4.3字符串的輸入/輸出
6.4.4用於字符處理的庫函數
實驗(一)一維數組的使用
實驗(二)二維數組的使用
實驗(三)字符數組和字符串
實驗(四)綜合實驗
習題6
第7章函數
7.1模塊化程序設計
7.1.1模塊化程序設計簡介
7.1.2函數概述
7.2函數的定義
7.2.1無參函數的定義
7.2.2有參函數的定義
7.2.3函數的返回值
7.3函數的調用
7.3.1函數調用的一般形式
7.3.2函數的聲明
7.3.3函數參數的傳遞
7.4函數的嵌套調用與遞歸調用
7.4.1函數的嵌套調用
7.4.2函數的遞歸調用
7.5數組作函數參數
7.5.1素作函數實參
7.5.2數組名作函數參數
7.5.3多維數組作函數參數
7.6變量的作用域
7.6.1局部變量
7.6.2全局變量
7.7變量的存儲類別
7.7.1變量的生存期
7.7.2局部變量的存儲類別
7.7.3全局變量的存儲類別
7.7.4存儲類別小結
7.8內部函數和外部函數
7.8.1內部函數
7.8.2外部函數
實驗(一)函數的引用
實驗(二)函數的嵌套調用和遞歸調用
實驗(三)變量的作用域及存儲類別
實驗(四)綜合實驗
習題7
第8章編譯預處理
8.1宏定義
8.1.1不帶參數的宏定義
8.1.2帶參數的宏定義
8.2文件包含
8.3條件編譯
實驗編譯預處理
習題8
第9章指針
9.1相關概念
9.1.1變量的地址
9.1.2數據的訪問方式
9.1.3指針和指針變量
9.2指針變量的定義和使用
9.2.1指針變量的定義
9.2.2指針變量的初始化和賦值
9.2.3指針變量的引用
9.2.4指針的運算
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.6函數的指針和指向函數的指針變量
9.6.1用函數指針變量調用函數
9.6.2指向函數的指針變量作函數參數
9.7返回指針值的函數
9.8指針數組和指向指針的指針
9.8.1指針數組的概念
9.8.2指向指針的指針
9.8.3main()函數的命令行參數
實驗(一)指針的使用
實驗(二)指針作函數參數
實驗(三)綜合試驗
習題9
第10章結構體與共用體
10.1結構體類型及變量的定義
10.1.1結構體類型的定義
10.1.2結構體變量的定義
10.2結構體變量的引用和初始化
10.3結構體數組
10.3.1定義結構體數組
10.3.2結構體數組的初始化
10.4指向結構體類型數據的指針
10.4.1指向結構體變量的指針
10.4.2指向結構體數組的指針
10.4.3結構體變量和指向結構體的指針作函數參數
10.5用指針處理鏈表
10.5.1鏈表概述
10.5.2處理動態鏈表所需的函數
10.5.3鏈表的基本操作
10.6共用體
10.6.1共用體變量的引用方式
10.6.2共用體類型數據的特點
10.7枚舉類型
10.8用typedef定義類型
實驗結構體與共用體
習題10
第11章位運算
11.1位運算符與位運算
11.1.1按位與運算符(&)
11.1.2按位或運算符(|)
11.1.3按位異或運算符(^)
11.1.4按位取反運算符(~)
11.1.5左移運算符(<<)
11.1.6右移運算符(>>)
11.1.7位運算賦值運算符
11.1.8不同長度的數據進行位運算
11.2位段
實驗位運算
習題11
第12章文件
12.1文件的概念
12.2文件操作函數
12.2.1文件的打開
12.2.2文件的關閉
12.3文件檢測函數
12.4常用的讀寫函數
12.4.1讀寫字符函數
12.4.2讀寫字符串函數
12.4.3讀寫數據塊函數
12.4.4格式化讀寫函數:fprintf()函數和fscanf()函數
12.5文件的定位
12.5.1rewind()函數
12.5.2隨機讀寫和fseek()函數
實驗文件操作
習題12
第13章實用項目開發技術簡介
13.1 C語言圖形功能簡介
13.1.1圖形與硬件
13.1.2文本與圖形
13.1.3圖形設計
13.2圖形模式的初始化
13.3獨立圖形運行程序的建立
13.4屏幕顏色的設置和清屏函數
13.5基本畫圖函數
13.5.1畫點
13.5.2畫線
13.6基本圖形的填充
13.6.1基本圖形的填充
13.6.2設定填充方式
13.6.3任意封閉圖形的填充
13.7圖形操作函數
13.7.1圖形窗口操作
13.7.2屏幕操作函數
13.8圖形模式下的文本操作
13.8.1文本的輸出
13.8.2文本字體、字型和輸出方式的設置
13.8.3用戶對文本字符大小的設置
13.9C語言動畫設計
13.10菜單設計技術
13.10.1下拉式菜單的設計
13.10.2選擇式菜單的設計
13.11大型程序開發的項目管理
13.11.1項目管理器
13.11.2用項目管理器開發程序項目的步驟
13.11.3項目管理器的使用技巧
實驗C語言的圖形功能
習題13
附錄A習題參考答案
附錄BTurbo C編譯出錯信息
參考文獻