C++编程:从问题分析到程序设计

C++编程:从问题分析到程序设计
作 者: Malik 钟书毅 钟书毅
出版社: 电子工业出版社
丛编项: 国外计算机科学教材系列
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: C++
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《C++编程:从问题分析到程序设计》作者简介

内容简介

本书是为C++初学者和大学计算机科学C++课程的教学而设计的,书中内容丰富并具有较强的系统性和实用性。对于有一定C或C++编程经验的读者而言,此书也是一本很有用的参考书。作者通过大量的例子深入剖析和阐述了几乎所有的关键性概念,并且给出了解决专门问题的案例研究,同时在每一章末都留有一定数量的编程练习。本书的这些特色有助于读者深入理解C++语言并提高程序设计的能力。本书循序渐进地介绍了C++程序设计的各个方面,包括C++语言的基本概念、结构化程序设计、面向对象编程以及C++的一些高级主题。在内容和结构的安排上,本书强调编程实践的重要性,许多简洁易懂的实例贯穿始终,每一章的最后饮食丰富的编程练习。此外,本书还注重对C++概念的深入理解,作者通过论述与简单实例相结合的形式,生动地阐明了C++中很多关键的概念。通过本书的系统学习,读者能够很快地掌握C++程序设计的知识并有效地提高编程技术。

图书目录

第1章 计算机和编程语言回顾

1.1 导言

1.2 计算机历史的简要回顾

1.3 计算机系统的组成

1.4 计算机语言

1.5 编程语言的发展

1.6 处理高级语言程序

1.7 分析问题-编码-执行

1.8 面向对象的编程

1.9 ANSI/ISO标准C++

1.10 小结

1.11 练习

第2章 C++的基本要素

2.1 C++程序的基础知识

2.2 数据类型

2.3 算术运算符和运算符优先级

2.4 表达式

2.5 输入

2.6 自增和自减运算符

2.7 输出

2.8 预处理器指令

2.9 编程风格和形式

2.10 赋值勤语句的更多知识

2.11 编程实例:长度转换

2.12 编程实例:找零钱

2.13 小结

2.14 练习

2.15 编程练习

第3章 输入/输出

3.1 I/O数据流和标准I/O设备

3.2 在程序中使用预定义函数

3.3 输入失败

3.4 输出和格式化输出

3.5 其他输出格式化工具

3.6 文件输入/输出

3.7 编程实例:电影票销售和对慈善机构的捐助

3.8 编程实例:学生分数

3.9 小结

3.10 练习

3.11 编程练习

第4章 控制结构I(选择结构)

4.1 控制结构

4.2 关系运算符

4.3 逻辑(布尔)运算符和逻辑表达式

4.4 选择:if和if…else

4.5 switch结构

4.6 用assert()函数来终止一个程序

4.7 编程实例:有线电视公司账单

4.8 小结

4.9 练习

4.10 编程练习

第5章 控制结构II(重复)

5.1 为什么需要重复结构

5.2 while循环(重复)结构

5.3 编程实例:检查账户余额

5.4 编程实例:斐波那契数列

5.5 for循环(重复)结构

5.6 编程实例:数字分类

5.7 do…while循环(重复)结构

5.8 break和continue语句

5.9 嵌套控制结构

5.10 小结

5.11 练习

5.12 编程练习

第6章 用户自定义函数I

6.1 标准(预定义)函数

6.2 用户定义函数

6.3 具有返回值的函数

6.4 编程实例:最大数

6.5 编程实例:有线电视公司账单问题

6.6 小结

6.7 练习

6.8 编程练习

第7章 用户自定义函数II

7.1 woid函数

7.2 值参数、引用参数和内存分配

7.3 引用参数和返回值参数

7.4 变量的范围

7.5 全局变量的副作用

7.6 静态和自动变量

7.7 函数重载:介绍

7.8 有默认参数的函数

7.9 编程实例:对数字分类

7.10 编程实例:数据比较

7.11 小结

7.12 练习

7.13 编程练习

第8章 用户定义的简单数据类型、命名空间和string类型

8.1 枚举类型

8.2 编程实例:石头、剪子和布的游戏

8.3 命名空间

8.4 string类型

8.5 编程实例:Pig Latin字符串

8.6 小结

8.7 练习

8.8 编程练习

第9章 数组和字符串

9.1 数组

9.2 C字符串(字符数数)

9.3 关联数组

9.4 编程实例:代码检测

9.5 编程实例:文本处理

9.6 小结

9.7 练习

9.8 编程练习

第10章 数组的应用和扩展

10.1 顺序表处理

10.2 二维和多维数组

10.3 多维数组

10.4 编程实例:选举结果

10.5 小结

10.6 练习

10.7 编程练习

第11章 递归

11.1 递归的定义

11.2 利用递归解决问题

11.3 递归还是迭代

11.4 编程实例:将一个数字从二进制表示转换为十进制表示

11.5 编程实例:将一个数字从十进制转换为二进制

11.6 小结

11.7 练习

11.8 编程练习

第12章 记录(结构体)

12.1 记录(结构体)

12.2 编程实例:销售数据分析

12.3 小结

12.4 练习

12.5 编程练习

第13章 类和数据抽象

13.1 类

13.2 数据抽象、类和抽象数据类型

13.3 结构体与类

13.4 信息隐藏

13.5 可执行代码

13.6 编程实例:糖果机

13.7 小结

13.8 练习

13.9 编程练习

第14章 继承和组合

14.1 继承

14.2 组合

14.3 面向对象设计(OOD)和面向对象编程(OOP)

14.4 编程实例:分数报告

14.5 小结

14.6 练习

14.7 编程练习

第15章 指针、类和虚函数

15.1 指针数据类型和指针变量

15.2 取址运算符(&)

15.3 取值运算符(*)

15.4 类、结构和指针变量

15.5 初始化指针变量

15.6 动态变量

15.7 指针变量的运算

15.8 动态数组

15.9 指针的浅(shallow)复制与深(deep)复制

15.10 类和指针:一些特性

15.11 继承、指针和虚函数

15.12 取址运算符和类

15.13 小结

15.14 练习

15.15 编程练习

第16章 重载和模板

16.1 为什么需要运算符重载

16.2 运算符重载

16.3 编程练习:clocType

16.4 编程练习:复数

16.5 重载数组索引(下标)运算符([])

16.6 编程练习:newString

16.7 函数重载

16.8 模板

16.9 小结

16.10 练习

16.11 编程练习

第17章 链表

17.1 链表

17.2 作为ADT的链表

17.3 有序链表

17.4 双向链表

17.5 编程实例:音像商店

17.6 小结

17.7 练习

17.8 编程练习

第18章 栈和队列

18.1 栈

18.2 栈的数组实现

18.3 程序实例:最大GPA

18.4 栈的链表实现

18.5 栈的应用:后缀表达式计算器

18.6 消除递归:非递归逆序打印链表的算法

18.7 队列

18.8 队列的应用:仿真

18.9 小结

18.10 练习

18.11 编程练习

附录A 保留字

附录B 运算符的优先级

附录C 字符集

附录D 运算符重载

附录E 在ANSI/ISO标准C++和标准C++中头文件的名称约定

附录F 头文件

附录G 系统中数据类型的内存尺寸

附录H 部分练习答案