绪言 8
第一章 简易入门 11
1.1 程序设计初步 11
1.2 变量和运算 13
1.3 For语句 16
1.4 符号常数 17
1.5 一组有用的程序 17
1.6 数组 23
1.7 函数 25
1.8 变元——数值调用 27
1.9 字符数值 28
1.10 变量的有效范围∶外部变量 31
1.11 小结 33
2.2 数据的类型和长度 35
第二章 数组类型、算符和表达式 35
2.1 变量名称 35
2.3 常数 36
2.4 说明 37
2.5 算术算符 38
2.6 关系算符和逻辑算符 38
2.7 类型变换 39
2.8 增1和减1算符 42
2.9 位逻辑算符 44
2.10 赋值算符和表达式 45
2.11 条件式 46
2.12 优先级和评价顺序 48
3.2 If-Else 49
第三章 控制流 49
3.1 语句和程序块 49
3.3 Else-If 50
3.4 转移(Switch) 52
3.5 循环(While和for) 53
3.6 循环(Do-While) 56
3.7 Break语句 57
3.8 Continue语句 58
3.9 Goto和标号 59
第四章 函数和程序结构 61
4.1 基本事项 61
4.2 回送非整数的函数 64
4.3 再论函数的变元 66
4.4 外部变量 67
4.5 关于函数和变量的适用范围的规定 71
4.6 静态变量 74
4.7 寄存器变量 75
4.8 程序块结构 76
4.9 初始化 77
4.10 递归 79
4.11 C语言预处理程序 80
第五章 指数和数组 83
5.1 指针和地址 83
5.2 指针和函数的变元 84
5.3 指针和数组 86
5.4 地址运算 88
5.5 字符指针和函数 91
5.6 指针不是整数 94
5.7 多维数组 95
5.8 指针数组;指针的指针 97
5.9 指针数组的初始化 100
5.10 指针对多维数组 101
5.11 命令行的变元 102
5.12 函数的指针 106
第六章 构件 109
6.1 基本事项 109
6.2 构件和函数 111
6.3 构件数组 113
6.4 构件的指针 117
6.5 自我引用的构件 119
6.6 查表 123
6.7 场 125
6.8 联合 126
6.9 TyPedef 128
第七章 输入和输出 130
7.1 标准程序库的使用 130
7.2 标准的输入和输出程序——Getchar和Putchar 130
7.3 格式化输出——Printf 132
7.4 格式化输入——Scanf 133
7.5 存贮器中的格式变换 135
7.6 文件访问 135
7.7 错误处理——Stderr和Exit 138
7.8 行输入输出 139
7.9 其他函数 140
8.1 文件描述符 142
第八章 UNIX系统接口 142
8.2 低级输入输出——Read和Write 143
8.3 Open,Creat,Close,Unlink 144
8.4 随机访问——Seek和Lseek 146
8.5 例Fopen——和Getc的实现 147
8.6 例——目录列表 151
8.7 例——存贮分配程序 155
附录A C语言参考手册 160
1.绪言 160
2.词法约定 160
3.语法表达 162
4.名称的属性 162
6.变换 163
5.对象和左边值 163
7.表达式 164
8.说明 171
9.语句 178
10.外部定义 181
11.适用范围的规定 183
12.编译程序的控制行 184
13.隐含说明 185
14.再论数据类型 185
15.常数表达式 187
16.关于可移植性的考虑 188
17.过时的方面 188
18.语法提要 189