程序设计基础(21世纪本科教材)

程序设计基础(21世纪本科教材)
作 者: 石峰
出版社: 清华大学出版社
丛编项: 21世纪大学本科计算机专业系列教材
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《程序设计基础(21世纪本科教材)》作者简介

内容简介

本书从程序设计的一般过程与方法出发,以C++语言为媒介,重点讲述结构化程序设计与面向对象程序设计的基础知识。本书集算法分析与设计、面向对象分析与设计、软件工程基础、C++语言编程等多方面知识于一身,详细分析了产生相关理论与技术的起因,力求使读者不但知其然,而且知其所以然,因此本书适合作为程序设计的基础教程。在编著风格上,本书从分析人类解决问题的思维过程为开端,介绍计算机的问题求解过程和方式;从人类认识世界的规律和方法入手,讲解面向对象技术理论和方法;通过对比,使读者加深对所有学知识更新的理解和掌握。本书是在作者多年教学工作的基础上,结合国内外多部优秀教材,通过深入分析、提炼和加工而成,适合作为计算机及相关专业的教材,也可供从事软件开发和应用的广大科技人员参考。

图书目录

第1章 程序设计概论

1. 1 问题求解

1. 1. 1 思维与语言

1. 1. 2 算法

1. 1. 3 数据结构

1. 1. 4 程序

1. 1. 5 程序设计的一般过程

1. 2 程序设计语言

1. 2. 1 发展历史

1. 2. 2 程序设计语言的实现

1. 2. 3 高级语言程序的基本结构

1. 2. 4 高级语言的语法规则

1. 2. 5 程序的编辑. 编浑和运行

1. 3 程序设计范式的演化

1. 3. 1 结构化程序设计

1. 3. 2 函数式程序设计

1. 3. 3 面向对象程序设计

1. 3. 4 事件驱动的程序设计

1. 3. 5 逻辑式程序设计

习题

第2章 算法设计基础

2. 1 算法的描述

2. 1. 1 自然语言方式

2. 1. 2 伪代码方式

2. 1. 3 程序流程图方式

2. 1. 4 N/S盒图方式

2. 1. 5 PAD图方式

2. 2 结构化算法设计初步

2. 2. 1 算法描述

2. 2. 2 算法设计

2. 3 算法的计算复杂性

2. 4 常用算法设计策略

2. 4. 1 分治法

2. 4. 2 递归技术

2. 4. 3 贪心法

2. 4. 4 回溯法

习题

第3章 基本数据类型

3. 1 数据对象

3. 1. 1 数据的存储

3. 1. 2 生存期与值

3. 2 基本数据类型

3. 2. 1 整型与浮点型

3. 2. 2 字符类型

3. 2. 3 逻辑型

3. 2. 4 空值型

3. 3 变量与常量

3. 3. 1 常量

3. 3. 2 变量

3. 4 指针类型

3. 4. 1 指针定义

3. 4. 2 指针的初始化

3. 4. 3 指针运算

3. 4. 4 指针与常量

3. 5 引用类型

3. 6 类型的意义

习题

第4章 操作及其控制

4. 1 基本操作与运算符

4. 1. 1 赋值操作

4. 1. 2 算术操作

4. 1. 3 增1和减1操作

4. 1. 4 关系. 逻辑操作

4. 1. 5 条件运算符

4. 2 表达式

4. 2. 1 隐含类型转换

4. 2. 2 强制类型转换

4. 2. 3 表达式内的顺序控制

4. 2. 4 运算符的优先级

4. 2. 5 运算符的结合性

4. 3 语句

4. 3. 1 表达式语句

4. 3. 2 语句间顺序控制

4. 3. 3 复合语句

4. 3. 4 选择语句

4. 3. 5 循环语句

4. 3. 6 直接顺序控制

4. 4 预处理指令

4. 4. 1 文件包含指令

4. 4. 2 宏定义指令

4. 4. 3 条件编译指令

习题

第5章 函数与数据控制

5. 1 函数定义与说明

5. 1. 1 函数定义

5. 1. 2 函数说明

5. 1. 3 函数的简单调用

5. 1. 4 函数的重载

5. 2 数据控制

5. 2. 1 参数传递机制

5. 2. 2 数据对象的引用''

5. 2. 3 作用域

5. 3 函数的顺序控制

5. 3. 1 函数执行模型

5. 3. 2 基于栈的实现

5. 3. 3 函数的自嵌套调用

5. 4 相关的其他语法

5. 4. 1 数组作函数参数

5. 4. 2 函数指针

5. 5 常用系统函数

5. 5. 1 终止程序运行

5. 5. 2 数学函数

5. 5. 3 字符串处理函数

