目錄
第1章概述
1.1計算機程序和計算機語言
1.1.1低級語言
1.1.2高級語言
1.2C語言程序設計的一般步驟
1.3C語言的發展歷程
1.4初識C語言
1.4.1C語言的特點
1.4.2C和C
1.4.3C語言的字符集
1.4.4C語言的詞匯
1.5*簡單的C語言程序
1.5.1C程序舉例
1.5.2C程序的結構特點
1.5.3養成良好的程序設計風格
1.6運行C程序的步驟與方法
1.7本章小結
習題1
第2章算法與程序
2.1算法基礎知識
2.2算法的特征
2.3幾種常用的算法
2.4簡單算法示例
2.5如何評價一個算法
2.6算法的描述工具
2.6.1自然語言
2.6.2程序流程圖
2.6.3NS結構化流程圖
2.6.4過程設計語言
2.6.5PAD圖
2.6.6判定表和判定樹
2.7結構化程序設計方法
2.8本章小結
習題2
第3章基本數據類型與表達式
3.1數據類型分類
3.2整型數據
3.3浮點型數據
3.4字符型數據
3.5常量與變量
3.5.1常量
3.5.2變量
3.6運算符和表達式
3.6.1C語言運算符簡介
3.6.2算術運算符和算術表達式
3.6.3關系運算符和關系表達式
3.6.4邏輯運算符和邏輯表達式
3.6.5條件運算符和條件運算表達式
3.6.6逗號運算符和逗號表達式
3.7本章小結
習題3
第4章順序結構程序設計
4.1順序程序設計舉例
4.2C語句
4.2.1C語句概述
4.2.2*基本的語句——賦值語句
4.3數據的輸入輸出
4.3.1格式輸出函數printf
4.3.2格式輸入函數scanf
4.3.3字符輸出函數putchar
4.3.4字符輸入函數getchar
4.4本章小結
習題4
第5章選擇結構程序設計
5.1為什么需要選擇結構
5.2用if語句實現選擇結構
5.2.1單分支if語句
5.2.2雙分支if語句
5.2.3多分支if語句
5.3用switch語句實現選擇結構
5.4選擇結構的嵌套
5.5選擇結構程序設計綜合舉例
5.6本章小結
習題5
第6章循環結構程序設計
6.1為什么需要循環結構
6.2用while語句實現循環結構
6.3用do…while語句實現循環結構
6.4用for語句實現循環結構
6.5break語句和continue語句
6.5.1用break語句提前退出循環
6.5.2用continue語句提前結束本次循環
6.6循環的嵌套
6.7循環結構程序設計綜合舉例
6.8本章小結
習題6
第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.3.3引用字符數組中元素
7.3.4字符串和字符串結束標志
7.3.5字符數組的輸入輸出
7.3.6使用字符串處理函數
7.3.7字符數組應用舉例
7.4本章小結
習題7
第8章函數
8.1函數概述
8.2函數的定義
8.2.1無參函數的定義形式
8.2.2有參函數的定義形式
8.2.3定義空函數
8.2.4函數定義注意事項
8.3函數調用
8.3.1函數的參數
8.3.2對調用函數的聲明
8.3.3函數的返回值
8.4嵌套調用和遞歸調用
8.4.1嵌套調用
8.4.2函數的遞歸調用
8.5數組作為函數參數
8.5.1數組元素作函數實參
8.5.2數組名作函數參數
8.5.3多維數組名作函數參數
8.6變量的作用域
8.6.1局部變量
8.6.2全局變量
8.7變量的存儲類型
8.7.1動態存儲方式
8.7.2靜態存儲方式
8.7.3存儲類別小結
8.8內部函數和外部函數
8.8.1內部函數
8.8.2外部函數
8.9本章小結
習題8
第9章指針
9.1指針概述
9.2指針變量
9.2.1指針變量的定義
9.2.2指針變量的初始化
9.2.3指針變量的引用
9.2.4指針變量的運算
9.3指針與數組
9.3.1數組指針
9.3.2指針數組
9.3.3指向多維數組的指針
9.4指針與字符串
9.4.1字符型指針
9.4.2通過指針引用字符串
9.4.3指針處理字符串應用舉例
9.5指針與函數
9.5.1函數指針
9.5.2指針函數
9.5.3帶參的main函數
9.6多重指針
9.7動態內存分配與指向它的指針變量
9.7.1內存的分配
9.7.2動態創建數組
9.8本章小結
習題9
第10章結構體、共用體和枚舉類型
10.1結構體
10.1.1結構體的定義
10.1.2結構體變量的定義
10.1.3結構體變量的使用
10.1.4結構體數組
10.1.5結構體與指針
10.1.6結構體綜合舉例
10.2鏈表
10.2.1鏈表基本結構與定義
10.2.2鏈表基本操作
10.2.3建立動態鏈表
10.2.4輸出鏈表
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.5用typedef重定義數據類型名
10.5.1typedef概述
10.5.2typedef的典型用法
10.5.3typedef與#define的區別
10.6本章小結
習題10
第11章位運算
11.1位運算概述
11.2位運算符
11.2.1取反運算
11.2.2左移運算
11.2.3右移運算
11.2.4按位與運算
11.2.5按位異或運算
11.2.6按位或運算
11.2.7不同長度的數據進行位運算
11.2.8位運算舉例
11.3位段
11.4本章小結
習題11
第12章文件
12.1文件概述
12.2文件類型指針
12.3文件的打開和關閉
12.3.1打開文件函數fopen
12.3.2關閉文件函數fclose
12.4文件的讀寫
12.4.1字符讀寫函數fputc和fgetc
12.4.2字符串讀寫函數fputs和fgets
12.4.3數據塊讀寫函數fwrite和fread
12.4.4格式化讀寫函數fprintf和fscanf
12.5文件的定位
12.5.1文件位置指針定位函數fseek
12.5.2文件位置指針復位函數rewind
12.5.3文件位置指針查詢函數ftell
12.6文件檢測函數
12.6.1文件結束檢測函數feof
12.6.2文件出錯檢測函數ferror
12.6.3文件出錯標志和文件結束標志置0函數clearerr
12.6.4應用舉例
12.7本章小結
習題12
附錄A常用字符與ASCII碼對照表
附錄BC語言中的關鍵字
附錄C運算符和結合性
附錄DC語言常用語法
附錄EANSI C常用庫函數
參考文獻