面向对象考试题(参考)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象考试题(参考)
1。程序设计中,首先在问题域中识别出若干个()
A。函数B。类C。文件D。过程
2。定义类模板用关键字()
A。const B.new C.delete D.template
3。运算结果类型相同的()
A. 9.0/2.0 9.0/2
B. 9/2.0 9/2
C. 9.0/2 9/2
D. 9/2 9.0/2.0
4。已知f1 f2同一类两个成员函数,但f1不能调用f2,说明()
a.f1 f2都是静态函数
b.f1是静态,f2不是
c.f1不是,f2是静态
d.f1 f2都不是静态函数
5。调用一成员函数时,使用动态联编的情况是()
A.通过对象调用一虚函数B。通过指针或引用调用一虚函数
C。通过对象调用静态函数D。通过指针或引用调用一静态函数6。假定一个类构造函数为:“A(int aa=1,int bb=0){a=aa;b=bb;}则执行"A x(4)"后,x.a和x.b值分别是:()
A。1,0B。1,4C。4,0D。4,1
7。在派生类中能直接访问基类的()
A。公有成员,私有成员B。保护成员,私有成员
C。不可访问成员,私有成员 D。公有成员,保护成员
8。不具访问权限属性的是:
A。非类成员B。类成员C。数据成员D。函数成员
9。类定义中private,protected,public 出现次数为()
A。任意多次B。至多一次C。public 至少一次D。至少一次10。C++鼓励程序员将()
A。数据操作分别封装B。不同类型数据封装
C。数据操作封装在一起D。不同作用操作封装在一起。
二、填空
1。C++中,最好用()代替malloc。
2。函数模板中template之后尖括号的类型参数冠以保留字()。
3。在IOS类中定义的用于格式控制的枚举变量中十、八、十六进制是dec,oct,()。4。如果重载了运算符+,则相应运算函数名是()。
5。由static修饰的数据成员为该类的所有对象()。
6。为了实现多态性,派生类需要重新定义基类中的()。
7。编译时多态性通过()函数实现。
8。派生类中实现基类成员初始化,需由派生类的构造函数调用()来完成。9。C++中访问指令所指对象的成员使用运算符()。
10。重载函数在参数类型或参数个数上不同但()相同。
1。类定义有错,正确结果为5+8i
#include
#include
class complex
{
double real;
double imag;
public:
complex(double r=0.0,double i=0.0):real(r),imag(i){}
void show()
{ cout< friend complex & operator +=(complex c1,complex c2); }; complex & operator +=(complex c1,complex c2) { c1.real+=c2.real; c1.imag+=c2.imag; return c1; } void main() { complex c(3,5); c+=complex(2,3); c.show(); } 2。改一处错 #include class shape { public: int area() {return 0;} }; class rectangle:public shape { public: int a,b; void setlength(int x,int y) { a=x; b=y;} int area(){return a*b;} }; { rectangle r; r.setlength(3,5); shape *s=r; cout < cout < } 3。改一处错 class A { int a,b; public: A(int aa=0,int bb) {a=aa;b=bb;} }; 4。找一处错 class Location { int x,y; protected: int SetZero(int zeroX,int zeroY); public: void Locattion (int initX,int initY); int getx(); int gety(); }; 四、填空 1。使输出结果为: 5 4 3 2 1 0 5.5 4.4 3.3 2.2 1.1 #include template void f( ) { ; for (int i=0;i {t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;} }