全国计算机等级考试二级C++样题.docx

上传人:b****5 文档编号:4950598 上传时间:2022-12-12 格式:DOCX 页数:7 大小:18.46KB
下载 相关 举报
全国计算机等级考试二级C++样题.docx_第1页
第1页 / 共7页
全国计算机等级考试二级C++样题.docx_第2页
第2页 / 共7页
全国计算机等级考试二级C++样题.docx_第3页
第3页 / 共7页
全国计算机等级考试二级C++样题.docx_第4页
第4页 / 共7页
全国计算机等级考试二级C++样题.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

全国计算机等级考试二级C++样题.docx

《全国计算机等级考试二级C++样题.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级C++样题.docx(7页珍藏版)》请在冰豆网上搜索。

全国计算机等级考试二级C++样题.docx

全国计算机等级考试二级C++样题

全国计算机等级考试二级C++样题

公共基础知识

一、选择题

(1)下列关于栈的叙述正确的是

A)栈是非线性结构     B)栈是一种树状结构  

C)栈具有先进先出的特征  D)栈具有后进先出的特征

(2)结构化程序设计所规定的三种基本控制结构是

A)输入、处理、输出    B)树形、网形、环形  

C)顺序、选择、循环    D)主程序、子程序、函数

(3)结构化程序设计的一种基本方法是

A)筛选法         B)递归法  

  C)归纳法         D)逐步求精法

(4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是:

 A)选择           B)投影 

 C)连接           D)并

二、填空题

1.对于输入为N个数进行快速排序算法的平均时间复杂度是(   )

2.在面向对象方法学中,直接反映了用户对目标系统的要求的模型是(  )

3.软件测试方法中,黑盒测试个白盒测试法是常用的方法,其中黑盒测试法主要是用于测试(  )

4.关系型数据库管理系统中存储与管理数据的基本形式是(  )

C++语言程序设计

一、选择题

(1)C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是()

A)面向过程         B)面向对象 

   C)安全性         D)复用性

(2)C++语言的跳转语句中,对于break和continue说法正确的是()

A)break语句只应用与循环体中  

B)continue语句只应用与循环体中  

C)break是无条件跳转语句,continue不是  

D)break和continue的跳转范围不够明确,容易产生问题

(3)for(intx=0,y=o;!

x&&y<=5;y++)语句执行循环的次数是()

A)0            B)5 

   C)6           D)无次数

(4)考虑函数原型voidtest(inta,int

b=7,char="*"),下面的函数调用中,属于不合法调用的是()

A)test(5);         B)test(5,8);

  C)test(6,"#")        D)test(0,0."*");

(5)下面有关重载函数的说法中正确的是()

A)重载函数必须具有不同的返回值类型; 

  B)重载函数形参个数必须不同;  

C)重载函数必须有不同的形参列表 

  D)重载函数名可以不同;

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

A)构造函数可以设置默认参数; 

   B)构造函数在定义类对象时自动执行  

C)构造函数可以是内联函数; 

   D)构造函数不可以重载

(7)下面描述中,表达错误的是()

A)公有继承时基类中的public成员在派生类中仍是public的  

B)公有继承是基类中的private成员在派生类中仍是private的  

C)公有继承时基类中的protected成员在派生类中仍是protected的  

D)私有继承时基类中的public成员在派生类中是private的

(8)应在下列程序划线处填入的正确语句是()

#include

classBase

{ public:

  voidfun(){cout<<"Base:

:

fun"<};

classDerived:

publicBase

{ voidfun()

  {_____________//显示调用基类的函数fun()

    cout<<"Derived:

:

fun"<  }

};

A)fun();B)Base.fun();C)Base:

:

fun();D)Base->fun();

(9)有如下程序:

#include

classBASE{

  charc;

public:

  BASE(charn):

c(n){}

  virtual~BASE(){cout<};

classDERIVED:

publicBASE{

  charc;

public:

  DERIVED(charn):

BASE(n+1),c(n){}

  ~DERIVED(){cout<};

intmain()

{ DERIVED("X");

  return0;

}

执行上面的程序将输出()

A)XY           B)YX

  C)X            D)Y

(10)在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是()

A)fail           B)eof

  C)bad           D)good

二、填空题

(1)下面程序的打印结果是[1]

#incude

intf(int);

  intmain()

{ inti;

  for(i=0;i<5;i++)

  cout<  return0;

}

intf(inti)

{ staticintk=1;

  for(;i>0;i--)

  k+=i;

  returnk;

}

