第1章 C语言初步 1
1.1 C语言的背景 1
1.2 C程序结构 2
1.2.1 程序结构 2
1.2.2 两个程序例子 4
1.2.3 C程序风格 6
1.3 标识符 7
1.4 数据类型 9
1.5 变量 11
1.6 常量 14
1.6.1 常量的种类 14
1.6.2 常量的用法 18
1.7 输入/输出 20
1.7.1 格式化输出 20
1.7.2 格式化输入 24
1.7.3 字符输入/输出 27
1.8 使用VC++6.0环境上机编程 29
1.8.1 创建C源程序文件的简单方法 29
1.8.2 编辑源代码 32
1.8.3 编译程序 33
1.8.4 链接程序 33
1.8.5 运行程序 35
习题 36
第2章 表达式和程序设计基础知识 41
2.1 表达式 41
2.1.1 初级表达式 42
2.1.2 二元表达式 43
2.1.3 赋值表达式 45
2.1.4 后缀表达式 47
2.1.5 一元表达式 49
2.1.6 逗号表达式 51
2.2 副作用 52
2.3 表达式求值 53
2.3.1 无副作用的表达式求值 53
2.3.2 有副作用的表达式求值 53
2.4 混合类型表达式 55
2.4.1 隐式类型转换 56
2.4.2 强制类型转换 57
2.5 语句 59
2.6 部分库函数 60
2.7 程序设计基础知识 65
2.7.1 程序与程序设计 65
2.7.2 算法及其描述 66
2.7.3 一个完整的程序设计实例 68
习题 78
第3章 分支程序设计 82
3.1 关系与逻辑运算 82
3.1.1 逻辑数据 82
3.1.2 关系运算 82
3.1.3 逻辑运算 84
3.2 两路分支 88
3.2.1 if...else语句 88
3.2.2 if语句 91
3.2.3 if语句的嵌套 91
3.2.4 条件表达式 93
3.3 多路分支 93
3.3.1 switch语句 93
3.3.2 if...else-if语句 98
习题 102
第4章 循环程序设计 110
4.1 循环概述 110
4.2 while语句 112
4.3 for语句 115
4.4 do...while语句 118
4.5 循环的嵌套 121
4.6 break与continue语句 130
习题 134
第5章 数组 141
5.1 概念 141
5.2 一维数组 143
5.2.1 定义数组 143
5.2.2 访问数组元素 144
5.2.3 用数组存数据 145
5.3 顺序查找 149
5.4 冒泡排序 151
5.5 二维数组 154
5.5.1 定义数组 155
5.5.2 访问数组元素 155
5.5.3 用数组存数据 156
习题 159
第6章 指针 163
6.1 概念 163
6.1.1 指针常量 163
6.1.2 取地址运算 163
6.1.3 指针变量 164
6.2 指针与变量 165
6.2.1 定义指针变量 165
6.2.2 指针的初始化 165
6.2.3 用指针处理变量 167
6.2.4 程序举例 168
6.3 多级指针 173
6.4 指针与数组 176
6.4.1 指针与一维数组 176
6.4.2 指针与二维数组 183
6.5 动态内存分配 189
6.5.1 概念 189
6.5.2 内存管理函数 190
习题 194
第7章 字符串 201
7.1 字符串的存储 201
7.2 指针与字符串 202
7.3 字符串输入/输出 203
7.4 字符串处理函数 210
习题 217
第8章 函数 220
8.1 结构化程序设计 220
8.1.1 自上而下程序设计 220
8.1.2 C程序的结构化 221
8.2 函数定义 222
8.2.1 函数定义格式 222
8.2.2 函数定义举例 223
8.3 原型声明与函数调用 224
8.3.1 原型声明 224
8.3.2 函数调用 225
8.4 向函数传值 228
8.5 向函数传地址 228
8.6 向函数传数组 234
8.6.1 传一维数组 234
8.6.2 传二维数组 237
8.7 向函数传字符串 240
8.8 指针型的函数 241
8.9 函数指针 243
8.10 作用域 245
8.11 变量的存储类型 246
8.12 命令行参数 250
8.13 递归 252
习题 259
第9章 结构、联合与枚举 266
9.1 类型定义 266
9.2 结构类型 267
9.2.1 结构的声明 267
9.2.2 定义结构变量 269
9.2.3 结构指针 270
9.3 结构的处理 271
9.3.1 结构变量的初始化 271
9.3.2 访问结构成员 271
9.4 复杂结构 276
9.4.1 嵌套结构 276
9.4.2 含数组的结构 279
9.4.3 含指针的结构 283
9.5 结构数组 285
9.6 结构与函数 286
9.7 联合 300
9.8 枚举 304
习题 306
第10章 文件 313
10.1 文件概述 313
10.1.1 文件的概念 313
10.1.2 文件的分类 313
10.1.3 文件和流 314
10.1.4 文件指针 314
10.1.5 文件操作的基本步骤 314
10.2 文件的打开与关闭 315
10.2.1 文件的打开 315
10.2.2 文件的关闭 316
10.3 文件操作 317
10.3.1 文本文件读写函数 317
10.3.2 二进制文件操作函数 325
10.4 其他函数 327
习题 331
附录A ASCII码表 335
附录B C语言中的运算符 336
附录C C语言库函数 337
附录D 位运算 345
附录E 预处理命令 347
附录F 命令窗口 354
参考文献 357