《2022年C面向对象程序设计方案模拟试题五.docx》由会员分享,可在线阅读,更多相关《2022年C面向对象程序设计方案模拟试题五.docx(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品学习资源C+ 面对对象程序设计模拟试卷五一、单项选择题(本大题共15 小题,每道题 2 分,共 30 分)在每道题列出的四个备选项中,只有一个是苻合题目要求的;请将其代码填写在题后的括号内;错选,多项或未选均无分;1. 以下对类的构造函数和析构函数描述正确选项(a);A) 构造函数可以重载,析构函数不能重载B) 构造函数不能重载,析构函数可以重载C) 构造函数可以重载,析构函数可以重载D) 构造函数不能重载,析构函数不能重载2. 在函数定义前加上关键字“inline ”,表示该函数被定义为(b);A )重载函数B )内联函数C)成员函数D )一般函数3下面有关重载函数的说明中,( c)是正
2、确的;A) 重载函数必需具有不同的返回值类型B) 重载函数形参个数必需不同C) 重载函数必需具有不同的形参列表D) 重载函数名可以不同4. 以下有关类与对象的说法中,c 是不正确的;A) 对象是类的一个实列B) 任何一个对象只能属于一个具体的类C) 一个类只能有一个对象D) 类和对象的关糸和数椐类型与变量的关糸类似5. 已知 : Print 函数是一个类的常成员函数,它无返回值,以下表示中,正确选项a;A ) void Print const ;B const void Print ;C void const Print ;D void Printconst6. 假定 Myclass 为一个类
3、 ,那么以下的函数说明中d 为该类的析构函数;A void Myclass ;B Myclass int n ;C Myclass ;D Myclass 7下面类的定义中有c 处错误;class myclassint i=0 ;public:void myclass ;myclassvalue; ;A 1B2C3D48. 说明虚函数的关键字是(b );A. inlineB. virtualC. defineD. static欢迎下载精品学习资源stdin9. cout 是某个类的标准对象的引用,该类是(a );A. ostreamB. istreamC. stdoutD.10 如 果 clas
4、s 类中 的所 有 成 员 在 定 义时 都 没有 使 用 关 键 字 public 、 private或欢迎下载精品学习资源protected,就全部成员缺省定义为(c);A. publicB. protectedC. privateD static 11定义类模板时要使用关键字(d);A. constB. newC. deleteD.template12 一个类的全部对象共享的是(d);A. 私有数据成员B. 公有数据成员C. 爱惜数据成员D. 静态数据成员13静态成员函数没有(b);A. 返回值 B. this 指针 C. 指针参数 D. 返回类型14. 解决多重继承中二义性问题的方法有
5、(c);A. 只能使用作用域辨论操作符B. 使用作用域辨论操作符或赋值兼容规章C. 使用作用域辨论操作符或虚基类D. 使用虚基类或赋值兼容规章15. 假如在类 CTest 的外面函数调用 CTest:f ;就函数 f 是类 CTest的( a);A. 静态成员函数B. 非静态成员函数C. 友元函数D. 前面都不正确二、判定正误题(本大题共5 小题,每道题 2 分,共 10 分)判定正误,在题后的括号内, 正确的划上“”错误的划上”;1. 构造函数可以设置默认参数a2. 类的析构函数的作用是对象的初始化b3. cout 的默认输出对象是键盘, cin 的默认输入对象是屏幕b 4抽象类可以用来直接
6、创建对象;b 5常对象可以调用任意成员函数;b三、 填空题(本大题共5 小题,每道题 2 分,共 10 分)不写解题过程, 将正确的答案写在每道题的空格内,错填或不填均无分;1. 重载运算苻”的函数名为 operator- ;2. C+ 中类的用途有两种 ,一种是类的实例化,即生成类的对象 ,另一种是通过继承,派生出新的类;3. 在下面程序的横线处填上正确的语句, 以实现动态多态;#include class Basepublic:virtual void Fun cout Base:Fun endl; ;class Derived: public Base欢迎下载精品学习资源public:
7、;void Fun cout Derived:Fun Fun ;/调派生类的成员函数Fun ,以实现动态多态return 0;4. 编译时多态性可以用(重载)函数实现;5. 使用 new 建立的动态对象在不用时必需用(delete)删除,以便释放所占用空间;六、 编程题(本大题共2 小题,每道题 10 分,共 20 分)1设计一个类 DateInfo ,要求其中意下述要求:( 1)要求有一个无参的构造函数,其初始的年、月、日分别为:2021, 6, 8;( 2)要求有一个带参数的构造函数,其参数分别对应年、月、日;( 3)要求用一个成员函数实现日期的设置;( 4)要求用一个成员函数实现输出日期
8、;要求用一个成员函数实现日期的猎取;2定义一个复数类Complex, 二个数据成员为double 型 r, i 为 private 属性;定义代二个参数的构造函数和一个Show 函数用以输出r, i 的值 , 另外作为成员函数重载的运算苻” +”的功能是将此类二个对象的数据成员r 和 i 对应相加;这些成员函数的属性均为public. 请用 C+ 编写此程序 , 并编写测试程序进行测试;C+ 面对对象程序设计模拟试卷五参考答案一、单项选择题(本大题共15 小题,每道题 2 分,共 30 分)在每道题列出的四个备选项中,只有一个是苻合题目要求的;请将其代码填写在题后的括号内;错选,多项或未选均无
9、分;1 A )2 B )3 C4C)5 A6 D7 C8 B9A10 C11D12 D13 B14 C欢迎下载精品学习资源15 A二、判定正误题(本大题共5 小题,每道题 2 分,共 10 分)判定正误,在题后的括号内, 正确的划上“”错误的划上”;1. 参考答案:“”2. 参考答案:“”3. 参考答案:“”4. 参考答案:“”5. 参考答案:“”三、 填空题(本大题共5 小题,每道题 2 分,共 10 分)不写解题过程, 将正确的答案写在每道题的空格内,错填或不填均无分1参考答案: oprator- 2参考答案:继承3. 参考答案: pb=&b4. 参考答案:重载5参考答案: delete六
10、、 编程题(本大题共2 小题,每道题 10 分,共 20 分)1. 参考程序:#include using namespace std;class DateInfoprivate:int year, month, day;欢迎下载精品学习资源public:DateInfo: year2021, month6, day8 DateInfoint y, int m, int d: yeary, monthm, dayd void Setint y, int m, int d欢迎下载精品学习资源year = y;month = m;day = d;void Show cout year 年 mont
11、h 月 day 日 endl ; ;int mainDateInfo d1, d21988, 8, 18 ;d1.Show ;d2.Show;欢迎下载精品学习资源d2.Set1999, 9, 19;d2.Show;return 0;2. 参考程序:#include using namespace std;class Complexprivate:double r, i ;欢迎下载精品学习资源public: ;Complexdouble a, double b: ra, ib void Show cout r i endl; Complex operator +Complex obj return Complexr + obj.r, i + obj.i; 欢迎下载精品学习资源int mainComplex c13.5, 4.5, c22.5, 5.5, c30.0, 0.0 ;c3 = c1 + c2 ;c3.Show;return 0;欢迎下载