电话:0731-83595998
导航

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

来源: 2019-03-20 19:32

 (1)有如下类定义:

 
class Test
 
{
 
public:
 
Test(){a=0;c=0;}//①
 
int f(im a)const{this->a=a;}//②
 
static int g(){return a;f//③
 
void h(int b){Test:.b=b;};//④
 
private:
 
int a;
 
static int b;
 
const int C;
 
};
 
int Test::b=0:
 
在标注号码的行中,能被正确编译的是( )。
 
A)①
 
B)②
 
C)③
 
D)④
 
答案:D
 
(2)有如下类声明:
 
class SAMPLE
 
{
 
int n:
 
public:
 
SAMPLE(int i=0):n(i){}
 
void setValue(int nO);
 
};
 
下列关于9etValue成员函数的定义中,正确的是( )。
 
A)SAMPLE::setValue(int nO){n=n0;} B)void SAMPLE::setValue(int胡){n=n0;
 
C)void setValue(int nO){n=n0;}D)setValue(int nO){n=n0;}
 
答案:B
 
(3)有如下程序:
 
#include
 
using namespace std;
 
class A
 
{
 
public:
 
A(){cout<<”A”;}
 
-A(){cout<<”-A”;}
 
};
 
class B:public A
 
{
 
A*P;
 
public:
 
B(){cout<<”B”;P=new A();}
 
-B(){cout<<”~B”;delete p;}
 
};
 
int main()
 
{
 
B obj;
 
return 0;
 
}
 
执行这个程序的输出结果是( )。
 
A)BAA~A~B~A
 
B)ABA~B~A~A
 
C)BAA~B~A~A
 
D)ABA~A~B~A
 
答案:B
 
(4)有如下程序:
 
#include
 
using namespace std;
 
class Base
 
{
 
private:
 
void funl()const{tout<<”funl”;}
 
protected:
 
void fun2()const{tout<<”fun2”;}
 
public:
 
void fun3()const{cout<<”fhll3”;}
 
};
 
class Derived:protected Base
 
{
 
public:
 
void fhn4()const{cout<<”filn4”;}
 
};
 
int main()
 
{
 
Derived obj;
 
obj.funl();//①
 
obj.fun2();//②
 
obj.furd();//③
 
obj.fun4();//④
 
return U:
 
}
 
其中有语法错误的语句是( )。
 
A)①②③④
 
B)①②③
 
C)②③④
 
D)①④
 
答案:B
 
(5)有如下程序:
 
#include
 
using namespace std;
 
class Basel
 
{
 
public:
 
BaseI(int d){cout<<D;}< p>
 
一Basel(){}
 
};
 
class Base2
 
{
 
public:
 
Base2(int d){tout<<D;}< p>
 
~Base2(){}
 
};
 
class Derived:public Basel,Base2
 
{
 
public:
 
Derived(int a,int b,int c,int d):Basel(b),Base2(a),bl(d),b2(c){}
 
private:
 
int bl:
 
int b2:
 
};
 
int main()
 
{
 
Derived d(1,2,3,4);
 
return 0;
 
}
 
执行这个程序的输出结果是( )。
 
A)1234
 
B)2134
 
C)12
 
D)21
 
答案:D
 
(6)有如下程序:
 
#include
 
using namespace std;
 
class Base
 
{
 
public:
 
void funl(){cout<<”Basen”;}
 
virtual void fun2(){eout<<”Basen”;}
 
};
 
class Derived:public Base{
 
public:
 
void funl(){eout<<”Derived、n”;}
 
void fura(){eout<.<”Derivedn”;}
 
};
 
void f(Base&b)}b.funl();b.ftm2();}
 
int main()
 
{
 
Derived obj;
 
f(obj);
 
return 0;
 
}
 
执行这个程序的输出结果是( )。
 
A)Base
 
B)Base
 
C)Derived
 
D)Derived
 
Base Derived Base Derived
 
答案:B
 
(7)模板对类型的参数化提供了很好的支持,因此( )。
 
A)类模板的主要作用是生成抽象类
 
B)类模板实例化时,编译器将根据给出的模板实参生成一个类
 
C)在类模板中的数据成员都具有同样类型
 
D)类模板中的成员函数都没有返回值
 
答案:B
 
(8)有如下函数模板:
 
template
 
T east(U u)i return u;}
 
其功能是将U类型数据转换为T类型数据。已知i为int型变量,下列对模板函数cast的调用中正确的是( )。
 
A)cast(i);
 
B)cast<>(i);
 
C)east(i);
 
D)east(i);
 
答案:D
 
(9)要建立文件流并打开当前目录下的文件6le.dat用于输入,下列语句中错误的是( )。
 
A)ifstream fin=ffstream.open(”file.dat”);
 
B)ifstream*fin=new ifstream(”file.dat”);
 
C)ifstream fin;fin.open(”file.dat”);
 
D)ifstream*fin=new ifstream();fin->open(”file.dat”);
 
答案:A
 
(10)当使用ifstream流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为( )。
 
A)ios—base::in
 
B)ios—base::in l ios base::0ut
 
C)los base;:0ut
 
D)ios_base::in&ios_base::0ut
 
答案:A

编辑推荐:

下载Word文档

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

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

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

网友评论(共0条评论)

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

最新评论

点击加载更多评论>>

精品课程

更多
10781人学习

免费试听更多

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

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

去 App Store 免费下载 iOS 客户端