基础篇 3
第1章 C语言概要 3
1.1 C语言的历史与特点 3
1.2 结构化程序设计 4
1.2.1 算法和程序 4
1.2.2 结构化程序设计的思想和方法 4
1.3 编写一个简单的C语言程序 5
1.3.1 程序设计的一般方法 5
1.3.2 内存的概念 8
1.3.3 C语言程序的一般组成 8
1.3.4 程序的质量 8
1.3.5 书写程序时应遵循的规则 9
1.3.6 在Turbo C下执行一个C语言程序的基本步骤 10
1.3.7 学好C语言的一些建议 12
1.4 小结 12
习题1 12
实训1 13
第2章 C语言基本数据类型及运算 14
2.1 C语言的基本数据类型 14
2.1.1 C语言的描述符 14
2.1.2 C语言的基本数据类型 16
2.2 运算符和表达式 25
2.2.1 基本运算符和表达式 25
2.2.2 数据类型间的转换规则 32
2.3 标准输入/输出语句 33
2.3.1 标准输出语句及其说明 33
2.3.2 标准输入语句及其说明 35
2.4 常见错误分析 38
2.4.1 数据类型与变量说明中的错误分析 38
2.4.2 标准输入/输出语句使用中的错误分析 40
2.5 小结 41
习题2 42
实训2 44
第3章 程序流程的控制 46
3.1 概述 46
3.2 控制语句 47
3.2.1 条件语句 47
3.2.2 例题与分析 50
3.3 开关语句 56
3.4 循环语句 59
3.4.1 while语句 59
3.4.2 do-while语句 61
3.4.3 for语句 62
3.4.4 程序转移控制语句 65
3.4.5 程序举例 66
3.5 常见错误分析 70
3.5.1 分支语句中常见的错误 70
3.5.2 循环语句中常见的错误 72
3.6 小结 73
习题3 75
实训3 79
第4章 函数 81
4.1 函数的定义 81
4.1.1 函数使用的意义与分类 81
4.1.2 函数定义形式 82
4.2 函数的调用 83
4.2.1 函数调用的形式 83
4.2.2 函数调用的方式 84
4.2.3 函数的实参与形参 85
4.2.4 函数的返回值 88
4.2.5 例题与分析 88
4.3 函数的嵌套调用 89
4.4 函数的递归调用 90
4.5 常见错误分析 92
4.5.1 函数定义中的错误与分析 92
4.5.2 函数设计与使用中的错误与分析 93
4.6 小结 95
习题4 95
实训4 100
第5章 数组与指针 103
5.1 一维数组 103
5.1.1 一维数组的定义 104
5.1.2 一维数组的初始化 105
5.1.3 一维数组的使用 105
5.1.4 一维数组作为函数参数 108
5.2 二维数组 111
5.2.1 二维数组的定义 111
5.2.2 二维数组的初始化 112
5.2.3 二维数组的使用 113
5.2.4 二维数组作为函数参数 115
5.3 字符数组 116
5.3.1 字符数组的定义和初始化 116
5.3.2 字符串处理函数 118
5.3.3 字符数组的引用 121
5.3.4 字符数组的应用 122
5.4 指针 124
5.4.1 指针的含义与指针变量的定义 124
5.4.2 指针的简单用法 126
5.5 指针和数组 129
5.6 指针与函数 132
5.6.1 指向变量的指针作为函数参数 132
5.6.2 指向数组的指针作为函数参数 135
5.7 其他类型指针 136
5.8 例题与分析 137
5.9 动态分配空间 139
5.10 常见错误分析 141
5.10.1 数组定义中的错误分析 141
5.10.2 数组使用中的错误分析 142
5.10.3 指针使用中的错误分析 145
5.11 小结 146
习题5 148
实训5 153
第6章 结构体与共用体 155
6.1 结构体 155
6.1.1 结构体的意义与定义 155
6.1.2 结构体的初始化 158
6.1.3 结构体的简单使用 159
6.2 共用体 166
6.2.1 共用体的意义与定义 166
6.2.2 共用体的简单使用 168
6.3 常见错误分析 169
6.3.1 结构体与共用体定义中的错误与分析 169
6.3.2 结构体使用中的错误与分析 171
6.3.3 共用体使用中的错误与分析 172
6.4 小结 172
习题6 173
实训6 177
第7章 各种存储类的区别 179
7.1 概述 179
7.2 自动变量 180
7.2.1 定义方式 180
7.2.2 作用域与生存期 180
7.2.3 初始化 182
7.3 寄存器变量 182
7.4 外部变量 183
7.4.1 定义方式 183
7.4.2 作用域与生存期 183
7.4.3 初始化 185
7.5 静态变量 185
7.5.1 内部静态变量 185
7.5.2 外部静态变量 186
7.6 内部函数与外部函数 187
7.7 运行一个多文件的程序 188
7.8 小结 189
习题7 191
实训7 193
第8章 预处理 195
8.1 概述 195
8.2 宏定义 195
8.2.1 无参数宏 196
8.2.2 带参数宏 197
8.3 文件包含 200
8.4 条件编译 201
8.5 运行一个多文件的程序 202
8.6 常见错误分析 204
8.7 小结 205
习题8 205
实训8 207
第9章 文件 209
9.1 文件概述 209
9.1.1 文件概念与分类 209
9.1.2 缓冲文件系统与非缓冲文件系统 210
9.2 缓冲文件系统的文件操作 210
9.2.1 文件打开与关闭 211
9.2.2 文件的读/写 213
9.2.3 文件的定位 217
9.2.4 文件的检测 221
9.3 常见错误分析 222
9.4 小结 223
习题9 224
实训9 226
第10章 C语言程序实例——学生简易选课管理系统 227
10.1 系统功能分析 227
10.1.1 总体功能分析 227
10.1.2 模块功能细分 227
10.2 主要数据类型定义 229
10.3 主要函数说明 231
10.4 主要源代码 234
10.5 运行实例说明 253
10.6 小结 257
实训10 258
应用篇 261
第11章 图形处理 261
11.1 概述 261
11.2 图形函数 261
11.3 图形函数的应用 277
第12章 简单网络编程和硬件控制 280
12.1 网络编程 280
12.1.1 TCP/IP层次模型与网络协议 280
12.1.2 套接字接口简介 282
12.1.3 Socket编程 288
12.2 硬件控制 301
附录A ASCII码表 303
附录B C语言常用函数 304
附录C 运算符的优先级和结合性 308
附录D Turbo C使用指南 310
参考文献 318