第1章 计算机与C语言 1
1.1计算机的基本工作原理 1
1.1.1计算机基本结构 1
1.1.2程序及算法 2
1.1.3计算机语言 5
1.1.4程序设计的基本步骤 6
1.2 C语言的历史 7
1.3 C语言的特点 7
1.4 C程序的编译平台 8
1.4.1 Turbo C平台介绍 9
1.4.2 Visual C++平台介绍 11
小结 11
习题 11
第2章C语言源程序简介 13
2.1简单的“Hello”程序 13
2.1.1 C语言源程序的构成 13
2.1.2从源程序到可执行程序 15
2.2初步剖析C源程序 18
小结 20
习题 21
第3章C语言的基本元素 22
3.1 C语言的最小单位和基本单位 22
3.1.1字符集 22
3.1.2标识符与保留字 23
3.2程序中的数据描述 23
3.2.1常量 23
3.2.2变量 23
3.3程序中的基本数据类型 24
3.3.1数据类型 24
3.3.2从一种类型到另一种类型 28
3.4程序中的运算 29
3.4.1算术运算 29
3.4.2关系运算 31
3.4.3逻辑运算 32
3.4.4位运算 32
3.4.5其他运算 33
3.4.6表达式和表达式的值 33
3.4.7运算符的优先级和结合性 35
3.5再次了解C语言源程序 37
3.5.1分析main函数 37
3.5.2 C语言语句 39
3.5.3在控制台上输入输出 39
3.5.4 *.c文件和*.h文件 43
小结 45
习题 45
第4章 跟着基本流程走 50
4.1平坦的顺序语句 50
4.2犹豫的岔路口——分支语句 52
4.2.1二选一的岔路——if语句 53
4.2.2多选一的岔——switch语句 58
4.3不可少的重复——循环语句 60
4.3.1谨慎的循环——while语句 60
4.3.2鲁莽的循环——do-while语句 62
4.3.3重复次数明确的循环——for语句 63
4.3.4善意的打断——break和continue 68
4.4曲径通幽——跟着流程走 70
4.4.1素数问题 70
4.4.2实用的计算器 71
小结 72
习题 73
第5章 轻松使用数组 81
5.1构造一维数组 81
5.1.1定义及初始化 82
5.1.2元素的访问 82
5.1.3轻松的排序 83
5.2构造二维数组 84
5.2.1定义及初始化 84
5.2.2元素的访问 85
5.2.3矩阵运算不再难 86
5.3特殊的数组——字符数组和字符串 86
5.4数组的魅力——密码问题 87
小结 89
习题 89
第6章 灵活运用函数 91
6.1神秘的函数 91
6.1.1函数定义 91
6.1.2函数调用 92
6.2再谈变量 94
6.2.1变量的作用域和生存期 94
6.2.2局部变量和全局变量 95
6.2.3变量的存储类别 98
6.3函数之间的调用 102
6.3.1参数传递 102
6.3.2数组传递 104
6.3.3函数嵌套 106
6.4特殊的嵌套调用——递归函数 107
6.4.1递归函数的特征 107
6.4.2有趣的汉诺塔问题 109
6.5函数也有内外之分 111
6.5.1内部函数 111
6.5.2外部函数 112
6.6函数应用实例 112
小结 115
习题 115
第7章 神奇的指针 117
7.1细说指针 117
7.1.1通过指针变量访问内存空间 117
7.1.2指针变量运算 120
7.2自己管理程序空间 121
7.2.1学会使用malloc 121
7.2.2学会使用free 123
7.3指针和数组 125
7.3.1用指针访问一维数组 125
7.3.2用指针访问二维数组 128
7.3.3字符指针、字符串和字符数组 131
7.4指针参数与函数指针 133
7.4.1参数传递——指针参数传递 133
7.4.2函数指针 136
7.5灵活的指针 139
小结 143
习题 144
第8章 自己设计数据类型 147
8.1结构体类型 147
8.1.1定义结构体类型 147
8.1.2访问结构体中的成员 149
8.1.3结构体数组 151
8.1.4结构体链表 155
8.2枚举 159
8.2.1枚举定义和访问 159
8.2.2有趣的商场摸奖问题 160
8.3共用体 164
8.4为类型重命名——typedef 167
8.5自己解决综合测评问题 168
小结 175
习题 175
第9章 与外设打交道 179
9.1读写磁盘 179
9.1.1文件结构和文件指针 179
9.1.2文件操作步骤 181
9.1.3文件常见操作 182
9.2亲密接触文件 193
小结 196
习题 196
第10章C的编译系统 197
10.1 C语言源程序的旅程 197
10.2宏 199
10.2.1常量宏 199
10.2.2带参宏和函数 201
10.3文件包含预处理指令 203
10.4为机器减负——条件编译 204
小结 208
习题 208
第11章C程序与Windows操作系统 210
11.1 Windows操作系统和Windows程序 210
11.1.1了解Windows 210
11.1.2 Windows程序的特征 211
11.1.3面向对象的思维方法 216
11.2 Windows程序元素 217
11.2.1用户界面的构件 217
11.2.2句柄 219
11.2.3数据类型及常量 220
11.2.4应用程序使用的一些术语 223
11.2.5事件和消息 224
11.2.6窗口 225
11.2.7消息循环 231
11.3一个最简单的Win32程序 233
小结 237
习题 237
附录 238
参考文献 246