第一章 C语言基础 1
§1.1 C语言简史及特点 1
§1.2 C语言的基本结构 2
§1.3 保留字和标识符 4
附录1.1 C程序示例 5
附录1.2 C的编程风格 6
问题与习题 8
§2.1 整型 10
第二章 基本数据类型 10
§2.2 字符型 13
§2.3 浮点型 14
§2.4 双精度型 15
附录2.1 C程序示例 17
附录2.2 C语言编译软件介绍 18
问题与习题 19
第三章 运算符 21
§3.1 算术运算符和赋值运算符 21
§3.2 增一、减一运算符 23
§3.3 关系运算符和逻辑运算符 24
§3.4 字位逻辑运算符 26
§3.5 混合运算与类型转换 31
§3.6 运算优先级 34
附录3.1 C程序示例 36
附录3.2 Turbo C简介 38
问题与习题 38
第四章 格式化输入输出 41
§4.1 格式化输出—printf函数 41
§4.2 格式化输入——scanf函数 44
附录4.1 C程序示例 47
附录4.2 如何在Turbo C编译器上运行C程序 47
问题与习题 51
第五章 控制语句 53
§5.1 if语句 53
5.1.1 if流程 53
5.1.2 if else流程 54
5.1.3 else if流程 56
§5.2 switch 语句 58
§5.3 for 语句 62
5.3.1 for语句的一般形式 63
5.3.2 for语句的各种变体 65
§5.4 while 语句和do while语句 68
5.4.1 while语句 68
5.4.2 do while语句 71
§5.5 break,continue,goto语句 73
5.5.1 break语句 73
5.5.2 continue语句 75
5.5.3 goto语句 76
附录5.1 C程序示例 77
附录5.2 Turbo C菜单系统简介 80
问题与习题 83
第六章 数组和指针 85
§6.1 数组 85
6.1.1 数组的定义和使用 85
6.1.2 数组元素初始化 87
6.1.3 二维和多维数组 89
§6.2 字符串 93
§6.3 指针 96
6.3.1 指针的概念和定义 97
6.3.2 指针运算 99
§6.4 指针和数组 101
§6.5 字符串指针 103
§6.6 指针数组 106
附录6.1 C程序示例 107
附录6.2 Turbo C的调试系统 108
问题与习题 113
7.1.1 函数定义 118
§7.1 函数定义和调用 118
第七章 函数 118
7.1.2 函数调用 119
§7.2 函数参数 123
7.2.1 传值调用 124
7.2.2 传址调用 124
§7.3 函数与数组 126
§7.4 函数与指针 129
7.4.1 返回指针的函数 129
7.4.2 指向函数的指针 131
§7.5 递归调用 133
§7.6 命令行参数 135
§7.7 标准库函数 137
附录7.1 C程序示例 138
附录7.2 Turbo C头部文件及数学函数 142
问题与习题 146
第八章 变量的存储类型 148
§8.1 自动变量 148
§8.2 外部变量 151
§8.3 静态变量 155
§8.4 寄存器变量 158
§8.5 变量的初始化 159
附录8.1 C程序示例 160
附录8.2 Turbo C动态内存分配及内存管理函数 163
问题与习题 167
第九章 结构、联合、枚举及类型定义 170
§9.1 结构 170
9.1.1 结构及结构变量的定义 170
9.1.2 结构成员的访问 172
9.1.3 结构的初始化 173
§9.2 结构与数组 174
§9.3 结构与函数 176
9.3.1 结构成员传递给函数 176
9.3.2 整个结构传递给函数 177
9.3.3 结构型函数 178
§9.4 结构指针 181
9.5.1 位域 184
§9.5 位域及结构嵌套 184
9.5.2 结构嵌套 186
§9.6 联合 187
§9.7 枚举 192
§9.8 定义类型——typedef 194
附录9.1 C程序示例 194
附录9.2 Turbo C下与系统有关的库函数 199
问题与习题 210
第十章 输入、输出及文件管理 214
§10.1 流和文件 214
10.2.1 字符输入输出——getchar,putchar 215
§10.2 控制台I/O 215
10.2.2 字符串输入输出——gets,puts 217
§10.3 文件 218
10.3.1 打开文件函数——fopen 218
10.3.2 关闭文件函数——fclose 220
10.3.3 标准流式文件stdin,stdout和stderr 220
§10.4 用于文件的输入输出函数 221
10.4.1 单字符输入输出——getc,putc 221
10.4.2 行输入输出——fgetc,fputc 224
10.4.3 数据块的输入输出——fread,fwrite 225
10.4.4 流式文件数据的格式化输入输出——fprintf(),fscanf() 227
10.4.5 文件的随机防问——fseek 227
附录10.1 C程序示例 228
附录10.2 TurboC文件I/O函数 231
问题与习题 234
第十一章 C语言预处理功能 235
§11.1 宏替换——#define 235
11.1.1 简单的字符串替换 235
11.1.2 带参宏定义及宏调用 237
§11.2 包含文件——#include 241
§11.3 条件编译 ——#if,#ifdef,#ifndef 242
11.3.1 #if条件编译 242
11.3.2 #ifdef条件编译 243
11.3.3 #ifndef条件编译 244
§11.4 行控制—#1ine 245
附录11.1 C程序示例 247
附录11.2 Turbo C图形库函数 250
问题与习题 266
§12.1 队列 269
第十二章 C在数据结构中的应用 269
§12.2 栈 274
§12.3 链表 280
12.3.1 单向链表 280
12.3.2 双向链表 284
12.3.3 通讯录应用实例 288
附录12.1 常见的编译错误和程序调试 295
附录12.2 Turbo C2.0库函数 301
附录A ASCII字符表 322
附录B 运算符的优先级和结合性表 323