第1章 C语言概述 1
1.1 C语言概述 1
1.2 C语言标识符 2
1.3 C语言程序结构 2
1.4 C语言程序的开发和运行 3
习题1 5
上机实验1 6
第2章 程序设计基础 8
2.1 数据类型 8
2.2.1 常量 9
2.2 常量与变量 9
2.2.2 变量 11
2.3 运算符及表达式 12
2.3.1 算术运算及算术表达式 13
2.3.2 关系运算及关系表达式 14
2.3.3 逻辑运算及逻辑表达式 14
2.3.4 赋值运算及赋值表达式 15
2.3.5 逗号运算及逗号表达式 16
2.3.6 条件运算及条件表达式 17
2.3.7 求字节数运算 17
2.3.9 位移位运算 18
2.3.8 位逻辑运算 18
2.3.10 位自反运算 19
2.4 C语言的基本语句 20
2.5 程序的基本结构与算法 21
2.5.1 程序的基本结构 21
2.5.2 算法及其描述 22
2.6 输入与输出函数 26
2.6.1 格式化输入、输出函数scanf()和printf() 26
2.6.2 字符输入、输出函数getchar()和putchar() 34
2.7 程序综合示例 37
习题2 39
本章小结 39
上机实验2 42
第3章 条件语句 44
3.1 if语句 44
3.2 if语句的嵌套 46
3.3 多分支选择语句 50
3.4 程序综合示例 53
本章小结 57
习题3 58
上机实验3 62
4.1 for语句 63
第4章 循环结构 63
4.2 while语句 65
4.3 do...while语句 67
4.4 循环控制break语句和continue语句 69
4.5 循环的嵌套 70
4.6 转向语句和语句标号 72
4.7 程序综合示例 73
本章小结 75
习题4 76
上机实验4 81
5.1.1 概述 82
5.1.2 函数的定义 82
第5章 函数 82
5.1 函数的定义和调用 82
5.1.3 函数调用 83
5.1.4 函数说明 84
5.2 变量的作用域和存储类型 86
5.3 函数间的数据传递 89
5.3.1 利用数据复制方式实现函数间的数据传递 89
5.3.2 利用函数返回实现函数间数据传递 90
5.4 函数嵌套调用和递归调用 91
5.5.2 内部函数 93
5.5 内部函数和外部函数 93
5.5.1 C语言源文件 93
5.5.3 外部函数 94
5.5.4 多个源文件的连接 94
5.6 程序综合示例 94
本章小结 98
习题5 99
上机实验5 105
第6章 编译预处理 107
6.1 宏定义 107
6.1.1 无参宏定义 107
6.1.2 有参宏定义 108
6.2 文件包含 109
6.3 条件编译 111
6.4 综合示例 112
本章小结 115
习题6 115
上机实验6 117
第7章 数组 118
7.1 一维数组 118
7.1.1 一维数组的定义 118
7.1.3 一维数组的初始化 119
7.1.2 一维数组元素的引用 119
7.1.4 一维数组程序举例 120
7.2 多维数组 121
7.2.1 二维数组的定义 121
7.2.2 二维数组元素的引用 121
7.2.3 二维数组初始化 122
7.2.4 二维数组程序举例 122
7.3 字符数组 123
7.3.1 字符数组的定义 123
7.3.4 字符数组程序举例 124
7.3.3 字符数组的引用 124
7.3.2 字符数组的初始化 124
7.3.5 字符串处理函数 126
7.4 数组作为函数参数 128
7.5 程序综合示例 129
本章小结 133
习题7 134
上机实验7 139
第8章 指针 140
8.1 指针与变量 140
8.1.1 指针变量的定义 140
8.1.2 指针变量的赋值 141
8.2 指针运算 142
8.2.1 指针的算术运算 142
8.2.2 指针的关系运算 143
8.2.3 指针变量的赋值 143
8.3 指针与数组 144
8.3.1 数组指针 144
8.3.2 字符指针 148
8.3.3 指针数组 148
8.4 指针与函数 150
8.4.1 函数指针 150
8.4.2 指针函数 151
8.4.3 命令行参数 152
8.5 程序综合示例 152
本章小结 161
习题8 162
上机实验8 167
第9章 结构体、联合体与枚举类型 168
9.1 结构体类型与变量 168
9.1.1 结构体类型的定义 168
9.1.2 结构体变量的定义 168
9.1.3 结构体变量的引用 169
9.1.4 结构体初始化 170
9.2 结构体数组 171
9.2.1 结构体数组定义 171
9.2.2 结构体数组成员的引用 172
9.3 结构体指针 173
9.4 结构体与函数 174
9.5 利用结构体变量构成链表 176
9.5.1 链表概念 176
9.5.2 动态分配内存 176
9.5.3 建立链表和显示链表 177
9.5.4 链表的插入与删除 178
9.6 联合体 180
9.7 枚举类型 181
9.8 用户定义类型 183
9.9 程序综合示例 184
本章小结 186
习题9 187
上机实验9 190
第10章 文件 191
10.1 文件的打开与关闭 191
10.2 文件的顺序读写 192
10.3 文件的随机读写 197
10.4 文件的错误检测 199
10.5 综合程序示例 200
本章小结 202
习题10 203
上机实验10 206
第11章 综合应用与实践 208
11.1 确定功能 208
11.2 定义核心数据结构 208
11.3.3 退出游戏模块 209
11.3.2 游戏主模块 209
11.3.1 初始化模块 209
11.3 程序的模块划分 209
11.4 源程序 210
11.5 调试 222
附录A Turbo C集成环境(IDE) 227
附录B Turbo C2.0常用库函数 232
附录C ASCII代码表 241
附录D 错误信息中英文对照 242
附录E C语言程序设计考试要求 246
附录F 部分习题参考答案 248
参考文献 253