目录 1
出版说明 1
前言 1
第1章 概述 1
1.1 发展历史和特点 1
1.1.1 发展历史 1
1.1.2 特点 1
1.2 程序举例、结构特点和书写规则 2
1.2.1 程序举例 2
1.2.2 结构特点 3
1.2.3 书写规则 4
1.3 开发与调试 5
1.3.1 Turbo C的集成开发环境 5
1.3.2 上机步骤 9
1.4 关于程序设计课程的学习 10
1.5 习题 12
第2章 数据类型、运算符和表达式 13
2.1 常量与变量 13
2.1.1 常量和符号常量 13
2.1.2 变量 14
2.2 基本数据类型 15
2.2.1 整型数据 15
2.2.2 实型数据 17
2.2.3 字符型数据 18
2.3 运算符与表达式 21
2.3.1 算术运算符与算术表达式 22
2.3.2 关系运算符与关系表达式 24
2.3.3 逻辑运算符与逻辑表达式 25
2.3.4 条件运算符与条件表达式 27
2.3.5 赋值运算符与赋值表达式 27
2.3.6 逗号运算符与逗号表达式 31
2.3.7 位运算符与位运算 31
2.4 习题 34
3.1 C语言的语句 38
第3章 基本程序设计 38
3.2 算法与结构化程序设计方法 39
3.2.1 算法 39
3.2.2 结构化程序设计方法 42
3.3 顺序结构程序设计 42
3.3.1 数据输出函数 42
3.3.2 数据输入函数 45
3.3.3 实训 48
3.4 选择结构程序设计 50
3.4.1 if语句 50
3.4.2 switch语句 55
3.4.3 实训 57
3.5.1 while循环语句 61
3.5 循环结构程序设计 61
3.5.2 do while循环语句 62
3.5.3 for循环语句 62
3.5.4 break语句和continue语句 65
3.5.5 循环的嵌套 66
3.5.6 实训 68
3.6 习题 70
4.1 一维数组 77
4.1.1 定义 77
第4章 数组 77
4.1.2 引用 78
4.1.3 初始化 79
4.1.4 实训 80
4.2 二维数组 82
4.2.1 定义 82
4.2.2 引用 82
4.2.3 初始化 83
4.2.4 实训 84
4.3 字符数组与字符串 85
4.3.1 定义 85
4.3.3 引用 86
4.3.2 初始化 86
4.3.4 输入输出 87
4.3.5 字符串处理函数 88
4.3.6 实训 90
4.4 习题 91
第5章 指针 94
5.1 概念 94
5.1.1 变量的地址与变量的内容 94
5.1.2 直接访问与间接访问 95
5.1.3 指针与指针变量 95
5.2.2 引用 96
5.2.1 定义 96
5.2 指针变量的定义与引用 96
5.3 指针变量的运算 99
5.3.1 赋值运算 99
5.3.2 算术运算 101
5.3.3 关系运算 102
5.4 指针与数组 102
5.4.1 指针与一维数组 103
5.4.2 指针与二维数组 105
5.5 指针与字符串 108
5.6 指针数组与指向指针的指针 111
5.6.1 指针数组 111
5.6.2 指向指针的指针 115
5.7 习题 116
第6章 函数 119
6.1 定义与调用 119
6.1.1 函数定义的一般形式 119
6.1.2 调用 121
6.1.3 函数的参数和函数的值 125
6.2 嵌套调用和递归调用 127
6.2.1 嵌套调用 127
6.2.2 递归调用 128
6.3 变量的作用域 131
6.3.1 局部变量 131
6.3.2 全局变量 132
6.4 变量的存储类别 134
6.5 内部函数与外部函数 138
6.6 指针与函数 139
6.7 用指针作函数参数 141
6.8 数组作为函数参数 143
6.8.1 数组元素作函数实参 143
6.8.2 数组名作为函数参数 144
6.9 返回指针的函数 146
6.10 main函数的命令行参数 147
6.11 习题 149
7.1 统计与计数问题算法 153
第7章 常用基本算法的C语言实现 153
7.2 累加/累乘求和与求积问题算法 154
7.3 解决不确定性问题的穷举算法 156
7.4 排序问题算法 158
7.5 数值积分算法 161
7.6 多项式计算问题算法 163
7.7 非线性方程求解问题算法 168
7.8 产生随机数算法 169
7.9 习题 170
8.1 结构体类型 172
8.1.1 结构体类型的定义 172
第8章 结构体、共用体和枚举类型 172
8.1.2 结构体变量的定义与引用 173
8.1.3 结构体数组 178
8.1.4 结构体指针 181
8.2 共用体类型 184
8.2.1 共用体类型的定义 184
8.2.2 共用体变量的定义与引用 185
8.3 枚举类型 187
8.3.1 枚举类型的定义 187
8.3.2 枚举类型变量的赋值和使用 188
8.4 习题 189
9.1.1 不带参数的宏定义 195
9.1 宏定义 195
第9章 编译预处理 195
9.1.2 带参数的宏定义 197
9.2 文件包含 201
9.3 条件编译 201
9.4 习题 204
第10章 文件操作 205
10.1 概述 205
10.1.1 文件的概念 205
10.1.2 数据流的概念 206
10.1.3 C的文件系统及其与流的关系 206
10.2 文件类型指针 206
10.3 文件的打开与关闭 207
10.3.1 打开 208
10.3.2 关闭 209
10.4 文件的读写操作 210
10.4.1 单个字符的读写 210
10.4.2 字符串的读写 213
10.4.3 数据块的读写 215
10.4.4 格式化数据的读写 216
10.5 文件的定位 217
10.5.1 rewind函数 217
10.5.2 fseek函数 217
10.6 习题 218
10.5.3 ftell函数 218
第11章 综合示例 225
11.1 一个通信录的程序示例 225
11.2 一个有趣的迷宫小游戏 231
第12章 实验 235
12.1 实验1 C语言的集成开发环境 235
12.2 实验2 简单的C语言程序设计 237
12.3 实验3 顺序结构程序设计 238
12.4 实验4 分支结构程序设计 239
12.5 实验5 循环结构程序设计 242
12.6 实验6 数组 243
12.7 实验7 指针 245
12.8 实验8 函数 247
12.9 实验9 常用基本算法 248
12.10 实验10 结构体与共用体 249
12.11 实验11 编译预处理 251
12.12 实验12 文件 251
12.13 实验13 综合练习 252
附录 254
附录A 运算符的优先级与结合性 254
附录B Turbo C 2.0的常用库函数 255
附录C Turbo C 2.0常见错误 262
附录D ASCII字符表 266