C++模拟题5.docx
- 文档编号:10541706
- 上传时间:2023-02-21
- 格式:DOCX
- 页数:17
- 大小:19.45KB
C++模拟题5.docx
《C++模拟题5.docx》由会员分享,可在线阅读,更多相关《C++模拟题5.docx(17页珍藏版)》请在冰豆网上搜索。
C++模拟题5
C++程序设计模拟试卷(五)
一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.静态成员函数没有(B)
A.返回值
B.this指针
C.指针参数
D.返回类型
2.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管
理操作的函数是(C)
A.友元函数
B.虚函数
C.构造函数
D.析构函数
3.所有在函数中定义的变量,都是(B)
A.全局变量
B.局部变量
C.静态变量
D.寄存器变量
4.假定AB为一个类,则执行“ABa
(2),b[3],*p[4];”语句时调用该类构造函数的次数
为(B)
A.3
B.4
C.5
D.9
5.如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则
可表示为(B)
A.++
(1)
B.operator++(a)
C.operator++(a,1)
D.++()
6.已知f1和f2是同一类的两个成员函数,但f1不能直接调用f2,这说明(C)
A.f1和f2都是静态函数
B.f1不是静态函数,f2是静态函数
C.f1是静态函数,f2不是静态函数
D.f1和f2都不是静态函数
7.一个函数功能不太复杂,但要求被频繁调用,则应把它定义为(A)
A.内联函数
B.重载函数
C.递归函数
D.嵌套函数
8.解决定义二义性问题的方法有(B)
A.只能使用作用域分辨运算符
B.使用作用域分辨运算符或成员名限定
C.使用作用域分辨运算符或虚基类
D.使用成员名限定或赋值兼容规则
9.在main函数中可以用的形式访问派生类对象p的基类成员a,其中a是(D)
A.私有继承的公有成员
B.公有继承的私有成员
C.公有继承的保护成员
D.公有继承的公有成员
10.在C++中不返回任何类型的函数应该说明为(C)
A.int
B.char
C.void
D.double
11.若Sample类中的一个成员函数说明如下:
voidset(Sample&a),则Sample&a的含义是(B)
A.指向类Sample的名为a的指针
B.a是类Sample的对象引用,用来作函数Set()的形参
C.将a的地址赋给变量Set
D.变量Sample与a按位与的结果作为函数Set的参数
12.要实现动态联编必须(B)
A.通过成员名限定来调用虚函数
B.通过对象名来调用虚函数
C.通过派生类对象来调用虚函数
D.通过对象指针或引用来调用虚函数
13.在派生类中定义虚函数时,可以与基类中相应的虚函数不同的是(B)
A.参数类型
B.参数个数
C.函数名称
D.函数体
14.实现两个相同类型数加法的函数模板的声明是(D)
A.add(Tx,Ty)
B.Tadd(x,y)
C.Tadd(Tx,y)
D.Tadd(Tx,Ty)
15.下列不是描述类的成员函数的是(C)
A.构造函数
B.析构函数
C.友元函数
D.拷贝构造函数
16.继承机制的作用是(C)
A.信息隐藏
B.数据封装
C.定义新类
D.数据抽象
17.已知:
p是一个指向类A数据成员m的指针,A1是类A的一个对象。
如果要给m赋值为5,正确
的是(C)
A.=5;
B.A1->p=5;
C.A1.*p=5;
D.*=5;
18.如果采用动态多态性,要调用虚函数的是()
A.基类对象指针
B.对象名
C.基类对象
D.派生类名
19.若有以下定义,则说法错误的是(B)
inta=100,*p=&a;
A.声明变量p,其中*表示p是一个指针变量
B.变量p经初始化,获得变量a的地址
C.变量p只可以指向一个整型变量
D.变量p的值为100
20.C++语言建立类族是通过(B)
A.类的嵌套
B.类的继承
C.虚函数
D.抽象类
二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
1.假设inta=1,b=2;则表达式(++a/b)*b--的值为_2__。
2.复制构造函数使用_构造函数__作为形式参数。
3.通过C++语言中的__继承_机制,可以从现存类中构建其子类。
4.静态成员函数、友元函数、构造函数和析构函数中,不属于成员函数的是__友元函数_。
5.在下面的类定义中,私有成员有_X,Y_length,height;_。
classLocation
{intX,Y;
protected:
intzeroX,zerxY;
intSetZero(intzeroX,intzeroY);
private:
intlength,height;
public:
voidinit(intinitX,intinitY);
intGetX();
intGetY();
};
6.在C++程序设计中,建立继承关系倒挂的树应使用__单继承_继承。
7.C++支持的两种多态性分别是_静态_多态性和运行多态性。
8.C++中语句constchar*constp=“hello”;所定义的指针p和它所指的内容都不能被__赋值_。
9.在C++中,定义虚函数的关键字是_virteor__。
10.采用私有派生方式,基类的public成员在私有派生类中是_私有__成员。
11.对赋值运算符进行重载时,应声明为_inline__函数。
12.在C++中有两种参数传递方式即值传递和_引用__传递。
13.预处理命令以_#define__符号开头。
14.在构造函数和析构函数中调用虚函数时采用_构造函数__。
15.C++是通过引用运算符___来定义一个引用的。
16.如果要把类B的成员函数voidfun()说明为类A的友元函数,则应在类A中加入语句_friendvoidB:
:
fun();__。
17.如果要把PI声明为值为类型为双精度实数的符号常量,该声明语句是_constdoublePI。
18.在C++四个流对象中,_cout__用于标准屏幕输出。
19.执行下列代码
inta=32;
doublec=32;
(ios:
:
hex);
cout<<"hex:
a="< (ios: : hex); 程序的输出结果为_hex: a=20_,c=30_。 20.已知有20个元素int类型向量V1,若用V1初始化为V2向量,语句是vetiror 三、改错题(本大题共5小题,每小题4分,共20分) 1.#include<> classA {private: public intx; public: A(inti){x=i;} A(){x=0;} friendintmin(A&,A&); }; intmin(A&a,A&b) {return>: ; } voidmain() {Aa(3),b(5); cout<<(a,b)< } 2.#include<> classshape {public: virtualintarea(){return0;} }; classrectangle: publicshape {public: inta,b; voidsetLength(intx,inty){a=x;b=y;} intarea(){returna*b;} }; voidmain() {rectangler; (3,5); shapes1,*s2=&r; cout<<()< s2=s1; cout<<()< } 3.下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。 #include<> template classA {private: Tx,y,s; public: A(Ta,Tb) {x=a,y=b;s=x+y;} voidshow() {cout<<"x+y="< } }; voidmain() {A (); } 4.生成具有n个元素的动态数组。 #include<> voidmain() {intn; cin>>n; inta[n]; a[0]=2; cout< } 5.#include<> classA {inti; public: virtualvoidfun()=0; A(inta) {i=a;} }; classB: publicA {intj; public: voidfun() {cout<<"B: : fun()\n";} B(intm,intn=0): A(m),j(n){} }; voidmain() {A*pa; Bb(7); pa=&b; } 四、完成程序题(本大题共5小题,每小题4分,共20分) 1.在下面程序横线处填上适当字句,以使该程序执行结果为: 504342110 0 #include<> template voidf(___Ta[],_int_n_____) {__________; for(inti=0;i t=a[i],a[i]=a[n-1-i],a[n-1-i]=t; } voidmain() {inta[5]={10,21,34,4,50}; doubled[6]={,,,,}; f(a,5);f(d,6); for(inti=0;i<5;i++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 模拟