第1章 绪论 1
1.1求玉米产量——计算 1
1.2算法 3
1.3 PAD 4
1.4程序 6
1.5运行 8
1.6 C语言 10
1.7 Visual C+++集成开发环境 11
启动Visual C+++ 11
建立环境 12
输入、编辑源程序 13
编译 13
连接 14
运行 14
本章小结 15
习题1. 15
第2章 简单程序设计 16
2.1求绿化带宽度——简单程序 16
2.2语句 17
2.3表达式 18
表达式语句 20
赋值 20
2.4基本符号 21
标识符 21
关键字 22
间隔符 22
注释 23
2.5数据 24
字面常量 24
常量标识符 27
变量 27
2.6数据类型 29
浮点类型 29
整数类型 30
字符类型 31
混合运算 31
类型转换 32
左值 34
2.7输入输出 35
字符输入 36
字符输出 36
格式输入 36
格式输出 37
2.8顺序控制结构 41
本章小结 41
习题2. 42
第3章 分支程序设计 44
3.1判断成绩是否及格——双分支程序设计 44
3.2成绩加上获奖信息——单分支程序设计 47
3.3关于if 52
3.4布尔类型 53
关系运算 53
布尔运算 54
3.5获奖分等级——多分支程序设计 54
本章小结 60
习题3. 60
第4章 循环程序设计 62
4.1计算平均成绩——循环程序 62
后判断条件的循环 63
先判断条件的循环 67
for语句 71
4.2打印99表——多重循环 75
4.3程序设计实例 78
本章小结 87
习题4. 87
第5章 模块化程序设计——函数 92
5.1重写例1.1——模块化程序设计 92
5.2函数 94
函数定义 96
函数调用 97
先调用后定义 100
5.3程序设计实例 100
本章小结 116
习题5. 116
第6章 批量数据组织——数组 119
6.1整数排序——数组类型 119
数组声明 121
下标表达式 122
应注意的问题 122
6.2矩阵乘积——多维数组 123
6.3程序设计实例 125
6.4带序号的排序——数组初值 137
6.5输出回文字——字符串 140
6.6类型定义 144
本章小结 145
习题6. 145
第7章 指针 149
7.1指针与变量 149
指针类型和指针变量 150
指针所指变量 152
空指针和无效指针 154
7.2指针运算 155
7.3指针与数组 158
用指针标识数组 158
多维数组与指针 162
指针数组 165
指针与数组总结 169
7.4指针与字符串 170
7.5指向指针的指针 174
7.6命令行参数 176
本章小结 178
习题7. 178
第8章 表单数据组织——结构体 181
8.1图书卡管理 181
8.2保存图书卡——结构体 184
定义结构体类型 185
结构体类型名 187
结构体变量 187
指向结构体变量的指针 188
访问结构体变量的成分 189
8.3表示语言种类——枚举类型 190
8.4职工登记卡——共用体 192
共用体类型 193
限制 194
switch语句与共用体 195
8.5程序设计实例 195
本章小结 202
习题8. 202
第9章 再论函数 206
9.1参数 206
C参数传递规则 206
指针作参数 208
数组作参数 215
结构体作参数 219
9.2返回指针的函数 220
9.3返回结构体值的函数 223
9.4作用域 224
作用域 224
生存期 225
局部量和全局量 226
本章小结 229
习题9. 229
第10章 递归程序设计 232
10.1计算n!——递归程序设计 232
10.2计算算术表达式的值——间接递归 237
10.3递归程序执行过程 239
本章小结 250
习题10. 251
第11章 外部数据组织——文件 253
11.1重新考虑图书卡管理问题 253
11.2文件概述 254
11.3文件操作 257
打开和关闭文件 257
字符读/写 259
字符串读/写 259
数据块读/写 259
格式化读/写 260
文件定位 261
11.4程序设计实例 262
本章小结 269
习题11. 269
第12章 程序开发 271
12.1验证三角形外心定理——自顶向下、逐步求精 271
12.2结构化程序设计原则 278
12.3程序风格 279
行文格式 280
标识符 281
注释 281
程序说明 281
12.4八皇后——穷举法与试探法 282
本章小结 289
习题12. 289
第13章 动态数据组织 292
13.1打印法雷序列——动态数据结构 292
13.2动态变量 295
13.3链表 297
单向链表 298
栈 301
队列 303
13.4树 305
13.5图 311
13.6程序设计实例 312
本章小结 318
习题13. 318
第14章 若干较深入的问题和C语言独有的特性 322
14.1不定方向的数组排序——函数指针 322
14.2计算定积分——函数作参数 324
14.3函数副作用 327
14.4运算 329
赋值运算 329
顺序表达式 329
条件表达式 330
位运算 330
14.5语句 333
break 333
continue 334
for的延伸 334
goto和标号 335
14.6位段 336
14.7存储类别 337
数据在内存中的存储 337
自动存储类别 338
寄存器存储类别 339
变量的静态存储类别 340
变量的外部存储类别 341
函数的存储类别 342
类型定义符 343
14.8编译预处理 344
宏定义 344
文件包含 347
条件编译 348
本章小结 350
习题14. 351
附录一 ASCII字符集 352
附录二 标准库头文件表 355
参考文献 356