首页 > 全部 > 二级C++ > 国家二级(C++)机试模拟试卷235

国家二级(C++)机试模拟试卷235

本单篇文档共17403字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 模拟试卷 863人下载
价格: 2.00 原价:¥9.60
收藏

国家二级(C++)机试模拟试卷235

选择题

1.在关系代数运算中,有5种基本运算,它们是( )。(D)

A. 并(∪)、差(_)、交(∩)、除(÷)和笛卡儿积(×)

B. 并(∪)、差(_)、交(∩)、投影(π)和选择(σ)

C. 并(∪)、交(∩)、投影(π)、选择(σ)和笛卡儿积(×)

D. 并(∪)、差(_)、投影(π)、选择(σ)和笛卡儿积(×)

解析:并、差、笛卡儿积、投影和选择是5种基本的运算,其他运算即交、连接和除,均可以通过5种基本的运算来表达。

2.软件设计中模块划分应遵循的准则是( )。(B)

A. 低内聚低耦合

B. 高内聚低耦合

C. 低内聚高耦合

D. 高内聚高耦合

解析:软件设计巾模块划分应遵循的准则是高内聚低偶合、模块大小规模适当、模块的依赖天系适当等。模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解维护,模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高。

3.有如下类定义:

Class Test

{

public:

Test(){a=0;c=0;}//①

int f(int a)eonst{this->a:a;}//②

static int g(){return a;}//③

void h(int b){Test::b=b;};//④

private:

int a;

static int b;

eonst int c;

};

int Test::b=0;

在标注号码的行中,能被正确编译的是( )。(D)

A. ①

B. ②

C. ③

D. ④

解析:只能通过构造函数的参数初始化列表对常数据成员进行初始化,本题中常数据成员为c。①通过默认构造函数初始化c,所以不正确。常成员函数只能引用本类中数据成员,而不能修改它,所以②不正确。静态成员函数由于没有this指针,所以不能访问本类中的非静态成员,所以③错误。

4.关于运算符重载,下列表述中正确的是( )。(C)

A. C++已有的任何运算符都可以重载

B. 运算符函数的返回类型不能声明为基本数据类型

C. 在类型转换符函数的定义中不需要声明返回类型

D. 可以通过运算符重载来创建C++中原来没有的运算符

解析:重载运算符的规则如下:①C++不允许用户自己定义新的运算符,只能对已有的C++运算符进行重载;②C++不能重载的运算符只有5个;③重载不能改变运算符运算对象的个数;④重载不能改变运算符的优先级和结合性;⑤重载运算符的函数不能有默认的参数;⑥重载的运算符必须和用户定义的自定义类型的对象一起使用,至少应有一个是类对象,即不允许参数全部是C++的标准类型。故本题答案为C。

5.有如下程序:

#include<iostream>

using namespace std;

class Pair{

int m,n;

public:

Pair(int j,int k):m(j),n(k){}

int get(){return m;}

int get()const{return m+n;}

};

int main(){

Pair a(3,5);

const Pair b(3,5);

cout<<a.get()<<b.get();

return0;

}

执行这个程序的输出结果是( )。(B)

A. 33

B. 38

C. 83

D. 88

解析:本题考查常对象、常成员函数及构造函数。常对象只能调用常成员函数,所以本题中,对象a为普通对象,执行a.get()后,会执行默认构造函数,输出3;对象b为常对象,执行b.get()后,会执行常构造函数,输出8。

6.下列关于函数的描述中,错误的是( )。(D)

A. 函数可以没有返回值

B. 函数可以没有参数

C. 函数可以是一个类的成员

D. 函数不能被定义为模板

解析:本题考查函数的基础知识,函数可以没有返回值,没有参数,也可以是一个类的成员,函数可以定义为模板,即模板函数。

7.有如下程序:

#include<iostream>

using namespace std;

class MyClass{

public:

MyClass(){++count;}

~MyClass(){一一count;}

static int getCount(){return count;}

private:

statie int count;

};

int MyClass::count=0;

int main()

{

MyClass obj;

cout<<obj.getCount();

MyClass*ptr=new MyClass;

cout<<M#lass::getCount();

delete ptr;

cout<<MyClass::getCount();

return 0;

}

执行这个程序的输出结果是( )。(A)

A. 121

B. 232

C. 221

D. 122

解析:本题考查静态数据成员。静态数据成员在内存中只占一份空间,静态数据成员属于类,即使不定义对象,也会给静态数据成员分配空间,可以被引用。本题中先是定义了一个对象0bj,执行构造函数使得静态数据成员count变为了1,然后又定义了指针对象,执行构造函数后,count变为了2,释放指针后,执行析构函数,使得count变为了1。所以本题答案为A。

8.下列关于C++预定义流对象的叙述中,正确的是( )。(A)

A. cin是C++预定义的标准输入流对象

B. cin是C++预定义的标准输入流类

C. cout是C++预定义的标准输入流对象

D. cout是C++预定义的标准输入流类

解析:cin是C++预定义的标准输入流对象,cout是C++预定义的标准输出流对象。

9.如果表达式–x/y中的“–”和“/”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为( )。(B)

A. operator/(x.operato–(),y);

B. operator/(operator–(x),y);

C. x.operator–().operator/(y);

D. y.operator/(operator–(x));

解析:运算符重载实际上时函数的重载。重载运

本文档预览:3600字符,共17403字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级(C++)机试模拟试卷235

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号