第1篇 程序设计基础 1
第1章 程序设计方法学 1
1.1程序设计方法学简介 1
1.2结构化程序设计方法 2
1.2.1概述 2
1.2.2程序设计步骤 4
1.2.3方法举例 5
1.3面向对象程序设计方法 5
1.3.1概述 5
1.3.2程序设计步骤 8
1.3.3方法举例 9
习题1 10
第2章 算法——程序的关键 11
2.1算法的含义及其特征 11
2.1.1算法的由来 11
2.1.2算法的含义 11
2.1.3算法的特征 12
2.2算法的表示 12
2.2.1程序的3种基本结构 12
2.2.2流程图及其表示 13
2.2.3 N-S图及其表示 14
2.3简单算法举例 15
习题2 18
第3章 程序设计过程与C语言开发环境 19
3.1高级语言与编译器 19
3.2程序设计过程 20
3.3 C语言开发环境 22
3.3.1 Visual C++++ 6.0的安装 22
3.3.2开发环境和程序开发过程 24
3.4常见的程序调试方法与技巧 30
3.4.1程序测试 31
3.4.2调试技术 32
3.4.3跟踪步骤 32
习题3 35
第4章 相关的程序设计基础知识 36
4.1基本的软、硬件知识 36
4.1.1基本的软件知识 36
4.1.2基本的硬件知识 40
4.2程序在内存中的布局 43
4.2.1 C语言程序的存储区域 43
4.2.2 C语言可执行程序的内存布局 44
4.2.3举例说明 45
4.3源程序编写的一般规范 46
4.3.1标识符命名及书写规则 46
4.3.2注释及格式要求 46
4.3.3缩进规则 47
4.3.4代码的排版布局 48
4.3.5函数的编写规范 48
习题4 48
第2篇C语言程序设计基础 49
第5章C语言基础 49
5.1基本字符集、标识符、常量和变量 50
5.1.1基本字符集及标识符 50
5.1.2常量 50
5.1.3变量 50
5.2基本数据类型 53
5.2.1整型数据 54
5.2.2实型数据 55
5.2.3字符型数据 57
5.3运算符与表达式 59
5.3.1算术运算符与表达式 60
5.3.2逻辑运算符与表达式 61
5.3.3关系运算符与表达式 62
5.3.4自增、自减运算符 63
5.3.5逗号运算符与表达式 64
5.3.6赋值表达式 64
5.3.7类型转换 65
习题5 67
第6章 顺序结构程序设计 69
6.1顺序结构概述 69
6.2数据输出 69
6.2.1 printf函数的一般调用形式 70
6.2.2 printf函数中常用的格式说明 70
6.2.3使用printf函数时的注意事项 72
6.2.4使用putchar函数输出字符 73
6.3数据输入 74
6.3.1 scanf函数的一般调用形式 74
6.3.2 scanf函数中常用的格式说明 74
6.3.3使用scanf函数从键盘输入数据 75
6.3.4使用getchar函数从键盘输入数据 76
6.4综合程序举例 76
习题6 79
第7章 分支结构程序设计 81
7.1分支结构概述 81
7.2 if语句 81
7.2.1 if语句 82
7.2.2 if…else语句 84
7.3多分支结构 85
7.3.1嵌套的if语句 85
7.3.2 switch语句 88
7.4单分支结构 91
7.5语句标号和goto语句 91
7.5.1语句标号 91
7.5.2 goto语句 91
7.6综合程序举例 92
习题7 93
第8章 循环结构程序设计 98
8.1循环结构概述 98
8.2简单循环结构 98
8.2.1 while循环与执行过程 98
8.2.2 do…while语句与执行过程 101
8.2.3 for语句与执行过程 103
8.2.4 break和continue语句 104
8.3循环的嵌套 107
8.4综合程序举例 109
习题8 112
第3篇C语言程序设计能力 117
第9章 数组 117
9.1数组概述 117
9.2一维数组 118
9.2.1一维数组的定义 119
9.2.2一维数组元素的引用 120
9.2.3一维数组元素的初始化 121
9.2.4一维数组应用举例 122
9.3多维数组 128
9.3.1二维数组的定义 128
9.3.2二维数组元素的引用 130
9.3.3二维数组的初始化 131
9.3.4其他高维数组 132
9.3.5多维数组应用举例 133
9.4字符串与字符数组 137
9.4.1字符串的表示 137
9.4.2字符串的输入与输出 138
9.4.3字符串处理的函数 139
9.4.4字符串数组 142
9.4.5字符串应用举例 144
9.5综合程序举例 146
习题9 150
第10章 指针与数组 158
10.1指针概述 158
10.2指针变量定义 159
10.3指针变量赋值 159
10.4指针变量操作 161
10.4.1指针引用 161
10.4.2移动指针 164
10.4.3指针比较 165
10.5一维数组和指针 165
10.5.1一维数组和数组元素的地址 165
10.5.2指针与数组元素操作 165
10.5.3应用举例 166
10.6二维数组和指针 169
10.6.1二维数组和数组元素的地址 169
10.6.2指针与数组元素操作 170
10.6.3应用举例 172
10.7指针数组 172
10.8字符指针 173
10.9多级指针 178
10.10动态内存分配与指针 179
10.11综合程序举例 181
习题10 185
第11章 函数 189
11.1函数概述 189
11.2函数定义 192
11.2.1函数定义 192
11.2.2函数的返回值 193
11.3函数调用 193
11.3.1函数调用时的语法要求 193
11.3.2函数的嵌套调用 195
11.4函数声明 198
11.4.1函数声明的形式 198
11.4.2函数声明的位置 199
11.5参数传递 200
11.5.1值传递方式 200
11.5.2地址传递方式 201
11.6函数与数组 204
11.7函数与指针 207
11.7.1指针作为函数参数 207
11.7.2指针型函数与函数指针 212
11.8变量的作用域、存储类型和生存期 213
11.8.1变量的作用域 213
11.8.2存储类型和生存期 216
11.9 main函数中的参数 219
11.10综合程序举例 220
习题11 222
第12章 结构体、共用体、枚举及用户定义类型 226
12.1概述 226
12.2结构体 226
12.2.1定义结构体类型和结构体变量 226
12.2.2访问结构体成员 229
12.2.3结构体数组 230
12.2.4结构体指针 231
12.2.5链表 232
12.2.6结构体与函数 241
12.3共用体 243
12.3.1共用体类型与共用体变量 243
12.3.2共用体变量的引用 245
12.4枚举与自定义类型 245
12.4.1枚举类型 245
12.4.2自定义类型 246
12.5综合程序举例 247
习题12 249
第13章 文件 252
13.1文件概述 252
13.1.1文件名 253
13.1.2文件分类 253
13.1.3文件缓冲区 254
13.2文件类型指针 254
13.2.1文件的存取方式 255
13.2.2文件的定位 255
13.3文件的打开与关闭 255
13.3.1文件打开 256
13.3.2文件关闭 257
13.4顺序读写文件 258
13.4.1字符读写 258
13.4.2字符串读写 259
13.4.3数据块读写 261
13.4.4格式化读写 265
13.5随机读写数据文件 265
13.6文件读写出错检测函数 269
13.7综合程序举例 270
习题13 274
第14章 位运算 277
14.1位运算概述 277
14.2位运算符 277
14.3综合程序举例 280
习题14 281
第15章 编译预处理 283
15.1编译预处理概述 283
15.2宏定义与替换 283
15.2.1不带参数的宏定义 283
15.2.2带参数的宏定义 285
15.3文件包含 286