第1章 概述 1
1.1 程序与程序设计语言简介 1
1.1.1 程序的基本概念 1
1.1.2 程序设计语言 2
1.2 C语言的发展与特点 3
1.2.1 C语言的发展 3
1.2.2 C语言的特点 4
1.3 C语言的词法记号 5
1.3.1 C语言的字符集 5
1.3.2 标识符 5
1.3.3 关键字 6
1.3.4 语句 6
1.3.5 标准库函数 6
1.4 C语言的简单实例 7
1.5 C语言程序的基本结构 8
1.6 C语言程序的实现 9
1.6.1 源程序、目标程序、可执行程序的概念 9
1.6.2 C语言程序的编辑、编译、连接、运行 9
1.6.3 实现问题求解的方法举例 10
小结 12
习题 13
第2章 C语言程序设计基础 16
2.1 C语言的数据类型 16
2.1.1 基本数据类型 16
2.1.2 数据的存储 17
2.2 常量与变量 18
2.2.1 常量 18
2.2.2 变量 21
2.3 运算符与表达式 22
2.3.1 表达式的含义 23
2.3.2 算术运算符及表达式 23
2.3.3 赋值运算符及表达式 25
2.3.4 关系运算符及表达式 25
2.3.5 条件运算符及表达式 26
2.3.6 逻辑运算符及表达式 27
2.3.7 位运算符及表达式 27
2.3.8 逗号运算符及表达式 29
2.3.9 其他运算 29
2.4 数据类型的转换 30
2.4.1 自动转换(隐式转换) 30
2.4.2 强制转换(显式转换) 31
小结 32
习题 33
第3章 结构化程序设计基础 36
3.1 算法的概念及表示 36
3.1.1 算法的概念 36
3.1.2 算法的表示 36
3.2 顺序结构程序设计 38
3.2.1 C程序的语句 38
3.2.2 基本输入输出处理 41
3.2.3 字符数据的输入和输出 41
3.2.4 格式输入与输出 43
3.2.5 基本输入输出举例 49
3.2.6 顺序结构程序设计 50
3.3 选择结构程序设计 52
3.3.1 if语句 52
3.3.2 switch语句 60
3.4 循环结构程序设计 63
3.4.1 while语句 63
3.4.2 do…while语句 65
3.4.3 for语句 66
3.4.4 多重循环 69
3.4.5 跳转语句 70
3.4.6 几种循环的比较 73
3.5 应用举例 73
小结 77
习题 79
第4章 数组与指针 90
4.1 数组基础知识 90
4.2 一维数组 90
4.2.1 一维数组的定义 90
4.2.2 一维数组元素的存储 91
4.2.3 一维数组元素的引用 92
4.2.4 一维数组的初始化 92
4.2.5 一维数组应用举例 93
4.3 二维数组 94
4.3.1 二维数组的定义 95
4.3.2 二维数组元素的存储 95
4.3.3 二维数组元素的引用 95
4.3.4 二维数组的初始化 96
4.3.5 二维数组应用举例 96
4.4 字符数组与字符串 98
4.4.1 字符数组的定义 99
4.4.2 字符数组的初始化 99
4.4.3 字符数组的引用 100
4.4.4 字符串与字符串结束标志 100
4.4.5 字符数组的输入与输出 100
4.4.6 字符串处理函数 102
4.5 指针 106
4.5.1 指针的概念 106
4.5.2 指针变量的定义与引用 107
4.5.3 数组的指针表示 112
4.5.4 指针与字符串 116
4.5.5 指针数组 117
4.6 应用举例 119
小结 123
习题 125
第5章 函数 131
5.1 函数的概念 131
5.1.1 函数的分类 131
5.1.2 函数的定义 132
5.1.3 函数的参数与函数的值 134
5.2 函数的调用 136
5.2.1 函数调用方法 136
5.2.2 函数的参数传递 139
5.2.3 函数的嵌套调用与递归调用 142
5.3 数组作函数参数 147
5.3.1 数组元素作函数的实参 147
5.3.2 数组作函数参数 148
5.4 指针与函数 150
5.4.1 指针变量作函数参数 150
5.4.2 指针数组作函数参数 152
5.4.3 指针作函数的返回值 154
5.4.4 指向函数的指针 154
5.5 变量的存储类别 157
5.5.1 局部变量与全局变量 157
5.5.2 变量的存储类别 161
5.6 编译预处理 168
5.6.1 编译预处理概述 168
5.6.2 宏定义 169
5.6.3 文件包含 174
5.6.4 条件编译 174
5.7 应用举例 176
小结 179
习题 180
第6章 结构体、共用体和枚举 188
6.1 结构体 188
6.1.1 结构体类型的定义 188
6.1.2 结构体变量的定义、引用和初始化 189
6.1.3 结构体数组 192
6.1.4 指针在结构体中的应用 193
6.1.5 链表 197
6.2 共用体 203
6.2.1 共用体及共用体变量的定义 203
6.2.2 共用体变量的引用方式 204
6.2.3 共用体类型数据的特点 204
6.3 枚举类型 205
6.3.1 枚举类型的定义 205
6.3.2 枚举变量的定义 206
6.4 自定义数据类型 207
6.5 综合应用 207
小结 208
习题 209
第7章 文件 211
7.1 文件概述 211
7.2 文件指针 212
7.3 文件的操作 213
7.3.1 文件的打开与关闭 213
7.3.2 字符读写操作 215
7.3.3 字符串读写操作 216
7.3.4 数据块读写操作 217
7.3.5 格式化读写操作 219
7.4 文件的定位 220
7.4.1 重新定位操作 220
7.4.2 得到当前文件内部位置操作 220
7.4.3 移动文件内部位置操作 220
7.5 文件应用实例 221
小结 222
习题 222
附录A ASCII码表 225
附录B 运算符和结合性 229
附录C C语言常用函数 231
附录D C语言常见错误 239
附录E 计算机等级考试C语言(二级)笔试模拟试卷 244
参考文献 302