本书循序渐近地介绍了C++程序设计的各个方面,包括C++语言的基本概念、结构化程序设计、面向对象编程以及C++的一些高级主题。在内容和结构的安排上,本书强调编程实践的重要性,许多简洁易懂的实例贯穿始终,每一章的最后包含丰富的编程练习。此外,本书还注重对C++概念的深入理解,作者通过论述与简单实例相结合的形式,生动地阐明了C++中很多关键的概念。通过本书的系统学习,读者能够很快地掌握C++程序设计的知识并有效地提高编程技术。\r\n 本书适合作为大计算机科学C++课程的教材。也可供教师、学生或程序开发人员用做参考书。
第1章 计算机和编程语言回顾\r\n\r\n1.1 导言\r\n1.2 计算机历史的简要回顾\r\n1.3 计算机系统的组成\r\n1.4 计算机语言\r\n1.5 编程语言的发展\r\n1.6 处理高级语言程序\r\n1.7 分析问题-编码-执行\r\n1.8 面向对象的编程\r\n1.9 ANSI/ISO标准C++\r\n1.10 小结\r\n1.11 练习\r\n\r\n第2章 C++的基本要素\r\n\r\n2.1 C++程序的基础知识\r\n2.2 数据类型\r\n2.3 算术运算符和运算符优先级\r\n2.4 表达式\r\n2.5 输入\r\n2.6 自增和自减运算符\r\n2.7 输出\r\n2.8 预处理器指令\r\n2.9 编程风格和形式\r\n2.10 赋值勤语句的更多知识\r\n2.11 编程实例:长度转换\r\n2.12 编程实例:找零钱\r\n2.13 小结\r\n2.14 练习\r\n2.15 编程练习\r\n\r\n第3章 输入/输出\r\n\r\n3.1 I/O数据流和标准I/O设备\r\n3.2 在程序中使用预定义函数\r\n3.3 输入失败\r\n3.4 输出和格式化输出\r\n3.5 其他输出格式化工具\r\n3.6 文件输入/输出\r\n3.7 编程实例:电影票销售和对慈善机构的捐助\r\n3.8 编程实例:学生分数\r\n3.9 小结\r\n3.10 练习\r\n3.11 编程练习\r\n\r\n第4章 控制结构I(选择结构)\r\n\r\n4.1 控制结构\r\n4.2 关系运算符\r\n4.3 逻辑(布尔)运算符和逻辑表达式\r\n4.4 选择:if和if…else\r\n4.5 switch结构\r\n4.6 用assert()函数来终止一个程序\r\n4.7 编程实例:有线电视公司账单\r\n4.8 小结\r\n4.9 练习\r\n4.10 编程练习\r\n\r\n第5章 控制结构II(重复)\r\n\r\n5.1 为什么需要重复结构\r\n5.2 while循环(重复)结构\r\n5.3 编程实例:检查账户余额\r\n5.4 编程实例:斐波那契数列\r\n5.5 for循环(重复)结构\r\n5.6 编程实例:数字分类\r\n5.7 do…while循环(重复)结构\r\n5.8 break和continue语句\r\n5.9 嵌套控制结构\r\n5.10 小结\r\n5.11 练习\r\n5.12 编程练习\r\n\r\n第6章 用户自定义函数I\r\n\r\n6.1 标准(预定义)函数\r\n6.2 用户定义函数\r\n6.3 具有返回值的函数\r\n6.4 编程实例:最大数\r\n6.5 编程实例:有线电视公司账单问题\r\n6.6 小结\r\n6.7 练习\r\n6.8 编程练习\r\n\r\n第7章 用户自定义函数II\r\n\r\n7.1 woid函数\r\n7.2 值参数、引用参数和内存分配\r\n7.3 引用参数和返回值参数\r\n7.4 变量的范围\r\n7.5 全局变量的副作用\r\n7.6 静态和自动变量\r\n7.7 函数重载:介绍\r\n7.8 有默认参数的函数\r\n7.9 编程实例:对数字分类\r\n7.10 编程实例:数据比较\r\n7.11 小结\r\n7.12 练习\r\n7.13 编程练习\r\n\r\n第8章 用户定义的简单数据类型、命名空间和string类型\r\n\r\n8.1 枚举类型\r\n8.2 编程实例:石头、剪子和布的游戏\r\n8.3 命名空间\r\n8.4 string类型\r\n8.5 编程实例:Pig Latin字符串\r\n8.6 小结\r\n8.7 练习\r\n8.8 编程练习\r\n\r\n第9章 数组和字符串\r\n\r\n9.1 数组\r\n9.2 C字符串(字符数数)\r\n9.3 关联数组\r\n9.4 编程实例:代码检测\r\n9.5 编程实例:文本处理\r\n9.6 小结\r\n9.7 练习\r\n9.8 编程练习\r\n\r\n第10章 数组的应用和扩展\r\n\r\n10.1 顺序表处理\r\n10.2 二维和多维数组\r\n10.3 多维数组\r\n10.4 编程实例:选举结果\r\n10.5 小结\r\n10.6 练习\r\n10.7 编程练习\r\n\r\n第11章 递归\r\n\r\n11.1 递归的定义\r\n11.2 利用递归解决问题\r\n11.3 递归还是迭代\r\n11.4 编程实例:将一个数字从二进制表示转换为十进制表示\r\n11.5 编程实例:将一个数字从十进制转换为二进制\r\n11.6 小结\r\n11.7 练习\r\n11.8 编程练习\r\n\r\n第12章 记录(结构体)\r\n \r\n12.1 记录(结构体)\r\n12.2 编程实例:销售数据分析\r\n12.3 小结\r\n12.4 练习\r\n12.5 编程练习\r\n\r\n第13章 类和数据抽象\r\n\r\n13.1 类\r\n13.2 数据抽象、类和抽象数据类型\r\n13.3 结构体与类\r\n13.4 信息隐藏\r\n13.5 可执行代码\r\n13.6 编程实例:糖果机\r\n13.7 小结\r\n13.8 练习\r\n13.9 编程练习\r\n\r\n第14章 继承和组合\r\n\r\n14.1 继承\r\n14.2 组合\r\n14.3 面向对象设计(OOD)和面向对象编程(OOP)\r\n14.4 编程实例:分数报告\r\n14.5 小结\r\n14.6 练习\r\n14.7 编程练习\r\n\r\n第15章 指针、类和虚函数\r\n\r\n15.1 指针数据类型和指针变量\r\n15.2 取址运算符(&)\r\n15.3 取值运算符(*)\r\n15.4 类、结构和指针变量\r\n15.5 初始化指针变量\r\n15.6 动态变量\r\n15.7 指针变量的运算\r\n15.8 动态数组\r\n15.9 指针的浅(shallow)复制与深(deep)复制\r\n15.10 类和指针:一些特性\r\n15.11 继承、指针和虚函数\r\n15.12 取址运算符和类\r\n15.13 小结\r\n15.14 练习\r\n15.15 编程练习\r\n\r\n第16章 重载和模板\r\n\r\n16.1 为什么需要运算符重载\r\n16.2 运算符重载\r\n16.3 编程练习:clocType\r\n16.4 编程练习:复数\r\n16.5 重载数组索引(下标)运算符([])\r\n16.6 编程练习:newString\r\n16.7 函数重载\r\n16.8 模板\r\n16.9 小结\r\n16.10 练习\r\n16.11 编程练习\r\n\r\n第17章 链表\r\n\r\n17.1 链表\r\n17.2 作为ADT的链表\r\n17.3 有序链表\r\n17.4 双向链表\r\n17.5 编程实例:音像商店\r\n17.6 小结\r\n17.7 练习\r\n17.8 编程练习\r\n\r\n第18章 栈和队列\r\n\r\n18.1 栈\r\n18.2 栈的数组实现\r\n18.3 程序实例:最大GPA\r\n18.4 栈的链表实现\r\n18.5 栈的应用:后缀表达式计算器\r\n18.6 消除递归:非递归逆序打印链表的算法\r\n18.7 队列\r\n18.8 队列的应用:仿真\r\n18.9 小结\r\n18.10 练习\r\n18.11 编程练习\r\n\r\n附录A 保留字\r\n附录B 运算符的优先级\r\n附录C 字符集\r\n附录D 运算符重载\r\n附录E 在ANSI/ISO标准C++和标准C++中头文件的名称约定\r\n附录F 头文件\r\n附录G 系统中数据类型的内存尺寸\r\n附录H 部分练习答案