C面向对象程序设计模拟试题五

C++面向对象程序设计模拟试题五一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中,只有一个是苻合题目要求的请将其代码填写在题后的括号内错选,多选或未选均无分1.下列对类的构造函数和析构函数描述正确的是( a )A)构造函数可以重载,析构函数不能重载B)构造函数不能重载,析构函数可以重载C)构造函数可以重载,析构函数可以重载D)构造函数不能重载,析构函数不能重载2.在函数定义前加上关键字“inline”,表示该函数被定义为( b )A)重载函数 B)内联函数C)成员函数 D)普通函数3.下面有关重载函数的说明中, (c )是正确的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 Print(const)6.假定Myclass为一个类,那么下列的函数说明中( d )为该类的析构函数A) void ~Myclass( ); B) ~Myclass( int n);C) Myclass( ); D) ~Myclass( )7.下面类的定义中有 ( c ) 处错误 class myclass{int i=0; public: void myclass( ){};~myclass(value); } ; A) 1 B)2 C)3 D)48.说明虚函数的关键字是( b )A. inline B. virtual C. define D. static9.cout是某个类的标准对象的引用,该类是( a ) A. ostream B. istream C. stdout D. stdin10.如果class类中的所有成员在定义时都没有使用关键字public、private或protected,则所有成员缺省定义为( c )。
A. public B. protected C. private D.static 11.定义类模板时要使用关键字( d ) A. const B. new C. delete D. template12一个类的所有对象共享的是( d ) A. 私有数据成员 B. 公有数据成员 C. 保护数据成员 D. 静态数据成员13.静态成员函数没有( b ) A. 返回值 B. this指针 C. 指针参数 D. 返回类型14.解决多重继承中二义性问题的方法有( c ) A. 只能使用作用域分辨操作符B. 使用作用域分辨操作符或赋值兼容规则C. 使用作用域分辨操作符或虚基类D. 使用虚基类或赋值兼容规则15.如果在类CTest的外面函数调用CTest::f( );则函数f( )是类CTest的( a ) A. 静态成员函数 B. 非静态成员函数 C. 友元函数 D. 前面都不正确二、判断正误题(本大题共5小题,每小题2分,共10分)判断正误,在题后的括号内,正确的划上“√”错误的划上”×”。
1.构造函数可以设置默认参数 a 2.类的析构函数的作用是对象的初始化 b 3.cout的默认输出对象是键盘, cin的默认输入对象是屏幕b4.抽象类可以用来直接创建对象b 5.常对象可以调用任意成员函数b 三、 填空题(本大题共5小题,每小题2分,共10分)不写解题过程, 将正确的答案写在每小题的空格内,错填或不填均无分1.重载运算苻”-” 的函数名为( operator- ) 2.C++中类的用途有两种, 一种是类的实例化, 即生成类的对象, 另一种是通过( 继承 ),派生出新的类3.在下面程序的横线处填上正确的语句, 以实现动态多态include
5.使用new建立的动态对象在不用时必须用( delete )删除,以便释放所占用空间 六、 编程题(本大题共2小题,每小题10分,共20分)1.设计一个类DateInfo,要求其满足下述要求: (1)要求有一个无参的构造函数,其初始的年、月、日分别为:2010,6,8 (2)要求有一个带参数的构造函数,其参数分别对应年、月、日 (3)要求用一个成员函数实现日期的设置 (4)要求用一个成员函数实现输出日期 要求用一个成员函数实现日期的获取 2.定义一个复数类Complex, 二个数据成员为double型r, i 为private属性定义代二个参数的构造函数和一个Show( ) 函数用以输出r, i的值, 另外作为成员函数重载的运算苻”+”的功能是将此类二个对象的数据成员r和i对应相加这些成员函数的属性均为public. 请用C++编写此程序, 并编写测试程序进行测试C++面向对象程序设计模拟试题五参考答案一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中,只有一个是苻合题目要求的。
请将其代码填写在题后的括号内错选,多选或未选均无分1.A) 2.B) 3.C) 4.C) 5.A)6.D) 7.C) 8.B) 9.A) 10.C) 11.D) 12.D) 13.B) 14.C) 15.A)二、判断正误题(本大题共5小题,每小题2分,共10分)判断正误,在题后的括号内,正确的划上“√”错误的划上”×”1.参考答案:“√”2.参考答案:“×”3.参考答案:“×”4.参考答案:“×”5.参考答案:“×”三、 填空题(本大题共5小题,每小题2分,共10分)不写解题过程, 将正确的答案写在每小题的空格内,错填或不填均无分1.参考答案:oprator-2.参考答案:继承3.参考答案:pb=&b 4.参考答案:重载5.参考答案:delete六、 编程题(本大题共2小题,每小题10分,共20分)1.参考程序:#include