04-11历年计算机二级C++笔试试题及答案 联系客服

发布时间 : 星期五 文章04-11历年计算机二级C++笔试试题及答案更新完毕开始阅读334af0e919e8b8f67c1cb9cb

using namespace std; int main( ) {

cout.fill('*'); cout.width(6); cout.fill('#'); cout << 123 << endl; return 0; }

执行后的输出结果是 A)###123 B)123### C)***123 D)123***

(27)在下列函数原型中,可以作为类AA构造函数的是 A)void AA(int); B)int AA( ); C)AA(int)const; D)AA(int);

(28)下列关于this指针的叙述中,正确的是 A)任何与类相关的函数都有this指针 B)类的成员函数都有this指针 C)类的友元函数都有this指针 D)类的非静态成员函数才有this指针 (29)有如下程序: #include

using namespace std; class Test { public:

Test( ) { n+=2; } ~Test( ) { n-=3; }

static int getNum( ) { return n; } private: static int n; };

int Test::n = 1; int main( ) {

Test* p = new Test; delete p;

cout << \est::getNum( ) << endl; return 0; }

执行后的输出结果是

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

(30)有如下程序: #include

using namespace std; class A { public:

A( ) { cout << \};

class B { public: B( ) { cout << \class C : public A { B b; public:

C( ) { cout << \};

int main( ) { C obj; return 0; } 执行后的输出结果是 A)CBA B)BAC C)ACB D)ABC

(31)有如下类声明: class XA{ int x; public:

XA(int n){ x=n;} };

class XB: public XA{ int y; public: XB(int a,int b); };

在构造函数XB的下列定义中,正确的是 A)XB::XB(int a,int b): x(a), y(b){ } B)XB::XB(int a,int b): XA(a), y(b){ } C)XB::XB(int a,int b): x(a), XB(b){ } D)XB::XB(int a,int b): XA(a), XB(b){ } (32)有如下程序: #include

using namespace std; class BASE{ public:

~BASE( ){ cout<<\};

class DERIVED: public BASE { public:

~DERIVED( ){ cout<<\};

int main( ){DERIVED x; return 0 ;} 执行后的输出结果是 A)BASE B)DERIVED C)BASEDERIVED D)DERIVEDBASE

(33)在表达式 x+y*z中, + 是作为成员函数重载的运算符,* 是作为非成员函数重载的运算符。下列叙述中正确的是

A)operator+有两个参数,operator*有两个参数 B)operator+有两个参数,operator*有一个参数 C)operator+有一个参数,operator*有两个参数 D)operator+有一个参数,operator*有一个参数 (34)下面关于C++流的叙述中,正确的是 A)cin是一个输入流对象

B)可以用ifstream定义一个输出流对象 C)执行语句序列char *y=\

D)执行语句序列char x[80]; cin.getline(x,80); 时,若键入 Happy new year

则x中的字符串是\(35)有如下程序: #include

using namespace std; class AA{ int n; public:

AA(int k):n(k){ } int get( ){ return n;} int get( )const{ return n+1;} }; int main( ) { AA a(5); const AA b(6); cout<< return 0; }

执行后的输出结果是 A)55

B)57 C)75 D)77

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

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

(1)数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是 【1】 。

(2)算法复杂度主要包括时间复杂度和 【2】 复杂度。

(3)在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块(桩模块)。其中 【3】 的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。 (4)一棵二叉树第六层(根结点为第一层)的结点数最多为 【4】 个。 (5)数据结构分为逻辑结构和存储结构,循环队列属于 【5】 结构。

(6)下列函数的功能是判断字符串str是否对称,对称则返回true,否则返回false。请在横线处填上适当内容,实现该函数。 bool fun(char *str) {

int i=0, j=0;

while (str[j]) 【6】 ; for(j--; i

return i 【7】 j; }

(7)执行语句序列 int x=10, &r=x; cout><<<'-'<<

输出结果为 【8】 。

(8)下列程序的输出结果为 Object id=0 Object id=1 请将程序补充完整。 #include

using namespace std; class Point { public:

Point(int xx=0, int yy=0) {X=xx; Y=yy; countP++; } ~Point( ) { countP--; } int GetX( ) {return X;} int GetY( ) {return Y;}

static void GetC( ) {cout<<\private: int X,Y;