(2)在用class定义一个类时,数据成员和成员函数的默认访问权限是[2]

(3)含有纯虚函数的类称为[3]

(4)已知intDBL(intn){returnn+n;}和longDBL(longn){returnn+n;}是一个函数模板的两个实例,则该函数模板的定义是[4]

(5)在下面程序的横线处填上适当的语句,使该程序执行结果为10.

#include

classMyClass

{ public:

  MyClass(inta){x=a;}

  [5]//取x值

  private

  intx;

};

intmain()

{ MyClassmy(10);

  cout<  return0;

}

三、上机操作题(改错题1道,简单应用1道,综合应用1道)

1.使用VC6打开考生文件夹下的工程proj1,此工程包含一个源程序文件main.cpp,但该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:

member=0

member=5

menber=10

源程序文件main.cpp清单如下:

#include

classMyClass

{

public:

  MyClass(inti){member=i;}

  voidSetMember(intm){member=m;}

  intGetMember()const{returnmenber;}

  voidprint()cont{cout<<"member="

  intmember;

};

voedmain()

{

/**********found**********/

  MyClassobj1;

  obj1.print();

  MyClassobj2(3);

/**********found**********/

  obj1.member=5;

/**********found**********/

  MyClass.SetMember(10);

  obj1.print();

  obj2.print();

}

2.请编写一个函数intfind(chars[],char

t[]),该函数在字符串s中查找字符串t,如果找到,则返回字符串t在字符串s中的位置(整数值);否则返回-1.注意:

用数组方式及两重循环来实现该函数.

注意:

部分源文件程序已存在文件PROC2,CPP中.

请勿修改主函数main和其他函数中的任何内容,仅在函数find的花括号中填写若干语句.

文件PROC2.CPP的内容如下:

#include

intfind(chars[],chart[]);

constintMAXLINE=256;

intmain()

{ charsource[MAXLINE],rarget[MAXLINE];

  cout<<"Pleaseinputastringforsearching:

\n";

  cin.getline(source,MAXLINE);

  cout<<"Pleaseinputastringyouwanttofind:

\n";

  cin.getline(target,MAXLINE);

  intintpos=find(source,target);

  if(intpos>=0

    cout<<"Findingit.Thetargetstringisatindex"

      <  else

    cout<<"Notfindingit.\n";

  return0;

  }

intfind(chars[],chart[])

{

}

3.使用VC6打开考生文件夹下的工程proj3.此工程包含一个源程序文件main.cpp.其中定义了用于表示日期的类Date,但类Date的定义并不完整.请按要求完成下列操作,将类Date的定义补充完整:

 

(1)定义私有数据成员year,month和day分别用于表示年,月,日,它们都是int型的数据.请在注释"//**2

**"之后添加适当的语句.

 

(2)完成默认构造函数Date的定义,使Date对象的默认值为:

year=1,month=1,day=1,请在注释"//*

*2**"之后添加适当的语句.

 (3)完成重载构造函数Date(inty,intm,int

d)的定义,把数据成员year,month和day分别初始化为参数y,m,d的值,请在注释"//**3*

*"之后添加适当的语句.

 (4)完成成员函数print的类外定义,使其以"年-月-日"的格式将Date对象的值输出到屏幕上.请在注释"//**4

**"之后添加适当的语句.

注意:

除在指定位置添加语句之外,请不要改动程序中的其他内源程序文件main.cpp清单如下:

//main.cpp

#include

classDate{

public:

  //**2**

  Date(inty,intm,intd)

  {

    //**3**

  }

  voidprint()const;

private:

  //datemembers

  //**1**

};

voidDate:

:

print()const

{ //**4**

}

intmain()

{ Datenational_day(1949,10,1);

  national_day.print();

  return0;

}

----------------------------------------------------

参考答案:

公共基础知识:

一:

选择题:

  

(1)D  

(2)C  (3)D  (4)B

二:

填空题:

  

(1)[1]:

O(Nlog2N)

  

(2)[2]:

功能模型

(3)[3]:

软件外部功能

(4)[4]:

二维表

C++程序设计

一:

选择题

1-5:

BBCCC

6-10:

DBCAB

二:

填空题

(1)[1]:

1251121

(2)[2]:

private或私有

(3)[3]:

抽象类

  (4)[4]:

templateTDBL(Tn){returnn+n;}

  (5)[5]:

intGetNum(){returnx;}或intGetNum()const{returnx;}

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

当前位置:首页 > 高等教育 > 军事

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

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