欢迎来到天天文库
浏览记录
ID:56098728
大小:44.00 KB
页数:11页
时间:2020-06-19
《c++面向对象程序设计试题和答案(经典题目).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一、填空题(每空1分,共14分)1、观看以下程序:classpoint{public:voidshow(){cout<<”point”<2、中将使用关键字__class_____来表示类定义的开始。4、如果一个类中至少有一个纯虚函数,则该类称为_______抽象类_________。5、C++类的组成包括数据成员和______成员函数________,友元__是___(是、不是)该类的成员函数。6、友员函数是用关键字_____friend_______修饰的非成员函数。7、若有:inti;int&j=i;i=10;j=i+1;则i=____11_____,j=___11______。8、new的功能是_______分配内存空间_____3、_,delete的功能是______释放内存空间______________。二、选择题(每小题1.5分,共30分)1、下列特性中不是面向对象程序设计语言所特有的是(D)。(A)数据封装(B)继承(C)多态性(D)模板2、(B)是给变量取一个别名,它引入了变量的同意词。(A)指针(B)引用(C)枚举(D)结构3、类成员的访问权限中,()只能被本类的成员函数和其友元函数访问。(A)share(B)public(C)private(D)protected4、关于构造函数,下列说法不正确的是()。(A)构4、造函数名字和类名相同(B)构造函数在创建对象时自动执行(C)构造函数无任何函数返回类型(D)构造函数有且只有一个5、派生类可以访问其基类的()。(A)公有成员(B)保护成员(C)私有派生(D)公有和保护成员6、下列关于运算符重载的描述中,错误的是()。(A)运算符重载不可以改变操作数的个数(B)运算符重载不可以改变运算符的功能(C)运算符重载不可以改变结合方向(D)运算符重载不可以改变运算优先级7、C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是()5、(A)面向过程 (B)面向对象 (C)安全性 (D)复用性8、对于类中定义的成员,其隐含访问权限为()。A.publicB.protectedC.privateD.static9、下面有关重载函数的说法中正确的是()(A)重载函数必须具有不同的返回值类型; (B)重载函数形参个数必须不同; (C)重载函数必须有不同的形参列表 (D)重载函数名可以不同;10、有如下的对类“CSample”的说明,其中()是错误的。 classCSample{ A.inta=23; B.6、CSample(); public: C.CSample(intval); D.~CSample();11、在inta=3,int*p=&a;中,*p的值是()A.变量a的地址值B.无意义C.变量p的地址值D.312、每个类()构造函数。(A)只能有一个(B)只可有公有的(C)可以有多个(D)只可有缺省的13、在一个类中可以对一个操作符进行()重载。(A)1种(B)2种以下(C)3种以下(D)多种14、在公有继承的情况下,基类非私有成员在派生类中的访问权限()(A)受限制(B)保持不变(C7、)受保护(D)不受保护15、应在下列程序划线处填入的正确语句是()#includeclassBase{public:voidfun(){cout<<"Base::fun"<f8、un();16、执行下面的程序将输出()#includeclassBASE{charc;public:BASE(charn):c(n){}virtual~BASE(){cout<
2、中将使用关键字__class_____来表示类定义的开始。4、如果一个类中至少有一个纯虚函数,则该类称为_______抽象类_________。5、C++类的组成包括数据成员和______成员函数________,友元__是___(是、不是)该类的成员函数。6、友员函数是用关键字_____friend_______修饰的非成员函数。7、若有:inti;int&j=i;i=10;j=i+1;则i=____11_____,j=___11______。8、new的功能是_______分配内存空间_____
3、_,delete的功能是______释放内存空间______________。二、选择题(每小题1.5分,共30分)1、下列特性中不是面向对象程序设计语言所特有的是(D)。(A)数据封装(B)继承(C)多态性(D)模板2、(B)是给变量取一个别名,它引入了变量的同意词。(A)指针(B)引用(C)枚举(D)结构3、类成员的访问权限中,()只能被本类的成员函数和其友元函数访问。(A)share(B)public(C)private(D)protected4、关于构造函数,下列说法不正确的是()。(A)构
4、造函数名字和类名相同(B)构造函数在创建对象时自动执行(C)构造函数无任何函数返回类型(D)构造函数有且只有一个5、派生类可以访问其基类的()。(A)公有成员(B)保护成员(C)私有派生(D)公有和保护成员6、下列关于运算符重载的描述中,错误的是()。(A)运算符重载不可以改变操作数的个数(B)运算符重载不可以改变运算符的功能(C)运算符重载不可以改变结合方向(D)运算符重载不可以改变运算优先级7、C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是()
5、(A)面向过程 (B)面向对象 (C)安全性 (D)复用性8、对于类中定义的成员,其隐含访问权限为()。A.publicB.protectedC.privateD.static9、下面有关重载函数的说法中正确的是()(A)重载函数必须具有不同的返回值类型; (B)重载函数形参个数必须不同; (C)重载函数必须有不同的形参列表 (D)重载函数名可以不同;10、有如下的对类“CSample”的说明,其中()是错误的。 classCSample{ A.inta=23; B.
6、CSample(); public: C.CSample(intval); D.~CSample();11、在inta=3,int*p=&a;中,*p的值是()A.变量a的地址值B.无意义C.变量p的地址值D.312、每个类()构造函数。(A)只能有一个(B)只可有公有的(C)可以有多个(D)只可有缺省的13、在一个类中可以对一个操作符进行()重载。(A)1种(B)2种以下(C)3种以下(D)多种14、在公有继承的情况下,基类非私有成员在派生类中的访问权限()(A)受限制(B)保持不变(C
7、)受保护(D)不受保护15、应在下列程序划线处填入的正确语句是()#includeclassBase{public:voidfun(){cout<<"Base::fun"<f
8、un();16、执行下面的程序将输出()#includeclassBASE{charc;public:BASE(charn):c(n){}virtual~BASE(){cout<
此文档下载收益归作者所有