- 全国计算机等级考试考点精讲与精练——二级C++语言程序设计 本书依据全国计算机等级考试最新大纲,结合数套真题对重要考点进行精讲精练。一方面,选取经典考题进行深入剖析;另一方面,配有同步练习和模拟试题,帮助读者详尽透析考试中的所有知识点。
《二级C++语言程序设计》依据全国计算机等级考试的最新大纲,结合数套真题对重要考点进行精讲精练。一方面,选取经典考题进行深入剖析;另一方面,配有同步练习和模拟试题,帮助读者详尽透析考试中的所有知识点。
系列名:21世纪高等院校计算机应用规划教材 作者:汪燕 编辑:吴宜锴100/单宁0 ISBN:978-7-305-17449-0 出版时间:201609 字数:300 定价:43.00 开本:16开 页数:240 装订:平装 版次:1 CIP分类号:TP312.8
本书依据全国计算机等级考试最新大纲,结合数套真题对重要考点进行精讲精练。一方面,选取经典考题进行深入剖析;另一方面,配有同步练习和模拟试题,帮助读者详尽透析考试中的所有知识点。
《二级C++语言程序设计》依据全国计算机等级考试的最新大纲,结合数套真题对重要考点进行精讲精练。一方面,选取经典考题进行深入剖析;另一方面,配有同步练习和模拟试题,帮助读者详尽透析考试中的所有知识点。
目录
目录 第一部分公共基础知识 第1章数据结构与算法1 1.1算法1 ★考点1算法的基本概念1 1.1.1算法的基本概念1 ★考点2算法复杂度2 1.1.2算法复杂度2 1.2数据结构的基本概念2 考点3数据结构的定义2 1.2.1什么是数据结构2 1.2.2数据结构的图形表示3 考点4线性结构与非线性结构4 1.2.3线性结构与非线性结构4 1.3线性表及其顺序存储结构4 1.3.1线性表的基本概念4 1.3.2线性表的顺序存储结构4 1.4栈和队列5 ★考点5栈及其基本运算5 1.4.1栈及其基本运算5 1.4.2队列及其基本运算5 1.5线性链表6 考点6线性链表的基本概念6 1.5.1线性链表的基本概念6 1.5.2线性链表的基本运算7 1.5.3循环链表及其基本运算7 1.6树与二叉树7 ★考点7树与二叉树及其基本性质7 1.6.1树的基本概念7 1.6.2二叉树及其基本性质7 1.6.3二叉树的存储结构9 考点8二叉树的遍历9 1.6.4二叉树的遍历9 1.7查找技术10 考点9顺序查找10 1.7.1顺序查找10 考点10二分法查找10 1.7.2二分法查找10 1.8排序技术10 考点11交换类排序法10 1.8.1交换类排序法10 1.8.2插入类排序法11 1.8.3选择类排序法11 1.9经典题解12 1.10同步练习16 1.11参考答案18 第2章程序设计基础19 2.1程序设计方法与风格19 2.2结构化程序设计19 考点1结构化程序设计的原则19 2.2.1结构化程序设计的原则19 2.2.2结构化程序的基本结构与特点19 2.2.3结构化程序设计原则和方法的应用20 2.3面向对象的程序设计20 2.3.1关于面向对象方法20 ★考点2面向对象方法的基本概念20 2.3.2面向对象方法的基本概念20 2.4经典题解21 2.5同步练习22 2.6参考答案22 第3章软件工程基础23 3.1软件工程与软件生命周期23 ★考点1软件定义与软件特点23 3.1.1软件定义与软件特点23 3.1.2软件危机与软件工程24 考点2软件工程过程与软件生命周期24 3.1.3软件工程过程与软件生命周期24 3.1.4软件工程的目标与原则25 3.1.5软件开发工具与软件开发环境25 3.2结构化分析方法25 3.2.1需求分析与需求分析方法25 3.2.2结构化分析方法25 3.2.3软件需求规格说明书26 3.3结构化设计方法26 ★考点3软件设计的基本概念26 3.3.1软件设计的基本概念26 3.3.2概要设计27 考点4详细设计29 3.3.3详细设计29 3.4软件测试30 ★考点5软件测试的目的30 3.4.1软件测试的目的30 3.4.2软件测试的准则30 3.4.3软件测试技术与方法综述31 考点6软件测试的实施31 3.4.4软件测试的实施31 3.5程序的调试32 ★考点7软件调试的基本概念32 3.5.1基本概念32 3.5.2软件调试方法32 3.6经典题解32 3.7同步练习35 3.8参考答案36 第4章数据库设计基础37 4.1数据库系统的基本概念37 ★考点1数据、数据库、数据库管理系统37 4.1.1数据、数据库、数据库管理系统37 考点2数据库系统的发展38 4.1.2数据库系统的发展38 考点3数据库系统的基本特点38 4.1.3数据库系统的基本特点38 考点4数据库系统的内部结构体系39 4.1.4数据库系统的内部结构体系39 4.2数据模型39 ★考点5数据模型的基本概念39 4.2.1数据模型的基本概念39 考点6ER模型39 4.2.2ER模型39 考点7层次模型40 4.2.3层次模型40 4.2.4网状模型40 ★考点8关系模型40 4.2.5关系模型40 考点9关系代数41 4.3关系代数41 4.4数据库设计与管理42 考点10数据库设计概述42 4.4.1数据库设计概述42 4.4.2数据库设计的需求分析42 4.4.3数据库概念设计42 4.4.4数据库的逻辑设计43 4.4.5数据库的物理设计43 4.4.6数据库管理43 4.5经典题解43 4.6同步练习45 4.7参考答案47 第二部分C++语言程序设计 第1章C++概述48 1.1C++语言48 考点1C++语言的发展48 考点2C++语言的特点48 考点3面向对象程序设计49 1.2C++语言的基本符号49 ★考点4C++语言的基本符号49 1.3C++语言的词汇49 ★考点5C++语言的词汇49 1.3.1关键字49 1.3.2标识符50 1.3.3字面常量50 1.3.4运算符51 1.3.5标点符号52 1.4C++程序的基本框架52 ★考点6C++程序的基本框架52 1.4.1结构化程序设计框架52 1.4.2面向对象程序设计框架52 1.5C++程序的开发过程52 考点7C++程序的开发过程52 1.6经典题解53 1.7同步练习53 1.8参考答案53 第2章数据类型、运算符和表达式54 2.1C++语言的数据类型54 ★考点1C++的数据类型54 2.1.1基本类型55 2.1.2基本类型的派生类型55 2.2常量55 考点2常量定义55 2.2.1逻辑常量55 2.2.2字符常量56 2.2.3整型常量56 2.2.4实型常量57 2.2.5枚举常量57 2.3变量57 ★考点3变量定义与使用方法57 2.3.1变量的定义57 2.3.2变量的使用方式58 2.3.3常变量和符号常量58 2.4运算符和表达式58 2.4.1运算符和表达式的概念58 ★考点4运算符的种类、运算优先级和结合性59 2.4.2运算类型与运算符59 2.4.3赋值运算59 2.4.4算术运算符和算术表达式60 2.4.5关系运算符和关系表达式61 2.4.6逻辑运算符和逻辑表达式61 2.4.7位运算61 2.4.8其他运算61 2.4.9优先级和结合性62 2.5经典题解63 2.6同步练习64 2.7参考答案65 第3章C++基本语句与控制结构66 3.1C++语句66 考点1C++的基本语句66 3.2顺序结构67 3.2.1声明语句67 3.2.2表达式语句68 3.2.3基本输入输出68 3.2.4复合语句和空语句71 3.3选择结构71 ★考点2用if语句实现分支结构71 3.3.1if语句71 ★考点3用switch语句实现多分支选择结构73 3.3.2switch语句73 3.4循环结构73 ★考点4用for语句实现循环结构74 3.4.1for语句74 ★考点5用while语句实现循环结构74 3.4.2while语句74 ★考点6用do...while语句实现循环结构75 3.4.3do while语句75 考点7分支语句和循环语句的各种嵌套使用75 3.4.4循环的嵌套75 3.5跳转语句75 考点8转向语句(goto,continue,break和return)75 3.5.1break语句75 3.5.2continue语句76 3.5.3return语句76 3.5.4goto语句76 3.6经典题解76 3.7同步练习81 3.8参考答案83 第4章数组、指针与引用84 4.1数组84 ★考点1一维数组的定义、初始化和访问84 4.1.1一维数组84 ★考点2二维数组的定义、初始化和访问85 4.1.2二维数组85 ★考点3字符串与字符数组86 4.1.3字符数组86 ★考点4常用字符串函数87 4.2指针88 ★考点5指针88 4.2.1指针和地址88 4.2.2指针和数组89 4.2.3指针数组和函数指针89 4.3引用90 考点6引用90 4.4动态存储分配90 ※4.5链表91 4.5.1链表的概念91 4.5.2链表类型的定义91 4.5.3单链表的常见操作92 4.6经典题解95 4.7同步练习99 4.8参考答案102 第5章函数103 5.1函数定义104 ★考点1函数的定义方法104 5.2函数调用104 ★考点2函数的调用方法104 5.3函数原型105 5.4函数返回类型105 考点3函数的类型和返回值105 5.5函数参数105 ★考点4参数的传递方式与默认参数105 5.5.1参数的传递方式105 5.5.2默认参数106 5.6函数重载107 ★考点5函数重载107 5.7内联函数107 考点6内联函数107 5.8递归函数108 ★考点7递归函数108 5.9变量的生存周期108 考点8变量的作用域和生存周期108 5.9.1变量的作用域108 5.9.2变量的生存周期109 5.9.3变量的存储类型110 ※5.10编译预处理110 5.10.1文件包含110 5.10.2宏定义111 5.10.3条件编译111 5.11经典题解111 5.12同步练习115 5.13参考答案120 第6章类和对象121 6.1类的定义121 ★考点1类的定义与类成员的访问121 6.1.1类的定义121 6.1.2类成员的访问控制122 6.1.3类的数据成员122 6.1.4类的成员函数122 6.2对象的定义123 ★考点2对象的定义123 6.2.1对象的定义123 6.2.2对象的成员123 6.3构造函数和析构函数124 ★考点3构造函数和析构函数124 6.3.1构造函数和析构函数的定义124 6.3.2默认构造函数和默认析构函数127 6.3.3拷贝构造函数127 6.4自由存储对象128 6.5this指针128 ★考点4this指针128 6.6静态成员129 考点5静态数据成员和静态成员函数129 6.6.1静态数据成员129 6.6.2静态成员函数129 6.7常成员129 ★考点6常对象与常成员函数129 6.7.1常对象129 6.7.2常数据成员130 6.7.3常成员函数130 6.8友元130 考点7友元函数和友元类130 6.8.1友元函数130 6.8.2友元类131 6.9对象数组131 考点8对象数组131 6.10成员对象132 考点9成员对象132 6.11经典题解132 6.12同步练习143 6.13参考答案151 第7章继承和派生152 7.1继承与派生152 7.1.1基本概念152 ★考点1派生类的定义和访问权限152 7.1.2派生类的定义与构成152 7.2派生类对基类成员的访问153 ★考点2继承基类的数据成员与成员函数153 7.3派生类的构造函数和析构函数153 7.3.1派生类的构造函数153 7.3.2派生类的析构函数154 7.4多继承与虚基类154 考点3虚基类154 7.4.1多继承中的二义性问题154 7.4.2虚基类的定义154 7.4.3虚基类的构造函数155 ※7.5子类型关系155 7.6虚函数与多态性156 考点4虚函数156 7.6.1多态性的概念156 7.6.2虚函数156 ★考点5基类指针与派生类指针的使用157 7.6.3虚析构函数157 考点6纯虚函数与抽象类157 7.6.4纯虚函数与抽象类157 7.7经典题解157 7.8同步练习170 7.9参考答案179 第8章运算符重载180 8.1运算符函数与运算符重载180 考点1运算符重载180 8.1.1运算符重载的概念180 8.1.2运算符重载的形式180 8.2典型运算符的重载181 8.2.1关于分数类fraction181 8.2.2重载取负运算符“-”181 8.2.3重载加法运算符“+”182 8.2.4重载增量运算符“++”182 8.2.5重载类型转换符“long”182 8.2.6重载赋值运算符“=”182 8.2.7重载复合赋值运算符“+=”182 8.2.8重载关系运算符“>”183 8.2.9重载下标访问运算符“[ ]”183 8.2.10重载流运算符“>>”和“<<”183 8.3运算符重载应注意的几个问题183 8.4经典题解183 8.5同步练习186 8.6参考答案189 第9章模板190 9.1函数模板190 考点1函数模板的定义和使用方式190 9.2类模板191 考点2类模板的定义和使用方式191 9.3经典题解192 9.4同步练习195 9.5参考答案197 第10章C++流198 10.1C++流的概念198 考点1C++流的概念198 10.1.1C++流的体系结构198 10.1.2预定义流对象199 10.1.3提取运算符“>>”和插入运算符“<<”199 10.1.4有格式输入输出和无格式输入输出200 10.1.5操作符200 10.2输入输出的格式控制200 考点2输入输出的格式控制200 10.2.1默认的输入输出格式200 10.2.2格式标志与格式控制201 10.2.3输入输出宽度的控制201 10.2.4浮点数输出方式的控制202 10.2.5输出精度的控制202 10.2.6对齐方式的控制202 10.2.7小数点处理方式的控制202 10.2.8填充字符的控制203 10.2.9插入换行符203 10.2.10输入输出数制状态的控制203 10.3文件流203 考点3文件的I/O操作203 10.3.1文件流的建立204 10.3.2文件流的关闭205 10.3.3文件流状态的判别205 10.3.4文件流的定位205 10.3.5有格式输入输出205 ※10.3.6无格式输入输出205 10.4经典题解207 10.5同步练习209 10.6参考答案211 第三部分C++典型算法程序 算法1求最大值、最小值和平均值212 算法2累加和累乘213 算法3判断某数为素数215 算法4判断某数为完全数215 算法5排序218 算法6查找220 算法7求最大公约数222 算法8整数的各位分离223 算法9数组元素逆置224 算法10数组元素按列前移和后移225 算法11矩阵的转置226 算法12大小写字母转换228 算法13统计单词个数229 算法14删除字符串中的空格229 算法15判断子串230 算法16字符串合并230 算法17将数字字符移至字符串前部232 算法18从字符串中提取数字字符拼成整数234 第四部分二级C++真题与模拟 真题库试题第1套235 真题库试题第2套247 真题库试题第3套258 真题库试题第1套答案分析270 真题库试题第2套答案分析274 真题库试题第3套答案分析278 参考文献283