C++是一种高效实用的程序设计语言,用它既可以进行结构化程序设计,又可以进行面向对象程序设计。本书将C++作为学习程序设计语言的入门语言,在系统介绍c语言本身的基础上,介绍了常用的数据结构和算法。本书依据作者多年教学经验写成,书中列举有大量实例,将复杂的概念用简洁浅显的语言来描述,力求深入浅出。本书配有相应的《c++程序设计语言经典题解与实验指导》,其中除了收集大量习题之外,还根据教学大纲,为每章配备有相应的上机实验内容,既方便教师安排教学,又便于读者上机实习。\r\n 本书适合作为高等学校计算机专业和非计算机专业程序设计课程的教材,也可供自学者使用。\r\n 为方便教学,本书配有电子教案,任课教师可与西安电子科技大学出版社联系,免费索取
第1章 c++简单程序设计\r\n 1.1 c++语言概述\r\n 1.1.1 从C至UC++\r\n 1.1.2 一个简单的C++程序\r\n 1.1.3 字符集\r\n 1.1.4 词法记号\r\n 1.2 基本数据类型和表达式\r\n 1.2.1 基本数据类型\r\n 1.2.2 常量\r\n 1.2.3 变量\r\n 1.2.4 引用\r\n 1.2.5 运算符与表达式\r\n 1.2.6 数据类型转换\r\n 1.3 数据的输入与输出\r\n 1.3.1 I/0的书写格式\r\n 1.1.2 简单的I/0格式控制\r\n 1.4 程序的基本控制结构\r\n 1.4.1 简单选择结构\r\n 1.4.2 多重选择结构\r\n 1.4.3 循环结构\r\n 1.4.4 循环结构的嵌套\r\n 1.4.5 其它控制语句\r\n 习题\r\n第2章 函数\r\n 2.1 函数的定义与使用\r\n 2.1.1 函数的定义\r\n 2.1.2 函数的调用\r\n 2.1.3 函数的参数传递\r\n 2.2 函数调用机制\r\n 2.3 递归函数\r\n 2.4 默认参数的函数\r\n 2.5 内联函数\r\n 2.6 函数重载\r\n 2.7 函数模板\r\n 2.8 使用C++系统函数\r\n 习题\r\n第3章 数组\r\n 3.1 数组的基本概念\r\n 3.2 一维数组\r\n 3.2.1 一维数组的声明\r\n 3.2.2 一维数组中的元素访问\r\n 3.2.3 一维数组的初始化\r\n 3.3 多维数组\r\n 3.3.1 多维数组的声明\r\n 3.3.2 访问多维数组中的元素\r\n 3.3.3 二维数组的初始化\r\n 3.4 数组作为函数的参数\r\n 3.5 数组与字符串\r\n 3.5.1 字符数组\r\n 3.5.2 字符串的基本运算\r\n 3.6 数组应用举例\r\n 3.6.1 排序\r\n 3.6.2 查找\r\n 3.6.3 统计\r\n 3.6.4 字符处理\r\n 3.7 构造数据类型\r\n 3.7.1 结构体\r\n 3.7.2 共用体\r\n 3.7.3 枚举类型\r\n 3.7.4 类型自定义语句\r\n 习题\r\n第4章 类和对象\r\n 4.1 面向对象的思想\r\n 4.1.1 结构化程序设计\r\n……\r\n第5章 程序结构\r\n第6章 指针与字符串\r\n第7章 继承与派生\r\n第8章 多态性\r\n第9章 流类库与输入/输出\r\n第10章 异常处理\r\n第11章 Visual C++环境下的Windows程序开发概述\r\n参考文献
随着计算机科学的发展,计算机技术已渗透到各学科的研究和应用之中,C语言被广泛地应用于各专业的科研开发。C++语言是从C语言发展演变而来的一种面向对象的程序设计语言。C++全面兼容了C,同时提供了比C更严格、更安全的语法。从这个意义上讲,C++首先是一个更好的C。
面向对象的程序设计(OOP)方法将数据及对数据的操作方法封装在一起,作为一个相互依存、不可分离的整体——对象。对同类型对象抽象出其共性,形成类。类中的大多数数据只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。这样,程序模块间的关系简单,程序模块的独立性、数据的安全性具有良好的保障。同时,通过继承与多态性,使程序具有很高的可重用性,软件的开发和维护都更为方便。由于面向对象方法的突出优点,目前它已经成为开发大型软件时所采用的主要方法,而C++语言是面向对象的程序设计语言中应用最广泛的一种。
面向对象方法的出现,实际上是程序设计方法发展的一个返璞归真的过程。从本质上讲,软件开发就是对软件所要处理的问题域进行正确的认识,并把这种认识正确地描述出来。面向对象方法所强调的基本原则就是直接面对客观存在的事物来进行软件开发,将人们在日常生活中习惯的思维方式和表达方式应用在软件开发中,使软件开发从过分专业化的方法、规则和技巧中回到客观世界,回到人们通常的思维。
虽然C++语言是从C语言发展而来的,但是C++本身也是一个完整的程序设计语言,而且它与C语言的程序设计思想完全不同。因此,我们认为C++语言可以作为程序设计的入门语言来学习。
本书将C++作为学习程序设计语言的入门语言,不仅详细介绍了语言本身,而且还介绍了常用的数据结构和算法。全书以面向对象的程序设计方法贯穿始终,从面向对象的理论到面向对象的实现,力求使读者在掌握基本程序设计方法的同时,牢固树立面向对象的编程思想,为其它后续课程的学习打下坚实的基础,以适应当前软件发展的需要。本书在讲解语法时,着重从程序设计方法学的角度讲述其意义和用途。本书的宗旨是,不仅要使读者掌握C++语言本身,而且能够对现实世界中较简单的问题及其解决方法用面向对象的语言进行描述。当然,要达到能够描述较复杂问题域的水平,还需要学习其它相关的课程。
针对初学者的特点,本书力求做到深入浅出,将复杂的概念用简洁浅显的语言来讲述,使读者可以轻松地入门,循序渐进地提高。
本书依据作者多年教学经验写成,对每一部分的知识点和难点,都力求以比较精练的语言进行讲解。同时,对每一个知识点都列举了必要的例题,并对例题进行了比较深刻的分析。为了帮助读者更好地使用本教材,本书配有相应的《C++程序设计语言经典题解与实验指导》,其中除了收集有大量典型例题和习题之外,还为每章配备有相应的上机实验内容,教师可以依此安排教学和上机实验。
本书适合作为高等学校计算机专业和非计算机专业程序设计课程的教材,也可供自学者使用。本书的建议教学学时为40学时,上机实验学时为20学时。
本书的第1章由长安大学的郭兰英编写,第2章由长安大学的汤娟编写,第3章和第6章由西安科技学院的李军民编写,第4章由西安工程科技学院的牟莉编写,第9章由长安大学的赵彦峰编写,第5章、第7章、第8章、第10章和第11章由长安大学的揣锦华编写。西安石油学院的朱战立老师为本书的审稿人。在本书的编写过程中,查阅和参考了部分文献,在此对书后所列出的参考文献的作者表示感谢。由于作者水平有限,书中难免有不足和错误,恳请读者批评指正。