上 篇 程序设计 3
第1章 C程序设计概述 3
1.1 计算机语言和程序设计 3
1.1.1 计算机语言 3
1.1.2 程序与程序设计 5
1.2 算法的概念与表示方法 5
1.2.1 算法的概念 5
1.2.2 算法的表示 6
1.2.3 算法描述的三种基本结构 7
1.3 C语言概述 9
1.3.1 C语言的产生和发展 9
1.3.2 C语言的特点 10
1.3.3 C语言程序结构 10
1.3.4 C程序的格式特点 13
1.4 C程序的设计步骤与运行环境 13
1.4.1 C程序的设计步骤 13
1.4.2 Visual C++6.0集成开发环境 14
1.4.3 Turbo C 3.0集成开发环境 18
本章小结 20
习 题 20
第2章 数据类型与表达式 21
2.1 C语言基本字符集和词汇 21
2.1.1 C语言基本字符集 21
2.1.2 词 汇 22
2.2 C语言的数据类型 23
2.3 常量 24
2.3.1 整型常量 24
2.3.2 实型常量 24
2.3.3 字符常量 25
2.3.4 字符串常量 26
2.3.5 符号常量 27
2.4 变量 28
2.4.1 整型变量 29
2.4.2 实型变量 31
2.4.3 字符型变量 32
2.5 运算符和表达式 34
2.5.1 C语言运算符与表达式简介 34
2.5.2 算术运算符和算术表达式 34
2.5.3 赋值运算符和赋值表达式 38
2.5.4 逗号运算符和逗号表达式 40
2.5.5 条件运算符和条件表达式 41
2.6 指针类型 42
2.6.1 指针的概念 42
2.6.2 指针变量的定义 43
2.7 位运算符 43
2.8 类型转换 45
2.8.1 自动类型转换 46
2.8.2 强制类型转换 46
本章小结 47
习 题 48
第3章 基本语句与顺序结构程序设计 50
3.1 C语言的基本语句 50
3.2 数据输入与输出 51
3.2.1 数据输入输出的概念 51
3.2.2 字符数据的输入输出函数 51
3.2.3 格式化输入与输出函数 52
3.3 顺序结构程序设计 57
3.4 顺序结构程序设计应用举例 59
本章小结 63
习 题 63
第4章 选择结构程序设计 68
4.1 问题的提出 68
4.2 关系运算与逻辑运算 69
4.2.1 关系运算 69
4.2.2 逻辑运算 70
4.3 if语句 73
4.3.1 if语句的三种基本形式 73
4.3.2 if语句的嵌套 76
4.4 switch语句 81
4.5 选择结构程序设计应用举例 84
本章小结 88
习 题 88
第5章 循环结构程序设计 94
5.1 while循环语句 94
5.2 do…while循环语句 95
5.3 for循环语句 97
5.4 循环结构的嵌套 100
5.5 转移语句 103
5.6 循环结构程序设计应用举例 107
本章小结 113
习 题 113
第6章 数组及字符串 118
6.1 一维数组的定义和引用 118
6.1.1 一维数组的定义及初始化 118
6.1.2 一维数组元素的引用 120
6.1.3 一维数组的应用——排序 122
6.1.4 一维数组的应用——查找 126
6.1.5 一维数组的其他应用举例 129
6.2 二维数组的定义和引用 131
6.2.1 二维数组的定义及初始化 131
6.2.2 二维数组元素的引用 132
6.2.3 二维数组应用举例 134
6.3 字符数组 137
6.3.1 字符数组的定义及初始化 137
6.3.2 字符数组的引用 138
6.3.3 字符串与字符数组 139
6.3.4 gets函数和puts函数 143
6.3.5 字符串处理的常用系统函数 145
6.3.6 字符数组及字符串应用举例 147
6.4 数组应用举例 149
本章小结 152
习题 152
第7章 函 数 158
7.1 函数的概念 158
7.2 函数的定义 160
7.2.1 函数定义的一般形式 160
7.2.2 函数的定义格式 160
7.3 函数调用 163
7.3.1 函数调用方式 163
7.3.2 函数的声明 165
7.3.3 函数的形式参数和实际参数 166
7.3.4 函数定义与调用举例 168
7.4 函数的嵌套调用 169
7.5 函数的递归调用 172
7.6 数组作为函数参数 174
7.7 局部变量、全局变量 177
7.7.1 局部变量 178
7.7.2 全局变量 179
7.8 变量的存储类别 180
7.8.1 变量的存储区域 180
7.8.2 变量的存储类型 180
7.8.3 变量生命期及其与存储类型、作用域的关系 184
7.9 函数应用举例 185
本章小结 189
习题 190
第8章 文 件 198
8.1 C文件概述 198
8.1.1 文件分类 198
8.1.2 文件名 199
8.1.3 文件指针 200
8.2 文件的打开与关闭 200
8.2.1 文件的打开 200
8.2.2 文件的关闭 202
8.2.3 标准设备文件的打开与关闭 202
8.3 文件的读写 203
8.3.1 字符读写函数fgetc和fputc 203
8.3.2 格式化读写函数fscanf和fprintf 205
8.3.3 数据块读写函数fread和fwrite 207
8.3.4 字符串读写函数fgets和fputs 209
8.4 文件的随机读写 210
8.4.1 文件定位 210
8.4.2 文件的随机读写 211
8.5 文件检测函数 213
8.6 文件操作举例 213
本章小结 214
习题 215
第9章 自定义类型 218
9.1 枚举类型 218
9.1.1 枚举类型的定义 218
9.1.2 枚举变量的使用 219
9.2 结构体类型 220
9.2.1 结构体类型的定义 220
9.2.2 结构体变量的定义和使用 221
9.3 共用体类型 223
9.4 类型定义符typedef 224
9.5 自定义数据类型应用程序举例 225
本章小结 229
习 题 230
下 篇 程序设计训练 235
程序设计训练 235
程序设计训练一 235
程序设计训练二 238
程序设计训练三 241
程序设计训练四 243
程序设计训练五 247
程序设计训练六 250
程序设计训练七 253
程序设计训练八 256
程序设计训练九 259
程序设计训练十 262
程序设计训练十一 265
程序设计训练十二 268
程序设计训练十三 272
程序设计训练十四 274
程序设计训练十五 277
程序设计训练十六 280
程序设计训练十七 282
程序设计训练十八 285
程序设计训练十九 288
程序设计训练二十 290
参考答案 293
程序设计训练一答案 293
程序设计训练二答案 294
程序设计训练三答案 295
程序设计训练四答案 296
程序设计训练五答案 297
程序设计训练六答案 298
程序设计训练七答案 298
程序设计训练八答案 300
程序设计训练九答案 300
程序设计训练十答案 302
程序设计训练十一答案 303
程序设计训练十二答案 304
程序设计训练十三答案 305
程序设计训练十四答案 306
程序设计训练十五答案 307
程序设计训练十六答案 308
程序设计训练十七答案 309
程序设计训练十八答案 310
程序设计训练十九答案 311
程序设计训练二十答案 312
附 录 314
附录A ASCⅡ码对照表 314
附录B C语言中的关键字 315
附录C C运算符、优先级和结合性 316
附录D C库文件 318
附录E C语言常用库函数 319
附录F C语言常用语法提要 324
附录G 常见错误分析和程序调试 328
G.1 常见错误分析 328
G.2 错误检测与程序调试 334
参考文献 335