《C语言程序设计(第2版)》
第1章 C语言概述 1
1.1 C语言的发展 1
1.2 C语言的特点 1
1.3 C语言的基本符号 2
1.4 C语言程序结构 3
1.4.1 C语言程序的总体结构 3
1.4.2 函数的一般结构 4
1.4.3 源程序书写格式 5
1.5 Win-TC / Visual C++ 6.0集成环境下C语言上机操作 6
1.5.1 上机实验操作步骤与要求 6
1.5.2 Win-TC系统上机操作方法 7
1.5.3 Visual C++ 6.0系统上机操作方法 11
习题1 16
第2章 数据类型、运算符和表达式 17
2.1 C语言的数据类型 17
2.2 常量与变量 18
2.2.1 常量 18
2.2.2 变量 22
2.3 变量赋初值 25
2.4 各类数值型数据间的混合运算 26
2.5 C语言的运算符和表达式 27
2.5.1 算术运算符和算术表达式 27
2.5.2 关系运算符和关系表达式 30
2.5.3 逻辑运算符和逻辑表达式 31
2.5.4 赋值运算符和赋值表达式 32
2.5.5 条件运算符和条件表达式 33
2.5.6 逗号运算符和逗号表达式 34
2.5.7 求字节数运算 35
2.5.8 位逻辑运算 35
2.5.9 位移运算和位运算赋值运算符 36
2.5.10 运算符的优先级与结合性 37
2.6 上机实训 38
习题2 40
第3章 顺序程序设计 43
3.1 C语句概述 43
3.2 程序的三种基本结构 44
3.3 赋值语句 46
3.4 格式输入与输出 46
3.4.1 printf()函数(格式输出函数) 47
3.4.2 scanf()函数(格式输入函数) 51
3.5 字符数据的输入输出函数 56
3.5.1 putchar函数(字符输出函数) 56
3.5.2 getchar()函数(字符输入函数) 57
3.6 顺序结构程序设计举例 58
3.7 上机实训 60
习题3 61
第4章 选择结构程序设计 64
4.1 程序流程图 64
4.2 if语句 66
4.2.1 if语句的三种格式 66
4.2.2 if语句的嵌套 70
4.3 多分支选择语句(switch语句) 72
4.4 程序综合举例 78
4.5 上机实训 83
习题4 84
第5章 循环结构 88
5.1 for语句 88
5.1.1 for语句的一般形式和执行过程 88
5.1.2 for语句的各种形式 89
5.1.3 for循环程序举例 90
5.2 while语句 92
5.2.1 while语句的一般形式和执行过程 92
5.2.2 使用while语句应注意的问题 93
5.3 do-while语句 94
5.3.1 do-while语句的一般形式和
执行过程 94
5.3.2 使用do-while语句应注意的问题 95
5.4 break语句和continue语句 96
5.4.1 break语句 96
5.4.2 continue语句 97
5.5 程序综合举例 98
5.6 上机实训 102
习题5 103
第6章 数组 107
6.1 一维数组 107
6.1.1 一维数组的定义 107
6.1.2 一维数组元素的引用 108
6.1.3 一维数组元素的初始化 109
6.1.4 一维数组的应用举例 110
6.2 二维数组 112
6.2.1 二维数组的定义 112
6.2.2 二维数组元素的引用 113
6.2.3 二维数组元素的初始化 113
6.2.4 二维数组的应用举例 114
6.3 字符数组 115
6.3.1 字符数组的定义 115
6.3.2 字符数组的初始化 115
6.3.3 字符数组的引用及应用举例 116
6.3.4 字符串处理函数 119
6.4 程序综合举例 121
6.5 上机实训 126
习题6 126
第7章 函数 131
7.1 函数的定义和调用 131
7.1.1 函数的定义 131
7.1.2 函数说明与调用 132
7.1.3 函数的返回值 134
7.2 变量的作用域 135
7.2.1 局部变量 135
7.2.2 全局变量 135
7.3 变量的存储类型 138
7.3.1 静态存储方式和动态存储方式 138
7.3.2 变量的存储类型 138
7.4 函数间的数据传送 141
7.4.1 传值方式 141
7.4.2 地址复制方式 142
7.4.3 利用参数返回结果 143
7.4.4 利用函数返回值传递数据 143
7.4.5 利用全局变量传递数据 143
7.5 函数的嵌套调用和递归调用 143
7.5.1 函数嵌套调用 143
7.5.2 函数递归调用 145
7.6 内部函数和外部函数 146
7.6.1 内部函数 146
7.6.2 外部函数 147
7.7 程序综合举例 147
7.8 上机实训 155
习题7 156
第8章 编译预处理 162
8.1 宏定义 162
8.1.1 不带参数的宏定义 162
8.1.2 带参数的宏定义 164
8.2 文件包含 166
8.3 条件编译 167
8.4 程序综合举例 169
8.5 上机实训 170
习题8 171
第9章 指针 175
9.1 地址、指针和变量 175
9.1.1 地址和指针的基本概念 175
9.1.2 指针变量类型的定义 177
9.1.3 指针变量的赋值 177
9.2 指针运算 179
9.2.1 指针运算符 179
9.2.2 指针变量的运算 180
9.3 指针与数组 182
9.3.1 数组指针 182
9.3.2 字符指针 192
9.3.3 指针数组 196
9.4 函数与指针 199
9.4.1 函数的指针 199
9.4.2 返回指针值的函数 200
9.4.3 指向指针的指针 201
9.5 程序综合举例 203
9.6 上机实训 208
实训1 208
实训2 209
实训3 210
习题9 211
第10章 结构体、共用体和 枚举类型 215
10.1 结构体类型 215
10.1.1 结构体类型的用途 215
10.1.2 结构体类型的构建及结构 体变量的定义 216
10.1.3 结构体变量的使用 219
10.1.4 结构体数组应用实例 221
10.2 自定义类型 223
10.2.1 自定义类型的定义及使用 223
10.2.2 自定义类型编程实例 225
10.3 结构体指针 228
10.3.1 引用结构体指针指向的 结构体变量的成员 228
10.3.2 链表 230
10.4 枚举类型 238
10.4.1 C语言枚举类型的 语法规定 238
10.4.2 枚举类型应用实例 241
10.5 共用体 242
10.6 程序综合举例 243
10.7 上机实训 246
习题10 247
第11章 文件 256
11.1 文件的基本概念 256
11.1.1 文件的概念 256
11.1.2 文件名称 256
11.1.3 两种重要的文件类型 257
11.1.4 文件的缓冲机制 258
11.1.5 FILE指针 259
11.1.6 文件位置指针 260
11.1.7 文件结束符 260
11.1.8 访问文件 261
11.2 文件的打开与关闭 261
11.2.1 打开文件函数fopen() 261
11.2.2 关闭文件函数fclose() 263
11.3 文件的顺序读写 263
11.3.1 字符读写函数 263
11.3.2 字符串读写函数 265
11.3.3 格式化读写函数 267
11.3.4 数据块读写函数 269
11.4 文件的随机读写 271
11.5 文件检测 274
11.6 程序综合举例 275
11.7 上机实训 279
习题11 279
附录A ASCII代码表 283
附录B Turbo C常用库函数 284
参考文献 294