计算机2级C++等级考试真题文档格式.docx

上传人:b****8 文档编号:22873406 上传时间:2023-02-05 格式:DOCX 页数:14 大小:36.61KB
下载 相关 举报
计算机2级C++等级考试真题文档格式.docx_第1页
第1页 / 共14页
计算机2级C++等级考试真题文档格式.docx_第2页
第2页 / 共14页
计算机2级C++等级考试真题文档格式.docx_第3页
第3页 / 共14页
计算机2级C++等级考试真题文档格式.docx_第4页
第4页 / 共14页
计算机2级C++等级考试真题文档格式.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

计算机2级C++等级考试真题文档格式.docx

《计算机2级C++等级考试真题文档格式.docx》由会员分享,可在线阅读,更多相关《计算机2级C++等级考试真题文档格式.docx(14页珍藏版)》请在冰豆网上搜索。

计算机2级C++等级考试真题文档格式.docx

(11)下列关于函数的描述中,错误的是

  A)函数可以没有返回值B)函数可以没有参数

  C)函数可以是一个类的成员D)函数不能被定义为模板

  (12)若MyClass是一个类名,且有如下语句序列

  MyClassc1,*c2;

  MyClass*c3=newMyClass;

  MyClass&

c4=c1;

  上面的语句序列所定义的类对象的个数是

  A)1 B)2 C)3 D)4

  (13)下列关于继承方式的描述中,错误的是

  A)如果不显式地指定继承方式,缺省的继承方式是私有(private)

  B)采用公有继承方式时,基类中的公有成员在派生类中仍然是公有成员

  C)采用保护继承方式时,基类中的保护成员在派生类中仍然是保护成员

  D)采用私有继承方式时,基类中的私有成员在派生类中仍然是私有成员

  (14)将前缀运算符“--”重载为非成员函数,下列原型中,能正确用于类中说明的是

  A)Decr&

operator--(int);

  B)Decroperator--(Decr&

int);

  C)friendDecr&

operator--(Decr&

);

  D)frlendDecroperator--(Decr&

  (15)若MyTemp是一个只有一个虚拟类型参数的类模板,且有如下语句序列

  MyTempp2;

  MyTempp3[2];

  编译系统在处理上面的语句序列时,所生成的模板MyTemp的实例的个数是

  A)1B)2C)3D)0

  (16)在C++中,cin是个

  A)类B)对象C)模板D)函数

  (17)在下列字符中,不允许作为C++标识符的是

  A)bB)BC)_D)2

  (18)下列叙述中,错误的是

  A)false是一个逻辑型常量B)"

b"

是一个字符型常量

  C)365是一个int常量D)3.1415926是一个double常量

  (19)若x和y是程序中的两个整型变量,则下列if语句中正确的是

  A)if(x==0)y=1;

elsey=2;

B)if(x==0)theny=1elsey=2;

  C)if(x==0)y=1elsey=2;

D)ifx==0y=1;

  (20)要定义整型数组x,使之包括初值为O的三个元素,下列语句中错误的是

  A)intx[3]={0,0,0};

B)intx[]={0};

C)staticintx[3]={0};

D)intx[]={0,0,0};

(21)关于函数中的<

返回类型>

,下列表述中错误的是

  A)<

中有可能包含关键字intB)<

中有可能包含自定义标识符

  C)<

中有可能包含字符*D)<

中可能包含[]

  (22)要定义一个引用变量p,使之引用类MyClass的一个对象,正确的定义语句是

  A)MyClassp=MyClass;

B)MyClassp=newMyClass;

  C)MyClass&

p=newMyClass;

D)MyClassa,&

p=a;

  (23)有如下两个类定义

  classXX{

  private:

  doublex1;

  protected:

  doublex2;

  public:

  doublex3;

  };

  classYY:

protectedXX{

  doubley1;

  doubley2;

  doubley3;

  在类YY中保护成员变量的个数是

  A)1B)2C)3D)4

  (24)下列关于运算符重载的描述中,错误的是

  A)可以通过运算符重载在C++中创建新的运算符

  B)赋值运算符只能重载为成员函数

  C)运算符函数重载为类的成员函数时,第一操作数是该类对象

  D)重载类型转换运算符时不需要声明返回类型

  (25)下列关于类模板的描述中,错误的是

  A)类模板的成员函数都是模板函数

  B)可以为类模板参数设置默认值

  C)类模板描述了一组类

  D)类模板中只允许有一个类型参数

  (26)下列控制格式输入输出的操作符中,能够设置浮点数精度的是

  A)setprecision

  B)setw

  C)setfill

  D)showpoint

(27)下列程序段中包含4个函数,其中具有隐含this指针的是

  intfun1();

  classTest{

  intfun2();

  friendintfun3();

  staticintfun4();

  A)fun1B)fun2C)fun3D)fun4

  (28)有如下程序

  #include

  usingnamespacestd;

  Test(){}

  Test(constTest&

t){cout<

<

1;

}

  Testfun(Test&

u){Testt=u;

returnt;

  intmain(){Testx,y;

x=fun(y);

return0;

  运行这个程序的输出结果是

  A)无输出B)1C)11D)111

  (29)有如下程序

  classA{

  A(inti=0):

r1(i){}

  voidprint(){cout<

'

E’<

R1<

-'

;

}<

p>

  voidprint()const{cout<

C'

R1*R1<

  voidprint(intx){cout<

P'

R1*R1*R1<

  intr1;

  intmain(){

  Aa1;

  constAa2(4);

  a1.print

(2);

  a1.print();

  return0;

  }

  运行时的输出结果是

  A)P8-E4B)P8-C16-C)P0-E4-D)P0-C16-

  (30)下列代码声明了3个类

  classPerson{};

  classStudent:

