《程序设计基础》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:余苏宁主编;赵杰,乌云高娃副主编
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2012
  • ISBN:9787040336337
  • 页数:377 页
图书介绍:本书所选内容都是计算机及相关专业学生必须掌握的知识点,全书共9章,主要内容包括:线性表、栈和对列、数组、特殊矩阵和广义表、串、树、图、查找、和排序等。各章中对所涉及的数据结构与算法均给出了通俗的解释和C++语言描述,各章主要内容都是采用任务驱动模式叙述,并将任务分解逐步完成,并给出任务完成效果,最后将知识点系统归纳,其目的是使读者将学到的知识能够落实到应用中。本书可作为应用型本科、高等职业学校、高等专科学校计算机及相关专业“程序设计基础”课程的教材,也可供计算机软件开发的科技人员参考。

第1章 程序与算法基础 1

1.1 程序与算法 1

1.1.1 实例程序演示 1

1.1.2 程序与算法 4

1.2 简单程序实例 5

1.3 C程序的编辑、编译、连接和执行 5

1.3.1 C程序的编辑、编译、连接和执行概述 6

1.3.2 编程工具的选择 7

1.3.3 C程序的开发过程 8

1.4 实例程序的解读 12

1.5 系统生成的文件和程序配置 15

1.6 程序设计语言基础知识 16

1.6.1 机器语言 17

1.6.2 汇编语言 17

1.6.3 高级语言 18

1.7 C语言的产生和特点 19

1.7.1 C语言的产生 19

1.7.2 C语言的特点 21

习题1 23

第2章 C语言基础 24

2.1 会动的字符 24

2.2 C语言的基本字符、标识符和关键字 25

2.2.1 基本字符 26

2.2.2 标识符 27

2.2.3 关键字 27

2.2.4 特定字 28

2.3 数据与数据类型 28

2.3.1 猜生日游戏 28

2.3.2 数据类型分类 31

2.3.3 常量和变量 31

2.3.4 基本类型 33

2.3.5 数值型数据的混合运算 40

2.4 运算符和表达式 43

2.4.1 算术表达式 44

2.4.2 赋值表达式 46

2.4.3 关系表达式 47

2.4.4 逻辑表达式 48

2.4.5 条件表达式 49

2.4.6 逗号表达式 51

2.4.7 算术、关系、逻辑、赋值运算符的混合使用 51

2.5 格式化输出输入函数 53

2.5.1 格式化输出函数printf 53

2.5.2 格式化输入函数scanf 57

习题2 59

第3章 算法的基本知识 62

3.1 算法的基本概念 62

3.2 算法的特性与要素 63

3.2.1 简单算法实例 63

3.2.2 算法的特性 64

3.2.3 算法的基本要素 65

3.3 怎样表示一个算法 66

3.3.1 用自然语言描述算法 66

3.3.2 用流程图描述算法 66

3.3.3 结构化程序与结构化定理 68

3.3.4 用N-S图描述算法 72

3.3.5 用PAD图描述算法 73

3.3.6 用伪代码描述算法 75

3.3.7 用计算机语言表示算法 79

习题3 80

第4章 结构化程序设计 81

4.1 结构化程序设计概述 81

4.2 顺序结构程序设计 82

4.2.1 C语句 82

4.2.2 顺序结构程序设计 83

4.3 选择结构程序设计 83

4.3.1 if语句 84

4.3.2 if-else语句 84

4.3.3 if语句的嵌套和else if语句 87

4.3.4 由条件表达式构成的选择结构 91

4.3.5 switch语句 92

4.4 循环结构程序设计 97

4.4.1 while循环语句 97

4.4.2 do-while循环语句 100

4.4.3 for循环语句 102

4.4.4 循环嵌套 105

4.4.5 break语句和continue语句 107

4.4.6 goto语句和标号语句 109

4.4.7 循环语句小结 110

4.5 数组 111

4.5.1 数组的定义和引用 111

4.5.2 数组的初始化 112

4.5.3 一维数组应用举例 113

4.5.4 字符数组 114

4.6 模块化程序设计 116

4.6.1 模块化程序设计概述 116

4.6.2 函数 117

