第1章 结识C语言 1
1.1 初遇C语言 1
1.2 第一次约会C语言 10
1.3 又见C程序 15
1.4 程序调试 23
1.5 C语言的前世今生 28
习题 33
第2章 数据 34
2.1 数据类型 34
2.2 常量 36
2.3 变量 45
习题 50
第3章 运算 52
3.1 运算符和表达式 52
3.2 算术运算 57
3.3 赋值运算 65
3.4 关系运算 70
3.5 逻辑运算 71
3.6 逗号运算和条件运算 75
3.7 常用数学函数 77
习题 80
第4章 算法 84
4.1 算法和程序 84
4.2 算法举例 85
4.3 算法的特性及表示 92
4.4 结构化程序设计 93
习题 95
第5章 顺序结构程序设计 97
5.1 顺序结构 97
5.2 字符输入输出 100
5.3 标准输入输出函数 105
5.4 顺序结构程序设计举例 117
习题 122
第6章 选择结构程序设计 127
6.1 if语句 127
6.2 if语句的嵌套 135
6.3 switch语句 139
6.4 选择结构程序举例 143
习题 146
第7章 循环结构程序设计 151
7.1 认识循环 151
7.2 三种循环语句 156
7.3 循环控制语句 164
7.4 循环结构的嵌套 168
7.5 循环结构程序举例 172
习题 188
第8章 数组 196
8.1 认识数组 196
8.2 一维数组 198
8.3 一维数组应用 205
8.4 二维数组 211
8.5 二维数组应用 216
8.6 一维字符数组 220
8.7 一维字符数组的输入输出 224
8.8 一维字符数组应用 229
8.9 字符串处理函数 230
8.10 二维字符数组及应用 234
习题 236
第9章 函数 242
9.1 认识函数 242
9.2 函数的定义和声明 246
9.3 函数的调用 253
9.4 函数参数的传递 262
9.5 函数的嵌套调用 268
9.6 函数递归 270
9.7 变量的作用域 279
9.8 变量的存储类型(生存期) 285
9.9 函数程序举例 294
习题 299
第10章 预处理 306
10.1 宏 306
10.2 带参数的宏 312
10.3 文件包含 316
10.4 条件编译 318
习题 320
第11章 指针 324
11.1 认识指针 324
11.2 指针的基本运算 331
11.3 指针与数组 337
11.4 指针与字符串 344
11.5 函数指针 347
11.6 指针型函数 349
11.7 指针数组 351
11.8 指向指针的指针 355
11.9 动态内存管理 356
11.10 指针小结 361
习题 363
第12章 结构体、共用体、链表和枚举 369
12.1 结构体 369
12.2 结构体指针 376
12.3 共用体 379
12.4 链表 383
12.5 枚举 387
习题 389
第13章 文件 395
13.1 认识文件 395
13.2 文件指针 397
13.3 读写字符函数 403
13.4 读写字符串 414
13.5 格式化读写 417
13.6 数据块读写 420
13.7 文件的随机读写 423
13.8 文件读写出错检测 426
13.9 主函数的参数 427
13.10 输入输出重定向 431
习题 434
附录 ASCII码 437