第1章 C语言源程序结构与数据类型 1
1.1 源程序结构与简单数据类型 1
1.1.1 源程序结构 1
1.1.2 数据类型及归类 2
1.1.3 变量和常量 4
1.1.4 习题 7
1.2 表达式 8
1.2.1 运算符 8
1.2.2 表达式 9
1.2.3 习题 13
1.3 数组 14
1.3.1 数组类型的定义 14
1.3.2 数组类型的种类 14
1.3.3 关于数组应注意的几个问题 15
1.3.4 习题 22
1.4 指针 29
1.4.1 地址、指针与指针变量之间的联系与区别 29
1.4.2 什么是直接访问和间接访问 29
1.4.3 用指针访问简单变量的几种等价形式 30
1.4.4 用指针访问一维数组的各种形式 30
1.4.5 用指针访问二维数组的各种形式 31
1.4.6 用指针处理字符串时应注意的几个问题 34
1.4.7 用指针进行内存动态分配的方法和内存动态分配函数的应用 37
1.4.8 关于多级指针的几点说明 38
1.4.9 习题 39
1.5 结构体与共用体 48
1.5.1 结构体与共用体的相同点与不同点 48
1.5.2 如何用结构体处理单向链表 51
1.5.3 枚举变量在使用中应注意的几个问题 55
1.5.4 关于类型定义的几点说明 56
1.5.5 习题 56
1.6 文件类型 58
1.6.1 文件的特点及进一步说明 58
1.6.2 文件指针 59
1.6.3 文件的打开与关闭 59
1.6.4 文件的访问 61
1.6.5 文件的定位 66
1.6.6 文件出错检测 67
1.6.7 链表与文件关系的应用实例 68
1.6.8 习题 69
第2章 C语言程序设计结构 73
2.1 顺序结构程序设计 73
2.1.1 存储单元存储数据的特点 73
2.1.2 C语言中语句与函数的区别 74
2.1.3 正确区分C语言中赋值运算符“=”和数学中等号“=”的作用与不同 74
2.1.4 为什么一定要向变量提供初始数据 75
2.1.5 赋值语句与输入语句的区别 77
2.1.6 习题 77
2.2 选择结构程序设计 77
2.2.1 单双分支结构的使用方法及特点 77
2.2.2 if条件语句嵌套与switch语句的区别 78
2.2.3 习题 80
2.3 循环结构程序设计 81
2.3.1 三种循环语句的特点与区别 81
2.3.2 迭代问题的处理 83
2.3.3 break语句与continue语句的特点 84
2.3.4 循环嵌套的运用 85
2.3.5 习题 86
第3章 预处理与位运算 92
3.1 预处理 92
3.1.1 宏替换 92
3.1.2 文件包含 94
3.1.3 条件编译 95
3.1.4 习题 96
3.2 位运算 97
3.2.1 位运算符表 97
3.2.2 位运算符的使用方法 97
3.2.3 位段 101
3.2.4 习题 103
第4章 函数 105
4.1 函数的定义和函数的声明 105
4.1.1 函数定义和函数声明的区别及应注意的问题 105
4.1.2 函数返回值及其类型 107
4.1.3 习题 110
4.2 函数的调用 111
4.2.1 函数一般调用的几个问题 111
4.2.2 实参与形参的概念及区别 113
4.2.3 嵌套调用 114
4.2.4 递归调用 116
4.2.5 习题 117
4.3 关于函数调用时参数间传递的几个问题的说明 124
4.3.1 值传递 124
4.3.2 地址传递 124
4.3.3 习题 129
4.4 关于变量类型的进一步说明 131
4.4.1 局部变量与全局变量的区别 131
4.4.2 静态存储变量与动态存储变量的区别 134
4.4.3 存储类别小结 135
4.5 关于多文件运行的进一步说明 136
4.5.1 内部函数与外部函数的几个问题 136
4.5.2 运行一个多文件的程序 138
第5章 作图与音响程序设计 140
5.1 显示器工作模式概述 140
5.2 图形程序设计 140
5.2.1 图形模式的设置 140
5.2.2 屏幕颜色的设置 143
5.2.3 基本图形功能函数 143
5.2.4 屏幕操作函数 144
5.2.5 画填充图的图形函数 145
5.2.6 图形方式下的文本输出 147
5.2.7 作图程序的特殊处理 150
5.3 C音响技巧 151
5.3.1 C语言常用音响函数 151
5.3.2 音乐程序设计中的音高与音长 152
5.3.3 综合音乐程序设计示例 154
5.3.4 习题 156
第6章 结构化程序设计 157
6.1 软件开发 157
6.1.1 软件的概念 157
6.1.2 软件的特点 157
6.1.3 软件开发的一般步骤 157
6.1.4 进行软件开发时常见的错误观念 158
6.2 结构化程序设计 159
6.2.1 结构化程序设计的一般概念 159
6.2.2 自顶向下逐步求精模块化程序设计思想 159
6.3 C 语言程序设计风格 161
6.3.1 C语言程序结构的特点 161
6.3.2 C语言程序设计风格 161
6.3.3 模块化程序设计应用举例 162
6.3.4 有关数据的保存问题 166
6.4 C语言应用实例——图书管理系统 170
6.4.1 需求及规格说明 170
6.4.2 设计 170
6.4.3 习题 173
第7章 C语言上机操作基础知识部分 174
7.1 实验一 C语言程序上机操作 174
7.2 实验二 C语言程序初步 184
7.3 实验三 数据类型 185
7.4 实验四 运算符和表达式 186
7.5 实验五 if语句 188
7.6 实验六 switch语句 189
7.7 实验七 while和do-while循环 191
7.8 实验八 for循环 192
7.9 实验九 循环嵌套 193
7.10 实验十 一维数组 195
7.11 实验十一 排序 196
7.12 实验十二 二维数组 197
7.13 实验十三 字符数组 198
7.14 实验十四 函数的定义和调用 200
7.15 实验十五 递归函数 201
7.16 实验十六 指针变量的定义与引用 203
7.17 实验十七 指针与数组 204
7.18 实验十八 指针与函数 206
7.19 实验十九 结构体与共用体 208
7.20 实验二十 链表 209
7.21 实验二十一 位运算 211
7.22 实验二十二 文件的顺序访问 212
7.23 实验二十三 文件的随机访问 214
7.24 实验二十四 综合实验 215
附录A Turbo C编译、连接和运行时的常见错误 221
A.1 编译时的常见错误 221
A.2 连接时的常见错误 222
A.3 运行时的常见错误 222
附录B Turbo C(V2.0)编译错误信息详表 224
B.1 致命错误 224
B.2 一般错误信息 224
参考文献 231