4.6.3 变量的存储属性 125

4.6.4 预处理 132

4.7 自顶向下、逐步求精 137

4.8 结构化程序设计风格 142

4.8.1 标识符命名 142

4.8.2 注释 143

4.8.3 程序编写 144

4.8.4 输入输出 145

习题4 145

第5章 基本问题的求解方法 147

5.1 数字问题 147

5.1.1 整除的判断、整数的判断 148

5.1.2 奇偶判断 149

5.1.3 数字分离 150

5.1.4 素数判断 151

5.1.5 素因数分解 152

5.1.6 局部截取 153

5.1.7 最大公约数和最小公倍数 154

5.1.8 综合举例 156

5.2 数学计算 160

5.2.1 数值计算 161

5.2.2 日期计算 168

5.2.3 模拟 172

5.2.4 随机数的应用 174

5.3 逻辑判断 177

5.3.1 逻辑判断的方法 177

5.3.2 逻辑判断与推理题 180

5.4 数制转换 185

5.4.1 二进制数转化为十进制数 185

5.4.2 十进制数转化为二进制数 187

5.5 数据的排序算法 188

5.5.1 选择法 188

5.5.2 冒泡法 191

5.5.3 插入法 192

习题5 194

第6章 算法设计的基本方法 197

6.1 枚举法 197

6.1.1 枚举方法 197

6.1.2 枚举范围和枚举方法的确定 216

6.1.3 用枚举法解不定方程 219

6.2 归纳法 223

6.2.1 递推 223

6.2.2 递归 225

6.3 分治法 239

6.4 回溯法 249

习题6 260

第7章 程序调试 263

7.1 错误分类 263

7.2 编译错误的查找、定位与排除 263

7.2.1 利用编译器查找和定位错误 264

7.2.2 利用编辑器辅助查找和定位错误 266

7.3 连接错误的查找、定位与排除 274

7.4 运行错误的查找、定位与排除 274

7.4.1 在程序中插入调试语句 275

7.4.2 利用调试工具动态跟踪调试程序 278

习题7 285

第8章 Allegro绘图、动画及游戏编程 289

8.1 引言 289

8.2 安装Allegro C库 289

8.3 Hello Allegro 290

8.3.1 在VC6中创建Allegro工程 290

8.3.2 添加源程序代码 291

8.3.3 在工程设置中添加alleg.lib库名 293

8.3.4 编译连接和运行 294

8.3.5 程序解读 294

8.4 图像展示器 295

8.4.1 展示器雏形 295

8.4.2 位图显示方法 297

8.5 播放音乐 302

8.5.1 音乐播放方法 304

8.5.2 指定屏幕颜色 305

8.5.3 中心对齐和剪裁 305

8.6 显示多幅位图和键盘控制 306

8.6.1 指定不同文件名的方法 306

8.6.2 key数组和KEY常量 307

8.7 缩放和定时器 309

8.7.1 缩放位图 311

8.7.2 定时器 311

8.8 速度控制和文本显示 313

8.8.1 速度控制 314

8.8.2 文本显示 316

8.9 绘图及动画 318

8.9.1 绘图基本技术 319

8.9.2 动画基本技术 321

8.9.3 双缓冲技术 326

8.9.4 页切换技术 329

8.10 Allegro C库动画实用例程 332

8.10.1 经典排序动画程序 332

8.10.2 汉诺塔动画程序 336

习题8 339

附录A Visual C++6.0集成开发环境的安装和使用 340

A.1 Visual C++6.0集成开发环境的安装 340

A.2 VC6的使用 343

A.2.1 VC6简介 343

A.2.2 菜单栏 345

A.2.3 工具栏 346

A.2.4 在VC6中开发C程序 348

A.3 Visual C++6.0集成调试器的使用 351

A.3.1 工程配置 352

A.3.2 动态跟踪调试的一般过程 353

A.3.3 断点设置 353

A.3.4 Debugger的调试运行 357

A.3.5 Debugger的查看工具 358

附录B C语言中的关键字 364

附录C C语言运算符的优先级和结合性 366

附录D C语言常用语法提要 369

附录E ASCⅡ字符编码一览表 373

参考文献 376