电话:0731-83595998
导航

2019年3月计算机二级C++选择题强化练习019

来源: 2019-03-20 19:38

 (1)有如下程序:

 
#include
 
using namespace std;
 
class VAC{
 
public:
 
intf()const{return 3;}
 
int f(){retum 5;}
 
};
 
int main()
 
{
 
VAC vl;
 
const VAC v2;
 
cout<<VL.F()<<V2.F();< p>
 
return 0;
 
}
 
执行这个程序的输出结果是( )。
 
A) 53
 
B)35
 
C)55
 
D)33
 
答案:A
 
(2)有如下程序:
 
#include
 
using namespace std;
 
class MyClass{
 
public:
 
MyClass(int i=0){cout<<1;}
 
MyClass(const MyClass&x){cout<<2;}
 
MyClass&operator=(const MyClass&x){cout<<3;retum$this;}
 
~MyClass()}cout<<4;}
 
};
 
int main()
 
{
 
MyClass objl(1),obj2(2),obj3(objl);
 
retum 0;
 
{
 
执行这个程序的输出结果是( )。
 
A)112444
 
B)11114444
 
C)121444
 
D)11314444
 
答案:A
 
(3)有如下类声明:
 
class Base{
 
protected:
 
int amount;
 
public:
 
Base(int n=0):amount(n){}
 
int getAmount()const{retum amount;}
 
};
 
class Derived:public Base{
 
protected:
 
int value;
 
public:
 
Derived(int m,int n):value(m),Base(n){}
 
int getData()const{return value+amount;}
 
}:
 
已知x是一个Derived对象,则下列表达式中正确的是( )。
 
A)x.value+X.getAmount()
 
B)x.getData()一x.getAmount()
 
C)x.getData()一x.amount
 
D)x.value+X.Amount
 
答案:B
 
(4)有如下程序:
 
#include
 
using namespace std;
 
class AA{
 
int k;
 
protected:
 
int n;
 
void setK(int k){this一>k=k;}
 
public:
 
void setN(int n){this一>n=n;}
 
};
 
class BB:public AA{/*类体略*/};
 
int main()
 
}
 
BB X;
 
X.n=1;//1
 
X.setN(2);//2
 
X.k=3;//3
 
X.setK(4);//4
 
return 0;
 
}
 
在标注号码的四条语句中正确的是( )。
 
A)1
 
B)2
 
C)3
 
D)4
 
答案:B
 
(5)有如下程序:
 
#include
 
using namespace std;
 
class Base{
 
int x:
 
public:
 
Base(int n=0):x(n){cout<<N;}< p>
 
int getX()const{return x;}
 
};
 
cjass Derived:public Base{
 
int Y:.
 
J;;Iublic:
 
Derived(int m,int n):y(m),Base(n){cout<<M;}< p>
 
Derived(int m):Y(m){cout<<M;}< p>
 
};
 
int main()
 
{
 
Derived dl(3),d2(5,7);
 
retum 0;
 
}
 
执行这个程序的输出结果是( )。
 
A)375
 
B)357
 
C)0375
 
D)0557
 
答案:C
 
(6)有如下程序:
 
#include
 
using namespace std;
 
class GA{
 
public:
 
virtual int f()t retum l;}
 
};
 
class GB:public GA{
 
public:
 
virtual int f(){retum 2;}
 
};
 
void show(GA g){eout<<9.f();}
 
void display(GA&g){cout<<9.f();}
 
int main()
 
{
 
GA a;show(a);display(a);
 
GB b;show(b);display(b);
 
return 0;
 
}
 
执行这个程序的输出结果是( )。
 
A)1111
 
B)1211
 
C)1112
 
D)1212
 
答案:C
 
(7)下列有关模板的叙述中,正确的是( )。
 
A)函数模板不能含有常规形参
 
B)函数模板的一个实例就是一个函数定义
 
C)类模板的成员函数不能是模板函数
 
D)用类模板定义对象时,绝对不能省略模板实参
 
答案:B
 
(8)下面是一个模板声明的开始部分:templatedouble…
 
由此可知( )。
 
A)这可能是一个函数模板的声明
 
B)这可能是一个类模板的声明
 
C)这既可能是一个函数模板的声明,也可能是一个类模板的声明
 
D)这肯定是一个错误的模板声明
 
答案:A
 
(9)C++系统预定义了4个用于标准数据流的对象,下列选项中不属于此类对象的是( )。
 
A)cout
 
B)cin
 
C)cerr
 
D)cset
 
答案:D
 
(10)下列语句都是程序运行时的第1条输出语句,其中一条语句的输出效果与其他三条语句不同,该语句是( )。
 
A)cout<<INTERNAL<<12345;< p>
 
B)eout<<LEFT<<12345;< p>
 
C)cout<<RIGHT<<12345;< p>
 
D)cout<<SETW(6)<<12345;< p>
 
答案:D

编辑推荐:

下载Word文档

温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)

网络课程 新人注册送三重礼

已有 22658 名学员学习以下课程通过考试

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

最新评论

点击加载更多评论>>

精品课程

更多
10781人学习

免费试听更多

相关推荐
图书更多+
  • 电网书籍
  • 财会书籍
  • 其它工学书籍
拼团课程更多+
  • 电气拼团课程
  • 财会拼团课程
  • 其它工学拼团
热门排行

长理培训客户端 资讯,试题,视频一手掌握

去 App Store 免费下载 iOS 客户端