第1章 程序设计基础与C语言 1
1.1 程序设计的概念 1
1.1.1 程序设计与程序 1
1.1.2 算法 1
1.1.3 数据结构 5
1.2 程序设计语言与C语言 6
1.2.1 程序设计语言的发展 6
1.2.2 C语言简介 6
1.3 程序设计风格 10
小结 11
综合练习一 11
一、选择题 11
二、填空题 12
三、上机操作题 12
第2章 C语言的数据类型 13
2.1 数据类型 13
2.2 基本数据类型 13
2.2.1 整数类型 13
2.2.2 实数类型 14
2.2.3 字符类型 15
2.2.4 函数sizeof() 15
2.3 常量和变量 16
2.3.1 标识符 16
2.3.2 常量 17
2.3.3 变量 19
二、填空题 20
一、选择题 20
综合练习二 20
小结 20
三、上机操作题 21
第3章 运算符与表达式 22
3.1 C语言的运算符 22
3.2 算术运算 22
3.2.1 基本算术运算符 22
3.2.2 自加和自减运算符 23
3.2.3 算术表达式 24
3.3.2 复合赋值运算符及表达式 25
3.3 赋值运算 25
3.3.1 赋值运算符及赋值表达式 25
3.4 关系运算 26
3.4.1 关系运算符 26
3.4.2 关系表达式 26
3.5 逻辑运算 27
3.5.1 逻辑运算符 27
3.5.2 逻辑表达式 28
3.6 条件运算 29
一、选择题 30
小结 30
综合练习三 30
二、填空题 31
三、上机操作题 31
第4章 顺序结构程序设计 32
4.1 标准输入/输出函数 32
4.1.1 格式化输入/输出函数 32
4.1.2 非格式化输入/输出函数 38
4.2.2 程序举例 41
4.2 顺序结构程序设计 41
4.2.1 顺序结构 41
小结 42
综合练习四 43
一、选择题 43
二、填空题 44
三、上机操作题 45
5.2.1 if语句 46
5.2 分支结构程序设计语句 46
5.1 分支结构程序设计思想 46
第5章 分支结构程序设计 46
5.2.2 switch语句 53
小结 57
综合练习五 57
一、选择题 57
二、填空题 59
三、上机操作题 59
6.2.1 while语句 60
6.2 循环结构程序设计语句 60
第6章 循环结构程序设计 60
6.1 循环结构程序设计思想 60
6.2.2 do while语句 61
6.2.3 for语句 63
6.2.4 goto语句和if语句构成的循环 66
6.2.5 循环的嵌套 67
6.2.6 几种循环的比较 67
6.3 程序举例 68
一、选择题 70
综合练习六 70
小结 70
二、填空题 71
三、上机操作题 72
第7章 函数 73
7.1 函数的概念 73
7.2 函数的定义与声明 74
7.2.1 数的定义 74
7.3.1 函数的调用 77
7.3 函数的传值调用 77
7.2.2 函数的声明 77
7.3.2 函数调用的数据传递方式 79
7.4 数的嵌套调用和递归调用 80
7.4.1 函数的嵌套调用 80
7.4.2 函数的递归调用 81
7.5 变量的存储属性 84
7.5.1 动态变量 84
7.5.2 静态变量 86
7.6.1 内部函数 87
7.5.3 外部变量 87
7.6 内部函数和外部函数 87
7.6.2 外部函数 88
小结 88
综合练习七 88
一、选择题 88
二、填空题 89
三、上机操作题 90
8.1.2 一维数组的引用 91
8.1.1 一维数组的定义 91
第8章 数组 91
8.1 一维数组 91
8.1.3 一维数组的初始化 92
8.1.4 数组作为函数的参数 94
8.1.5 一维数组程序举例 95
8.2 二维数组和多维数组 96
8.2.1 二维数组和多维数组的定义 97
8.2.2 多维数组在内存中的排列 97
8.2.3 二维数组和多维数组的引用 97
8.2.4 二维数组和多维数组的初始化 98
8.2.5 二维数组和多维数组程序举例 100
8.3 字符数组和字符串 101
8.3.1 字符数组的定义 101
8.3.2 字符数组的引用 101
8.3.3 字符数组的初始化 102
8.3.4 字符串的定义 104
8.3.5 字符串的输入与输出 104
8.3.6 字符串运算函数 106
小结 110
8.3.7 字符数组和字符串程序举例 110
综合练习八 111
一、选择题 111
二、填空题 112
三、上机操作题 112
9.1 指针变量的定义和初始化 113
9.1.1 指针的概念 113
第9章 指针 113
9.1.2 指针变量的定义 115
9.1.3 指针变量的引用 115
9.1.4 指针变量的初始化 117
9.2 指针与数组 118
9.2.1 一维数组的指针及其指针变量 118
9.2.2 二维数组的指针及其指针变量 120
9.2.3 数组指针作函数参数 123
9.3.1 字符串的表现形式 126
9.3 指针与字符串 126
9.3.2 字符指针变量与字符串 128
9.3.3 字符串指针作函数参数 129
9.4 指针与函数 130
9.4.1 用函数指针调用函数 130
9.4.2 函数指针作函数参数 131
9.5 返回指针值的函数 133
9.6 指针数组和指向指针的指针 134
9.6.1 指针数组 134
9.6.2 指向指针的指针 137
9.6.3 指针数组作main()函数的形参 138
小结 139
综合练习九 139
一、选择题 139
二、填空题 140
三、上机操作题 141
10.1 结构体类型 142
10.1.1 结构体类型概述 142
第10章 结构体与共用体 142
10.1.2 结构体变量的定义 143
10.1.3 结构体变量的引用 145
10.1.4 结构体变量的初始化 146
10.1.5 结构体数组 147
10.1.6 结构体指针 148
10.1.7 结构体变量作为函数参数 150
10.1.8 返回结构体型值的函数 152
10.1.9 结构指针型函数 153
10.2.1 链表概述 155
10.2 用结构体指针处理链表 155
10.2.2 动态存储分配 156
10.2.3 链表的基本操作 158
10.3 共用体类型 161
10.3.1 共用体类型概述 162
10.3.2 共用体变量的定义 162
10.3.3 共用体变量的引用 163
10.3.4 共用体变量的赋值和使用 163
10.4.1 枚举类型的定义 165
10.4 枚举类型 165
10.4.2 枚举类型变量 166
10.5 定义类型 168
小结 169
综合练习十 169
一、选择题 169
二、填空题 171
三、上机操作题 172
第11章 编译预处理 173
11.1 宏定义 173
11.1.1 不带参数的宏定义 173
11.1.2 带参数的宏定义 175
11.2 文件包含 178
11.3 条件编译 179
小结 182
综合练习十一 182
一、选择题 182
二、填空题 183
三、上机操作题 184
第12章 位运算 185
12.1 数值在计算机中的表示 185
12.1.1 二进制位与字节 185
12.1.2 数的表示方式 185
12.2 位运算 186
12.2.1 按位与运算 187
12.2.2 按位或运算 188
12.2.4 按位取反运算 189
12.2.3 按位异或运算 189
12.2.5 左移运算 190
12.2.6 右移运算 190
12.2.7 程序举例 191
12.3 位段 192
12.3.1 位段的概念与定义 192
12.3.2 位段的引用 193
综合练习十二 194
一、选择题 194
小结 194
二、填空题 195
三、上机操作题 195
第13章 文件 197
13.1 C文件基础 197
13.1.1 文件的分类 197
13.1.2 缓冲文件系统和非缓冲文件系统 197
13.2 文件类型指针 198
13.1.3 C文件操作的一般过程 198
13.3 文件的打开与关闭 199
13.3.1 文件的打开 199
13.3.2 文件的关闭 200
13.4 文件的读写 201
13.4.1 字符的读写 201
13.4.2 字符串的读写 202
13.4.3 数据块的读写 204
13.4.5 字的读写 206
13.5 文件的定位 206
13.4.4 格式化的读写 206
13.5.1 fseek函数 207
13.5.2 ftell函数 207
13.5.3 rewind函数 207
13.6 文件操作的检测 207
13.6.1 ferror函数 207
13.6.2 clearerr函数 207
13.7.2 文件的读写 208
13.7.1 打开、关闭文件和生成新文件 208
13.7 非缓冲型文件系统 208
13.6.3 feof函数 208
13.7.3 随机访问文件 209
小结 209
综合练习十三 209
一、选择题 209
二、填空题 210
三、上机操作题 210
14.2.1 屏幕操作函数 211
14.2 字符屏幕函数 211
14.1 C语言的工作模式 211
第14章 字符屏幕和图形函数 211
14.2.2 字符属性控制函数 213
14.2.3 基本输入、输出函数 215
14.2.4 字符屏幕状态函数 216
14.3 图形函数 218
14.3.1 图形控制函数 218
14.3.2 颜色控制函数 220
14.3.3 屏幕和图形窗口管理函数 222
14.3.4 画图函数 224
14.3.5 图形填充函数 228
14.3.6 图形模式下的文本输出函数 231
14.3.7 独立图形运行程序的建立 233
小结 234
综合练习十四 234
一、选择题 234
二、填空题 235
三、上机操作题 236
A.2 键盘字符 237
附录A ASCII码表 237
A.1 控制字符 237
附录B C语言的关键字 239
附录C 运算符的优先级和结合方向 240
附录D Turbo C常用库函数表 242
D.1 输入/输出函数 242
D.2 字符函数 244
D.3 字符串函数 244
D.4 数学函数 245
D.6 字符屏幕和图形功能函数 246
D.5 动态存储分配函数 246
D.7 其他函数 249
附录E Turbo C 2.0使用指南 251
E.1 主菜单 251
E.2 编辑窗口 258
E.3 信息窗口 258
E.4 功能键提示 258
参考文献 260