publicPerson{};

  classUndergraduate:

Student{};

  下列关于这些类之间关系的描述中,错误的是

  A)类Person是类Undergraduate的基类

  B)类Undergraduate从类Student公有继承

  C)类Student是类Person的派生类

  D)类Undergraduate是类Person的派生类

(31)有如下程序

  ClassBase{

  Base(intx=0):

valB(x){cout<

VALB;

  ~Base(){cout<

  intvalB;

  classDerived:

publicBase{

  Derived(intx=0,inty=0):

Base(x),valD(y){cout<

VALD;

  ~Derived(){cout<

  intvalD;

  intmain(){

  Derivedobj12(2,3);

  retuen0;

  A)2332B)2323C)3232D)3223

  (32)下面是类Shape的定义:

  classShape{

  virtualvoidDraw()=0;

  下列关于Shape类的描述中,正确的是

  A)类Shape是虚基类B)类Shape是抽象类

  C)类Shape中的Draw函数声明有误D)语句“Shapes;

”能够建立Shape的一个对象s

  (33)将运算符“+”重载为非成员函数,下列原型声明中,错误的是

  A)MyClockoperator+(MyClock,long);

  B)MyClockoperator+(MyClock,MyClock);

  C)MyClockoperator+(long,long);

  D)MyClockoperator+(long,MyClock);

  (34)打开文件时可单独或组合使用下列文件打开模式

  ①ios_base:

:

app②ios_base:

binary

  ③ios_base:

in④ios_base:

out

  若要以二进制读方式打开一个文件,需使用的文件打开模式为

  A)①③B)①④C)②③D)②④

  (35)有如下程序:

  ClassB{

  B(intxx):

x(xx){++cout;

x+=10;

  virtualvoidshow()const

  {cout<

COUNT<

_'

X<

ENDL;

  staticintcount;

  intx;

  classD:

publicB{

  D(intxx,intyy):

B(xx),y(yy){++count;

y+=100;

Y<

  inty;

  intB:

count=0;

  B*ptr=newD(10,20);

  ptr->

show();

  deleteptr;

  A)1_120B)2_120C)1_20D)2_20

二、填空题(每空2分,共30分)

  请将每一个空的正确答案写在答题卡【l】~【15】序号的横线上,答在试卷上不得分。

  

(1)一个队列的初始状态为空。

现将元素A,B,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队,则元素退队的顺序为【1】。

  

(2)设某循环队列的容量为50,如果头指针front=45(指向队头元素的前一位置),尾指针rear=10(指向队尾元素),则该循环队列中共有【2】个元素。

  (3)设二叉树如下:

  

  对该二叉树进行后序遍历的结果为【3】。

  (4)软件是【4】、数据和文档的集合。

  (5)有一个学生选课的关系,其中学生的关系模式为:

学生(学号,姓名,班级,年龄),课程的关系模式为:

课程(课号,课程名,学时),其中两个关系模式的键分别是学号和课号,则关系模式选课可定义为:

选课(学号,【5】,成绩)。

  (6)若x和y是两个整形变量,在执行了语句序列

  x=5;

y=6;

y+=x--;

  后,x+y的值为【6】。

  (7)在执行语句序列

  inti=0;

doi++;

while(i*i<

10);

  时,do后面的循环体语句i++被执行的次数为【7】。

  (8)有如下的函数定义:

  intXfun(int*a,intn){

  intx=*a;

  for(int*pa=a+1;

pa<

>

  if(*pa>

x)x=*pa;

  returnx;

  若执行了语句

  intx[5]={23,46,78,55,16};

  后,通过表达式Xfun(x,5)调用该函数,则得到的返回值为【8】。

  (9)有如下的函数定义:

  intXfun(intx){

  inty=x;

  {intx=10;

y+=x;

  returnx+y;

  通过表达式Xfun(5)调用该函数,则得到的返回值为【9】。

  (10)假定Xcs是一个类,该类中一个成员函数的原型为“Xcs*abc();

”,则在类外定义时对应的函数头为【10】。

  (11)请将下面的类Date的定义补充完整,使得由语句

  DateFirstDay;

  定义的对象FirstDay的值为2010年1月1日。

  classDate{

  Date(【11】):

year(y),month(m),day(d){}

  intyear,month,day;

//依次表示年、月、日

  (12)请将下面的程序补充完整,使得程序输出“飘是张娜的书”。

  classBook{

  Book(char*str){strcpy(title,str);

  【12】voidPrintInfo(){cout<

TITLE<

  chartitle[50];

  classMyBook:

publicBook{

  MyBook(char*s1,char*s2="

张娜"

):

【13】{strcpy(owner,s2);

  virtualvoidPrintInfo(){cout<

"

是"

OWNER<

的书"

  charowner[10];

  Book*prt=newMyBook("

飘"

  prt->

PrintInfo();

  (13)在有理数类Rational中重载插入运算符<

,以便按a/q形式输出。

请将<

运算符函数的定义补充完整。

  classRational{

  Rational(intaa,intqq):

a(aa),q(qq){}

  friend【14】operator<

(ostream&

out,Rational&

x)

  {

  return(out<

X.A<

p?

x.q);

  inta,q;

  (14)下面的函数定义是某函数模板能够生成的函数实例

  intsquare(intn){returnn*n;

  doublesquare(doublen){returnn*n;

  由此可知,该函数模板的定义是【15】

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1