2013年9月全国计算机等级《二级C++》命题预测试卷四

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
5

在C++中,cin是一个(  )。

  • A.类
  • B.对象
  • C.模板
  • D.函数
6

下列关于运算符重载不正确的是(  )。

  • A.运算符重载不能改变运算符的操作数个数
  • B.运算符重载不能改变运算符的优先级
  • C.运算符重载不能改变运算符的结合性
  • D.运算符重载能改变对预定义类型数据的操作方式
7

若要对Date类中重载的加法运算符成员函数进行声明,下列选项中正确的是(  )。

  • A.Data+(Data);
  • B.Dataoperator+(Data);
  • C.Data+operator(Data);
  • D.operator+(Data.Data);
9

下面程序的运行结果为(  )。

#include

classA

{

intnum;

public:

  • A(inti){num=i;)
  • A(A&a){num=a.num++;}&nbsp;&nbsp;&nbsp;&nbsp;voidprint(){cout<<num;}&nbsp;&nbsp;&nbsp;&nbsp;};&nbsp;&nbsp;&nbsp;&nbsp;voidmain()&nbsp;&nbsp;&nbsp;&nbsp;{
  • Aa(1),b(a);
  • A.print();
  • B.print();&nbsp;&nbsp;&nbsp;&nbsp;}
  • C.11B.12
  • D.21D.22
11

下面程序的结果是(  )。

#include(iostream.h>

classA

{

inta;

public:

  • A(  ):a(1){}&nbsp;&nbsp;&nbsp;&nbsp;voidshowa(  )(cout<};
  • classB&nbsp;&nbsp;&nbsp;&nbsp;{
  • inta;&nbsp;&nbsp;&nbsp;&nbsp;public:
  • B(  ):a(2){}&nbsp;&nbsp;&nbsp;&nbsp;voidshowa(  ){cout<};
  • classC:publicA,publicB&nbsp;&nbsp;&nbsp;&nbsp;{
  • inta;&nbsp;&nbsp;&nbsp;&nbsp;public:
  • C(  ):a(3){}&nbsp;&nbsp;&nbsp;&nbsp;voidshowa(  ){cout<};&nbsp;&nbsp;&nbsp;&nbsp;voidmain(  )&nbsp;&nbsp;&nbsp;&nbsp;{
  • CC;&nbsp;&nbsp;&nbsp;&nbsp;showa(  );&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
  • A.1
  • B.2
16

数据库设计包括两个疗面的设计内容,他们是(  )。

  • A.概念设计和逻辑设计
  • B.模式设计和内模式设计
  • C.内模式设计和物理设计
  • D.结构特性设计和行为特性设计
17

执行语句:cout<

  • A.123*******0K
  • B.123#######OK
  • C.123********0K********
  • D.123#######OK########
18

设变量已正确定义,下列不能统计出一行中输入字符个数(不包含回车符)的程序段是(  )。

  • A.n=0;while((ch=getchar(  ))!='\n')n++;
  • B.n=0;while(getchar(  )!='\n')n++;
  • C.for(n=0;getchar(  )!='\n';n++);
  • D.n=0;for(ch=getchar(  );ch!='n';n++);
23

有下列程序:

#include

#include

intfun(intn)

{int*P;

p=(int*)malloc(sizeof(int));

*P=n;return*P;

}

voidmain(  )

{inta;

  • a=fun(10);printf("%d\n",a+fun(10));}&nbsp;&nbsp;&nbsp;&nbsp;程序的运行结果是(  )。
  • A.0
  • B.10
  • C.20
  • D.出错
25

在下面的运算符重载函数的原型中,错误的是(  )。

  • A.Volumeoperator-(double,double);
  • B.doubleVolume::operator-(double);
  • C.VolumeVolume::operator-(Volume);
  • D.Volumeoperator-(Volume);
29

下列对于软件测试的描述正确的是(  )。

  • A.软件测试的目的是证明程序是否正确
  • B.软件测试的目的是使程序运行结果正确
  • C.软件测试的目的是尽可能地多发现程序中的错误
  • D.软件测试的目的是使程序符合结构化原则
31

数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是(  )。

  • A.DB包括DBS和DBMS
  • B.DBMS包括DB和DBS
  • C.DBS包括DB和DBMS
  • D.没有任何关系
33

语句ofstreamf("DATA.DAT",ios_base::app|ios_base::binary);的功能是建立流对象f,试图打开文件DA-TA.DAT并与之连接,而且(  )。

  • A.若文件存在,将文件指针定位于艾件首;若文件不存在,建立一个新文件
  • B.若文件存在,将其截为空文件;若文件不存在,打开失败
  • C.若文件存在,将文件指针定位于文件尾;若文件不存在,建立一个新文件
  • D.若文件存在,打开失败;若文件不杉在,建立一个新文件
35

生成派生类对象时,派生类构造函数调用基类构造函数的条件是(  )。

  • A.无需任何条件
  • B.基类中显式定义了构造函数
  • C.派生类中显式定义了构造函数
  • D.派生类构造函数明确调用了基类构造函数
36

下列描述中,错误的是(  )。

  • A.公有继承时基类中的公有成员在派生类中仍是公有成员
  • B.公有继承时基类中的保护成员在派生类中仍是保护成员
  • C.保护继承时基类中的公有成员在派生类中仍是公有成员
  • D.保护继承时基类中的保护成员在派生类中仍是保护成员
37

下面关于数组的初始化正确的是(  )。

  • A.charstr[]={'a','b','e'}
  • B.charstr[2]={'a','b','e')
  • C.charstr[2][3]={{'a','b'},{'C','d'},{'e','f'}}
  • D.charstr()={'a','b','C'}
38

对于复制构造函数和赋值操作的关系,正确的是(  )。

  • A.复制构造函数和赋值操作是完全一样的操作
  • B.进行赋值操作时,会调用类的构造函数
  • C.当调用复制构造函数时,类的对象正在被建立并被初始化
  • D.复制构造函数和赋值操作不能在同一个类中被同时定义
41

已知Value是一个类,Value是Value的一个对象。

下列以非成员函数形式重载的运算符函数原形中,正确的是(  )。

  • A.Valueoperator+(Valuev,inti);
  • B.Valueoperator+(Valuev=value,inti);
  • C.Valueoperator+(Valuevinti=O);
  • D.Valueoperator+(Valuev=value,inti=O);
42

下列关于运算符函数的描述中,错误的是(  )。

  • A.运算符函数的名称总是以0perator为前缀
  • B.运算符函数的参数可以是对象
  • C.运算符函数只能定义为类的成员函数
  • D.在表达式中使用重载的运算符相当于调用运算符重载函数