第1章 C语言概述 1
1.1 C语言概述 1
1.1.1 C语言的发展 1
1.1.2 C语言特点 1
1.1.3 Turbo C 2.0介绍 2
1.2 第一个C语言程序 7
1.2.1 C语言程序的编制运行过程 7
1.2.2 C语言程序的结构 8
1.2.3 C语言程序设计基础 11
本章小结 12
习题 13
第2章 基本数据类型 16
2.1 C语言的数据类型 16
2.2 常量与变量 17
2.3 整型数据 20
2.3.1 整型常量 20
2.3.2 整型变量 21
2.4 实型数据 24
2.4.1 实型常量 24
2.4.2 实型变量 24
2.5 字符型数据 25
2.5.1 字符型常量 25
2.5.2 字符型变量 26
2.5.3 字符串常量 28
本章小结 29
习题 29
第3章 运算符与表达式 33
3.1 运算符与表达式概述 33
3.1.1 表达式的组成 33
3.1.2 运算符的分类 33
3.2 算术运算符与表达式 34
3.3 关系运算符与表达式 36
3.4 逻辑运算符与表达式 37
3.5 其他运算符与表达式 39
3.5.1 赋值运算符与表达式 39
3.5.2 条件运算符与表达式 41
3.5.3 逗号运算符与表达式 41
3.5.4 强制类型转换运算符与表达式 42
3.6 运算符的优先级 43
本章小结 44
习题 44
第4章 数据的输入与输出 48
4.1 数据的输出函数 48
4.1.1 按格式输出函数printf( ) 48
4.1.2 标准字符输出函数putchar( ) 51
4.1.3 字符串输出函数puts( ) 51
4.2 数据输入函数 52
4.2.1 按格式输入函数scanf( ) 52
4.2.2 标准字符输入函数getchar() 55
4.2.3 字符串输入函数gets( ) 56
本章小结 57
习题 57
第5章 结构控制语句 62
5.1 程序的基本控制结构 62
5.1.1 顺序结构 62
5.1.2 选择结构 64
5.1.3 循环结构 65
5.2 条件选择语句 65
5.2.1 if语句的形式 66
5.2.2 if语句的嵌套 67
5.3 多路分支语句 69
5.4 循环语句 72
5.4.1 while型循环语句 73
5.4.2 do...while型循环语句 73
5.4.3 for型循环语句 74
5.4.4 goto型循环语句 76
5.4.5 continue语句和break语句 77
5.4.6 循环嵌套 79
本章小结 82
习题 82
第6章 数组 88
6.1 一维数组 88
6.1.1 一维数组的定义 88
6.1.2 一维数组的初始化 89
6.1.3 一维数组元素的使用 90
6.1.4 应用举例 92
6.2 字 符 数 组 96
6.2.1 字符数组的定义及字符串 96
6.2.2 字符数组的初始化 97
6.2.3 字符数组的使用 97
6.2.4 字符串处理函数 99
6.2.5 应用举例 103
6.3 二维数组 105
6.3.1 二维数组的定义 105
6.3.2 二维数组的初始化 106
6.3.3 二维数组的使用 107
6.3.4 应用举例 108
本章小结 112
习题 112
第7章 函数 118
7.1 用户自定义函数 118
7.1.1 函数的定义 119
7.1.2 函数的调用 120
7.1.3 函数调用中的数据传递 122
7.2 函数的嵌套调用和递归调用 130
7.2.1 函数的嵌套调用 130
7.2.2 函数的递归调用 131
7.3 变量的作用域和生存期 135
7.3.1 局部变量和全局变量 135
7.3.2 变量生存期 139
7.4 函数的作用范围 144
7.4.1 内部函数 144
7.4.2 外部函数 144
7.5 命令行参数 145
7.6 多个文件的连接和运行 146
本章小结 147
习题 148
第8章 指针 157
8.1 指针与指针变量 157
8.1.1 地址、指针与指针变量 157
8.1.2 指针变量的使用 158
8.2 指针与数组 163
8.2.1 指向一维数组的指针 163
8.2.2 指向二维数组的指针 167
8.2.3 指向字符串的指针 173
8.3 指向特殊类型数据的指针变量 175
8.3.1 指针数组 175
8.3.2 指向指针的指针 178
8.4 指针与函数 180
8.4.1 指针变量作为函数参数 180
8.4.2 返回指针的函数 183
8.4.3 指向函数的指针 186
本章小结 189
习题 189
第9章 预处理 197
9.1 宏定义 197
9.1.1 不带参数的宏定义 197
9.2 文件包含 199
9.3 条件编译 200
9.3.1 #ifdef 200
9.3.2 #ifndef 201
9.3.3 #if 202
本章小结 203
习题 203
第10章 构造型数据结构 208
10.1 结构体 208
10.1.1 概述 208
10.1.2 结构体的定义 209
10.1.3 结构体变量的使用 211
10.1.4 结构体数组 212
10.1.5 指向结构体的指针 214
10.1.6 结构体变量作为参数在函数之间进行传递 216
10.2 指针与链表 218
10.2.1 动态数据结构与动态内存分配 218
10.2.2 链表的定义 219
10.2.3 链表的操作 221
10.3 共用体 227
10.3.1 共用体的定义 227
10.3.2 共用体变量的使用 228
10.4 枚举类型 230
10.4.1 枚举类型的定义 230
10.4.2 枚举类型变量的使用 230
10.5 自定义类型 232
本章小结 233
习题 234
第11章 位运算 241
11.1 位运算符 241
11.1.1 按位与 241
11.1.2 按位或 241
11.1.3 按位异或 242
11.1.4 按位取反 243
11.1.5 按位左移 243
11.1.6 按位右移 243
11.1.7 位运算复合赋值运算符 244
11.2 位段 245
本章小结 246
习题 246
第12章 文件 252
12.1 文件概述 252
12.1.1 文件的存储方式 252
12.1.2 文件类型指针(FILE类型指针) 253
12.2 文件的打开和关闭 253
12.2.1 打开文件函数fopen 253
12.2.2 关闭文件函数fclose 254
12.3 文件的读写 255
12.3.1 字符的读取和写入 255
12.3.2 字符串的读取和写入 256
12.3.3 按格式读取和写入 258
12.4 随机文件的读写 259
12.4.1 随机文件的读取 259
12.4.2 随机文件的写入 260
12.5 文件定位函数 261
12.5.1 rewind函数 261
12.5.2 fseek函数 262
12.5.3 ftell函数 263
本章小结 263
习题 263