第1章程序與C語言
1.1馮·諾依曼計(jì)算機(jī)
1.2程序設(shè)計(jì)語言
1.2.1機(jī)器語言
1.2.2匯編語言
1.2.3高級編程語言
1.3C語言概述
1.3.1C語言的歷史從B到C
1.3.2C語言標(biāo)準(zhǔn)
1.4C語言程序
1.4.1第一個C語言程序
1.4.2預(yù)處理、編譯和鏈接
1.4.3在Code::Blocks中編寫C語言程序
1.5本章小結(jié)
練習(xí)題
第2章數(shù)據(jù)類型
2.1整型數(shù)據(jù)
2.1.1整型數(shù)據(jù)的表示
2.1.2C語言中的整數(shù)類型
2.1.3整型字面量
2.1.4整型變量的聲明
2.1.5整型數(shù)據(jù)的輸入/輸出
2.2實(shí)型數(shù)據(jù)
2.2.1實(shí)數(shù)在計(jì)算機(jī)中的表示
2.2.2浮點(diǎn)型字面量與變量
2.2.3浮點(diǎn)型數(shù)據(jù)的輸入/輸出
2.3字符型數(shù)據(jù)
2.3.1字符型數(shù)據(jù)在計(jì)算機(jī)中的表示
2.3.2字符型字面量與字符變量
2.3.3字符型數(shù)據(jù)的輸入/輸出
2.4命名常量
2.4.1符號常量
2.4.2const限定符
2.5本章小結(jié)
練習(xí)題
第3章運(yùn)算符、表達(dá)式和語句
3.1運(yùn)算符和表達(dá)式
3.1.1算術(shù)運(yùn)算符和算術(shù)表達(dá)式
3.1.2運(yùn)算符的優(yōu)先級和結(jié)合性
3.1.3賦值運(yùn)算符與表達(dá)式
3.1.4遞增、遞減運(yùn)算符
3.2數(shù)據(jù)類型轉(zhuǎn)換
3.2.1數(shù)據(jù)類型的隱式轉(zhuǎn)換
3.2.2強(qiáng)制類型轉(zhuǎn)換運(yùn)算符
3.3表達(dá)式語句
3.4本章小結(jié)
練習(xí)題
第4章程序控制結(jié)構(gòu)選擇結(jié)構(gòu)
4.1關(guān)系表達(dá)式和邏輯表達(dá)式
4.1.1關(guān)系運(yùn)算符與關(guān)系表達(dá)式
4.1.2邏輯運(yùn)算符與邏輯表達(dá)式
4.1.3短路特性
4.2if語句
4.2.1簡單形式的if語句
4.2.2ifelse語句
4.2.3條件運(yùn)算符和條件表達(dá)式
4.2.4嵌套if語句
4.3switch語句
4.3.1break語句
4.3.2多個case共享語句組
4.4本章小結(jié)
練習(xí)題
第5章程序控制結(jié)構(gòu)循環(huán)結(jié)構(gòu)
5.1while語句
5.1.1引例
5.1.2while語句的使用
5.2for語句
5.2.1使用for語句的注意事項(xiàng)
5.2.2逗號運(yùn)算符
5.2.3應(yīng)用實(shí)例
5.3dowhile語句
5.4break和continue語句
5.4.1break語句
5.4.2continue語句
5.5循環(huán)嵌套
5.6本章小結(jié)
練習(xí)題
第6章數(shù)組
6.1一維數(shù)組
6.1.1一維數(shù)組的定義
6.1.2一維數(shù)組初始化
6.1.3應(yīng)用實(shí)例
6.2二維數(shù)組
6.2.1二維數(shù)組的定義與使用
6.2.2二維數(shù)組與一維數(shù)組
6.2.3二維數(shù)組初始化
6.2.4應(yīng)用實(shí)例
6.3本章小結(jié)
練習(xí)題
第7章指針與數(shù)組
7.1地址和指針
7.1.1地址
7.1.2指針
7.2指針運(yùn)算
7.2.1間接尋址運(yùn)算
7.2.2指針賦值運(yùn)算
7.2.3指針?biāo)阈g(shù)運(yùn)算
7.3指針與一維數(shù)組
7.3.1一維數(shù)組的地址
7.3.2指向一維數(shù)組的指針
7.3.3數(shù)組名與指向數(shù)組的變量
7.4指針與二維數(shù)組
7.4.1二維數(shù)組的地址
7.4.2指向二維數(shù)組的指針變量
7.5指針數(shù)組
7.6本章小結(jié)
練習(xí)題
第8章函數(shù)
8.1函數(shù)的定義
8.1.1什么是函數(shù)
8.1.2函數(shù)的定義
8.1.3return語句
8.1.4帶參數(shù)的宏
8.2函數(shù)調(diào)用
8.2.1函數(shù)調(diào)用的一般形式
8.2.2函數(shù)調(diào)用時(shí)的參數(shù)傳遞
8.2.3函數(shù)聲明
8.3遞歸
8.4數(shù)組和指針作函數(shù)參數(shù)
8.4.1一維數(shù)組作函數(shù)參數(shù)
8.4.2二維數(shù)組作函數(shù)參數(shù)
8.4.3指針作函數(shù)參數(shù)
8.4.4使用const關(guān)鍵字保護(hù)數(shù)據(jù)
8.4.5指向函數(shù)的指針和返回指針的函數(shù)
8.5局部變量與全局變量
8.5.1局部變量
8.5.2全局變量
8.5.3作用域規(guī)則
8.6變量的存儲類別
8.6.1auto
8.6.2register
8.6.3static
8.6.4extern
8.7本章小結(jié)
練習(xí)題
第9章字符串
9.1字符串常量
9.2字符串變量
9.2.1字符串變量的定義與初始化
9.2.2字符串的輸出
9.2.3字符數(shù)組與字符指針
9.3字符串的輸入
9.3.1使用scanf()函數(shù)讀取字符串
9.3.2使用gets()函數(shù)讀取字符串
9.3.3使用fgets()函數(shù)讀取字符串
9.3.4逐個字符的方式讀取字符串
9.4常用字符串處理函數(shù)
9.4.1strlen()函數(shù)
9.4.2strcpy()函數(shù)和strncpy()函數(shù)
9.4.3strcat()函數(shù)
9.4.4strcmp()函數(shù)
9.4.5sprintf()函數(shù)
9.5字符串?dāng)?shù)組
9.6本章小結(jié)
練習(xí)題
第10章結(jié)構(gòu)體和共用體
10.1結(jié)構(gòu)體類型與結(jié)構(gòu)體變量
10.1.1結(jié)構(gòu)體類型的定義
10.1.2結(jié)構(gòu)體變量的定義
10.1.3用typedef為結(jié)構(gòu)體類型定義別名
10.1.4結(jié)構(gòu)體變量的引用和初始化
10.2結(jié)構(gòu)體數(shù)組
10.2.1結(jié)構(gòu)體數(shù)組的定義
10.2.2結(jié)構(gòu)體數(shù)組的初始化
10.3結(jié)構(gòu)體類型指針
10.3.1指向結(jié)構(gòu)體變量的指針
10.3.2指向結(jié)構(gòu)體數(shù)組的指針
10.4結(jié)構(gòu)體與函數(shù)
10.4.1結(jié)構(gòu)體變量的成員作函數(shù)參數(shù)
10.4.2結(jié)構(gòu)體變量作函數(shù)參數(shù)
10.4.3指向結(jié)構(gòu)體的指針作函數(shù)參數(shù)
10.5共用體
10.5.1共用體類型和變量的定義
10.5.2共用體變量的初始化和引用
10.6本章小結(jié)
練習(xí)題
第11章文件操作
11.1文件概述
11.1.1文件的概念
11.1.2數(shù)據(jù)文件的存儲形式
11.1.3文件指針
11.2文件的打開與關(guān)閉
11.2.1打開文件
11.2.2關(guān)閉文件
11.3文本文件的讀/寫
11.3.1讀單字符函數(shù)fgetc()
11.3.2寫單字符函數(shù)fputc()
11.3.3讀字符串函數(shù)fgets()
11.3.4寫字符串函數(shù)fputs()
11.4二進(jìn)制文件的讀/寫
11.4.1讀數(shù)據(jù)塊函數(shù)fread()
11.4.2寫數(shù)據(jù)塊函數(shù)fwrite()
11.5文件的格式化讀/寫
11.5.1格式化文件讀函數(shù)fscanf()
11.5.2格式化文件寫函數(shù)fprintf()函數(shù)
11.6文件的隨機(jī)讀/寫
11.7本章小結(jié)
練習(xí)題
參考文獻(xiàn)
附錄1ASCII碼表
附錄2C語言的運(yùn)算符優(yōu)先級
附錄3CodeBlocks中常用的快捷鍵