010_C++程序设计-加试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖南师范大学硕士研究生入学考试自命题考试大纲考试科目代码:[] 考试科目名称:C++程序设计
一、考试形式与试卷结构
1)试卷成绩及考试时间
本试卷满分为100分,考试时间为180分钟。
2)答题方式
答题方式为闭卷、笔试。
3)试卷内容结构
(一)基本知识部分10%
(二)面向过程的程序设计部分40%
(三)面向对象的程序设计部分50%
4)题型结构
a: 单项选择题,20%
b: 填空题,20%
c: 解答题(包括编程题),60%
二、考试内容与考试要求
(一)基本知识
1、C++的初步知识
考试内容
(1)C++语言的简史及特点;
(2)简单的C++程序;
(3)C++语言的基本组成;
(4)程序的编辑、编译、连接和运行。
考试要求
(1)了解C++语言的特点和基本概念;
(2)了解简单的C++程序的构成;
(3)初步熟悉编译程序所提供的开发环境;
(4)掌握建立应用项目的方法;
(5)掌握C++程序的编辑、编译、链接和运行的过程;
2、数据类型与表达式
考试内容
(1)C++数据类型概述;
(2)整型数据、字符型数据、实型数据;
(3)常量与变量;
(4)表达式和表达式中的类型转换;
(5)运算符和表达式语句;
(6)常用函数。
考试要求
(1)掌握整型、字符型、枚举型、实型等基本数据类型的概念,熟练掌握这些类型的常量和变量的使用及其运算操作;
(2)熟练掌握关系运算符的使用和关系表达式的求值、逻辑运算符的使用和逻辑表达式的求值;
(3)了解运算符的优先级和结合性,掌握数值表达式的构造方法;
(4)掌握表达式的副作用和表达式语句。
(二)面向过程的程序设计
1、算法流程控制
考试内容
(1)控制结构(程序的结构与控制、数据的输入与输出);
(2)条件分支结构;
(3)循环结构;
(4)break、continue语句和其他控制语句。
考试要求
(1)熟练掌握数据的输入输出;
(2)熟练掌握if语句和switch语句的使用,会在程序中实现单分支或多分支控制;
(3)熟练掌握while,do...while和for这三种循环语句的结构和执行过程,会在程序中实现单重或多重循环控制,掌握continue语句和break语句的使用;
(4)掌握单重或多重循环控制语句的实际应用。
2、函数
考试内容
(1)函数的定义;
(2)函数调用;
(3)函数调用中的参数传递;
(4)内联(inline)函数;
(5)函数的重载;
(6)函数与变量的作用域;
(7)宏定义;
(8)文件包含;
(9)条件编译。
考试要求
(1)掌握函数定义的格式,掌握函数原形的概念及其与头文件的关系;
(2)掌握两种形式的函数调用(表达式中的函数调用和语句中的函数调用),掌握函数调用过程中参数传递的原理;
(3)掌握全局变量和局部变量的使用;
(4)掌握函数重载的方法;
(5)掌握保留字inline的含义与使用;
(6)了解函数和变量的作用域与生存期;
(7)掌握和应用宏定义、条件编译、文件包含。
3、数组
考试内容
(1)一维数组;
(2)二维数组;
(3)字符数组与字符串;
(4)字符串函数。
考试要求
(1)掌握数组的基本概念;
(2)熟练掌握一维数组和二维数组的使用;
(3)掌握字符数组与字符串的关系以及字符串变量的表示;(4)会分析、编写利用数组进行数据存储和处理的简单程序。
4、指针
考试内容
(1)指针的概念和指针变量的定义;
(2)指针的基本操作;
(3)指针与数组;
(4)指针与字符串;
(5)指针与函数;
(6)返回函数的指针;
(7)函数main()的参数;
(8)new 和delete操作符;
(9)引用概念与操作、引用的应用。
考试要求
(1)熟练掌握指针、地址、指针类型、void指针、空指针等概念;
(2)熟练掌握指针变量的定义和初始化、指针的间接访问、指针的加减运算和指针表达式;
(3)掌握指针与数组、函数、字符串等的联系;
(4)掌握动态空间操作;
(5)掌握引用参数的使用。
5、自定义数据类型
考试内容
(1)结构的定义;
(2)结构变量的定义与初始化;
(3)结构成员的访问操作;
(4)结构体与数组;
(5)结构与函数;
(6)结构与链表的基本操作;
(7)共用体;
(8)枚举类型;
(9)用typedef声明类型。
考试要求
(1)掌握结构的概念和结构类型的定义;
(2)掌握结构变量的定义和初始化;
(3)掌握结构成员的访问、结构赋值的含义以及结构与指针、函数的关系;
(4)掌握共用体变量的访问方式;
(5)掌握枚举类型;
(6)掌握用typedef声明类型。
(三)面向对象的程序设计
1、类与对象
考试内容
(1)类的声明和对象的定义;
(2)类的成员函数;
(3)对象成员的引用;
(4)类的封装性和信息隐蔽;
(5)构造函数与析构函数;
(6)对象数组;
(7)对象指针;
(8)共用数据的保护;
(9)对象的动态建立和释放、对象的赋值和复制;
(10)静态成员;
(11)友元;
(12)类模板。
考试要求
(1)掌握类的定义、类的成员变量和成员函数的定义和使用,以及对象的定义;
(2)掌握静态类成员变量和成员函数的定义和使用方法;
(3)掌握构造函数和析构函数;
(4)理解类的封装性和信息隐蔽;
(5)掌握对象的动态建立和释放、对象的赋值和复制;
(6)掌握对象数组的建立、对象指针的使用;
(7)了解友元函数和友元类;
(8)理解类模板的概念,掌握类模板的定义、实例化过程,掌握类模板运用。
2、运算符重载
考试内容
(1)运算符重载的概念;
(2)运算符重载的方法;
(3)重载运算符的规则;
(4)运算符重载函数作为类成员函数和友元函数;
(5)重载双目运算符;
(6)重载单目运算符;
(7)重载流插入运算符和流提取运算符;
(8)不同类型数据间的转换。
考试要求
(1)理解运算符重载的定义,掌握运算符重载的方法、规则;(2)掌握运算符重载函数作为类成员函数和友元函数;
(3)掌握重载双目运算符和重载单目运算符;
(4)了解重载流插入运算符和流提取运算符;
(5)掌握不同类型数据间的转换。
3、继承与派生
考试内容
(1)继承与派生的概念;
(2)派生类的声明方式与构成;
(3)派生类成员的访问属性;
(4)派生类的构造函数和析构函数;
(5)多重继承;
(6)基类与派生类的转换;
(7)继承与组合;
(8)继承在软件开发中的重要意义。
考试要求
(1)掌握继承与派生的概念与使用方法;
(2)掌握继承中的构造函数与析构函数的调用顺序,为派生类设计合适的构造函数初始化派生类;
(3)理解多继承的概念和编程;
(4)掌握基类与派生类的转换;
(5)理解继承与组合的区别;
(6)了解继承在软件开发中的重要意义。
4、多态性与虚函数
考试内容
(1)多态性的概念;
(2)虚函数的概念;
(3)纯虚函数与抽象类。
考试要求
(1)理解多态性的概念;
(2)掌握如何用虚函数实现动态联编,掌握如何利用虚函数;
(3)理解纯虚函数和抽象类的概念,掌握纯虚函数和抽象类的定义方法;(4)理解虚析构函数的概念和作用,掌握其声明和使用方法。
5、I/O流
考试内容
(1)C++的输入和输出;
(2)标准输入流与标准输出流;
(3)文件操作与文件流;
(4)字符串流;
(5)异常处理;
(6)命名空间。
考试要求
(1)了解C++的流,了解一般I/O流和文件流的关系;
(2)掌握格式化I/O的定义格式和定义方法;
(3)了解文件与文件流的关系,了解文件系统的概念,掌握文件类的定义和相关操作的定义、使用方法,掌握利用常用函数进行文件的打开、关闭、读写、定位等操作;
(4)掌握字符串流对象的建立和使用;
(5)掌握异常处理机制和方法;
(6)理解命名空间的作用。
三、参考书目
《C++程序设计》,谭浩强编,清华大学出版社。