第一单元 顺序结构程序设计 1
1.1 基本概念 1
1.1.1 C程序的基本结构 1
1.1.2 基本字符集与标识符 1
1.1.3 简单数据类型 2
1.1.4 运算符与表达式初探 4
1.4.5 赋值语句及简单输入、输出 5
1.2 典型例题 7
1.2.1 改错题 7
1.2.2 编程题 10
1.3 模拟试题 13
1.3.1 改错题 13
1.3.2 编程题 15
1.4 模拟试题分析与参考解答 17
1.4.1 改错题 17
1.4.2 编程题 23
第二单元 分支结构程序设计 30
2.1 基本概念 30
2.1.1 if语句 30
2.1.2 switch语句 32
2.2 典型例题 33
2.2.1 改错题 33
2.2.2 编程题 37
2.3 模拟试题 40
2.3.1 改错题 40
2.3.2 编程题 43
2.4 模拟试题分析与参考解答 47
2.4.1 改错题 47
2.4.2 编程题 55
第三单元 循环结构程序设计 66
3.1 基本概念 66
3.1.1 while语句 66
3.1.2 do-while语句 66
3.1.3 for语句 67
3.1.4 用于循环控制的几个特殊运算符 67
3.1.5 多重循环结构 68
3.1.6 break语句、continue语句和go to语句 68
3.2 典型例题 69
3.2.1 改错题 69
3.2.2 编程题 73
3.3 模拟试题 76
3.3.1 改错题 76
3.3.2 编程题 79
3.4 模拟试题分析与参考解答 83
3.4.1 改错题 83
3.4.2 编程题 91
第四单元 数组与字符串 101
4.1 基本概念 101
4.1.1 一维数组 101
4.1.2 多维数组 102
4.1.3 字符数组与字符串 103
4.2 典型例题 104
4.2.1 改错题 104
4.2.2 编程题 108
4.3 模拟试题 112
4.3.1 改错题 112
4.3.2 编程题 116
4.4 模拟试题分析与参考解答 119
4.4.1 改错题 119
4.4.2 编程题 129
第五单元 函数 141
5.1 基本概念 141
5.1.1 C程序中的函数 141
5.1.2 函数定义 142
5.1.3 函数调用与函数说明 142
5.1.4 通过函灵敏参数传递数据 143
5.1.5 函数的嵌套调用与递归调用 144
5.1.6 数组作为函数参数传递 144
5.2 典型例题 145
5.2.1 改错题 145
5.2.2 编程题 149
5.3 模拟试题 153
5.3.1 改错题 153
5.3.2 编程题 157
5.4 模拟试题分析与参考解答 161
5.4.1 改错题 161
5.4.2 编程题 170
第六单元 指针 184
6.1 基本概念 184
6.1.1 指针变量的说明与赋值操作 184
6.1.2 指针运算 186
6.1.3 指向数组的指针变量 187
6.1.4 指向字符串的指针变量 187
6.1.5 指向函数的指针变量 188
6.1.6 返回指针值的函数 188
6.1.7 指针数组 189
6.1.8 指向指针的指针变量 189
6.2 典型例题 190
6.2.1 改错题 190
6.2.2 编程题 192
6.3 模拟试题 197
6.3.1 改错题 197
6.3.2 编程题 200
6.4 模拟试题分析与参考解答 205
6.4.1 改错题 205
6.4.2 编程题 213
第七单元 结构体与线性链表 226
7.1 基本概念 226
7.1.1 用typedef定义类型 226
7.1.2 结构体变量说明与赋值操作 226
7.1.3 结构体数组和结构体指针 228
7.1.4 动态存储分配及释放 228
7.1.5 线性链表概念 229
7.1.6 线性链表生成与遍历 230
7.1.7 在已知线性链表中的插入与删除操作 230
7.1.8 带头结点的线性链表结构 231
7.2 典型例题 231
7.2.1 改错题 231
7.2.2 编程题 234
7.3 模拟试题 239
7.3.1 改错题 239
7.3.2 编程题 243
7.4 模拟试题分析与参考解答 249
7.4.1 改错题 249
7.4.2 编程题 260
第八单元 文件 277
8.1 基本概念 277
8.1.1 文件指针 277
8.1.2 文件的打开与关闭 278
8.1.3 文本文件操作 279
8.1.4 二进制文件操作 280
8.1.5 文件的定位与随机读写 280
8.1.6 文件检测函数 280
8.2 典型例题 280
8.2.1 改错题 280
8.2.2 编程题 284
8.3 模拟试题 288
8.3.1 改错题 288
8.3.2 编程题 291
8.4 模拟试题分析与参考解答 297
8.4.1 改错题 297
8.4.2 编程题 306
第九单元 通用程序设计 321
9.1 基本概念 321
9.1.1 程序设计风格 321
9.1.2 结构化程序设计方法 321
9.1.3 通用程序设计 323
9.2 典型例题 323
9.2.1 改错题 323
9.2.2 编程题 327
9.3 模拟试题 331
9.3.1 改错题 331
9.3.2 编程题 336
9.4 模拟试题分析与参考解答 340
9.4.1 改错题 340
9.4.2 编程题 352
附录A Turbo C 20集成开发环境上机指南 363
A.1 Turbo C 20的安装和启动 363
A.2 Turbo C 20的集成开发环境 363
A.2.1 文件菜单项 364
A.2.2 编辑菜单项 365
A.2.3 运行菜单项 365
A.2.4 编译菜单项 366
A.2.5 项目菜单项 366
A.2.6 选项菜单项 367
A.2.7 调试菜单项 369
A.2.8 断点及监视菜单项 369
A.3 Turbo C 20的配置文件 370
A.4 C程序的开发和运行 370
A.5 C程序的调试 371
A.6 C语言编程常见错误 372
附录B C语言程序设计题库 374
参考书目 386