5. 5. 4 面向对象的数据结构

习题

第6章 构造类型

6. 1 数组类型

6. 1. 1 数组定义

6. 1. 2 数组的赋值与使用

6. 1. 3 数组的存储

6. 1. 4 数组的初始化

6. 1. 5 字符数组

6. 1. 6 指针与数组

6. 2 枚举类型

6. 2. 1 枚举类型定义

6. 2. 2 枚举变量定义

6. 2. 3 类型转换

6. 3 结构类型

6. 3. 1 结构的定义

6. 3. 2 结构的使用

6. 3. 3 结构的实现

6. 4 结构化数据

6. 4. 1 单链表

6. 4. 2 栈

6. 4. 3 存储的动态分配

6. 5 抽象数据类型

6. 5. 1 结构的扩展

6. 5. 2 C 的抽象数据类型

6. 5. 3 C 数据类型的层次

6. 6 自定义类型

习题

第7章 结构化算法的实现

7. 1 基本控制结构的C 实现

7. 1. 1 顺序结构的C 实现

7. 1. 2 分支结构的C 实现

7. 1. 3 循环结构的C 实现

7. 1. 4 复杂结构的C 实现示例

7. 2 子算法设计与C 实现

7. 2. 1 参数为普通类型的子算法

7. 2. 2 参数为指针的子算法

7. 2. 3 参数为引用的子算法

7. 2. 4 子算法设计与C 实现示例

7. 3 递归与迭代

7. 3. 1 递归

7. 3. 2 迭代

7. 3. 3 应用示例

习题

第8章 程序开发过程

8. 1 软件开发方法概述

8. 1. 1 软件生存周期

8. 1. 2 软件开发方法

8. 2 软件设计

8. 2. 1 概要设计

8. 2. 2 详细设计

8. 3 软件编码

8. 3. 1 程序设计方法

8. 3. 2 程序设计语言

8. 3. 3 编码风格

8. 4 软件测试与调试

8. 4. 1 调试工具及使用

8. 4. 2 调试过程

8. 4. 3 错误类型

8. 4. 4 异常处理

8. 4. 5 软件测试

8. 5 程序运行效率

8. 5. 1 适当的算法

8. 5. 2 选择快速运算

8. 5. 3 函数

习题

第9章 面向对象程序设计

9. 1 面向对象方法学

9. 1. 1 人类认知规律

9. 1. 2 面向对象基本原理

9. 1. 3 认知规律与面向对象

9. 1. 4 面向对象软件开发

9. 2 基本概念

9. 2. 1 对象

9. 2. 2 类

9. 2. 3 结构与关系

9. 3 面向对象分析

9. 3. 1 主要原则

9. 3. 2 静态结构分析与对象模型

9. 3. 3 动态行为分析

9. 4 面向对象设计

习题

第10章 类与对象的实现

10. 1 C 中的类

10. 1. 1 类的说明

10. 1. 2 类的定义

10. 2 对象及其成员的使用

10. 2. 1 对象实例

10. 2. 2 对象成员的引用

10. 2. 3 生命周期

10. 2. 4 类型转换

10. 2. 5 其他应用

10. 3 类的特殊成员

10. 3. 1 静态成员

10. 3. 2 const成员

10. 3. 3 内联函数

10. 3. 4 友元

习题

第11章 类间关系的实现

11. 1 一般-特殊关系的实现

11. 1. 1 类的继承与派生

11. 1. 2 赋值兼容规则

11. 1. 3 两义性与作用域分辨

11. 2 多态性与虚函数

11. 2. 1 编译时刻的多态性

11. 2. 2 运行时刻的多态性

11. 2. 3 虚函数

11. 2. 4 纯虚函数与抽象类

11. 3 整体-部分关系的实现

11. 4 关联关系的实现

11. 5 关于类层次的总结

11. 5. 1 认知规律与类层次

11. 5. 2 构造函数的一般形式

11. 5. 3 成员函数的特征

习题

第12章 面向对象程序设计的其他技术

12. 1 运算符重载

12. 1. 1 友元运算符

12. 1. 2 类运算符

12. 1. 3 友元及类运算符的应用

12. 1. 4

和--运算符的重载

12. 2 流类库

12. 2. 1 格式化输入输出

12. 2. 2 运算符<<和>>的重载

12. 2. 3 流式文件

12. 2. 4 流错误

12. 3 模板

12. 3. 1 函数模板

12. 3. 2 类模板

12. 3. 3 模板应用实例

习题

附录A Microson C 的保留字

附录B C 中的基本数据类型

附录C 扩展ASCII字符集

附录D C 的运算符

词汇索引

参考文献