第一范文网 - 专业文章范例文档资料分享平台

全国计算机二级C++等级考试真题及答案

来源:用户分享 时间:2025/10/17 13:11:56 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

double CTax)

:base(CBase), bonus(CBonus), tax(CTax){}

double getPay()const; //返回应付工资额

Wages operator+(Wages w)const; //重载加法 };

double Wages::getPay()const {return base+bonus-tax;}

Wages Wages::operator+(Wages w)const

{ return Wages(base+w.base, bonus+w.bonus, tax+w.tax); }

int main(){

Wages wl(2000,500,100),w2(5000,1000,300); cout<<(wl+w2).getPay()<

}(15)有如下程序: #include using namespace std; class Pet{

char name[10]; public:

Pet(char*name){strcpy(this->name, name);} const char*getName()const {return name;} virtual void call()const=0; };

class Dog: public Pet{ public:

Dog(char*name):Pet(name){}

void call()const{cout<<\汪汪叫\};

class Cat:public Pet{ public:

Cat(char*name):Pet(name){}

void call()const{cout<<\喵喵叫\};

int main(){

Pet *pet1=new Dog(\哈克\ *pet2=new Cat(\吉米\cout<getName(); pet1->call(); cout<

cout<getName(); pet2->call();

cout<

程序的输出结果是__哈克汪汪叫__ __吉米喵喵叫__

2008年9月二级 C++笔试试卷参考答案 二、填空题 (6)void (7)X2+k-1 (8)2,3 (9)10pumpkin(s) (10)else return n*Fun(n-1); (11)Sample::data (12)p=new int; *p=s.*p; (13)operator + (14)8100

2009年9月全国计算机二级笔试C++

一、选择题(1-10,21-40每题2分,11-20每题1分)

(11)已知函数FA调用FB,若要把这两个函数定义在同一个文件中,则 D A)FA必须定义在FB之前 B)FB必须定义在FA之前

C)若FA定义在FB之后,则FA的原型必须出现在FB的定义之前 D)若FB定义在FA之后,则FB的原型必须出现在FA的定义之前 (12)有如下两个类定义 C class AA{}; class BB{ AA v1,*v2; BB v3; int *v4; };

其中有一个成员变量的定义是错误的,这个变量是 A)v1 B)v2 C)v3 D)v4

由于AA和BB都是类的定义,在类定义中无法声明一个自己的对象,所以在BB的类定义中,企图声明一个BB类的对象,是非法的。 (13)有如下类定义: B class XX{ int xdata; public:

XX(int n=0) : xdata (n) { } };

class YY : public XX{ int ydata; public:

YY(int m=0, int n=0) : XX(m), ydata(n) { } };

YY类的对象包含的数据成员的个数是 A)1 B)2 C)3 D)4

(14)下列有关运算符函数的描述中,错误的是 C A)运算符函数的名称总是以operator为前缀

B)运算符函数的参数可以是对象

C)运算符函数只能定义为类的成员函数(友元函数)

D)在表达式中使用重载的运算符相当于调用运算符重载函数 (15)下列关于模板形参的描述中,错误的是 B A)模板形参表必须在关键字template之后 B)模板形参表必须用括弧( )括起来 C)可以用class修饰模板形参

D)可以用typename修饰模板形参

(16)在下列枚举符号中,用来表示“相对于当前位置”文件定位方式的是 A

A)ios_base::cur B)ios_base::beg C)ios_base::out D)ios_base::end (17)下列字符串可以用作C++标识符的是 D

A)2009var B)goto C)test - 2009 D)_123 (18)下列枚举类型的定义中,包含枚举值3的是 A A)enum test {RED, YELLOW, BLUE, BLACK}; B)enum test {RED, YELLOW=4, BLUE, BLACK}; C)enum test {RED=-1, YELLOW,BLUE, BLACK}; D)enum test {RED, YELLOW=6, BLUE, BLACK}; (19)有如下程序段: C int i=1; while (1) { i++;

if(i == 10) break;

if(i%2 == 0) cout << '*'; }

执行这个程序段输出字符*的个数是

A)10 B)3 C)4 D)5 (20)已知数组arr的定义如下: D int arr[5] = {1,2,3,4,5};

下列语句中输出结果不是2的是 A)cout << *arr+1 <

(21)计算斐波那契数列第n项的函数定义如下:B Int fib(int n){

if (n == 0) return 1; else if (n == 1) return 2;

else return fib(n-1)+fib(n-2); }

若执行函数调用表达式fib(2),函数fib被调用的次数是 A)1 B)2 C)3 D)4

(22)Sample是一个类,执行下面语句后,调用Sample类的构造函数的次数是 D Sample a[2], *p = new Sample;

A)0 B)1 C)2 D)3 (23)下列关于虚基类的描述中,错误的是 C

A)使用虚基类可以消除由多继承产生的二义性

B)构造派生类对象时,虚基类的构造函数只被调用一次 C)声明“class B : virtual public A”说明类B为虚基类 D)建立派生类对象时,首先调用虚基类的构造函数

(24)将运算符重载为类成员函数时,其参数表中没有参数,说明该运算是 B

A)不合法的运算符 B)一元运算符 C)无操作数的运算符 D)二元运算符 (25)有如下模板声明: D

template class A; 下列声明中,与上述声明不等价的是 A)template class A; B)template class A; C)template class A; D)template class A; (26)下列关于C++流的描述中,错误的是 A

A)cout>>'A'表达式可输出字符A B)eof()函数可以检测是否到达文件尾 C)对磁盘文件进行流操作时,必须包含头文件fstream

D)以ios_base::out模式打开的文件不存在时,将自动建立一个新文件 27)有如下程序:C #include using namespace std; class Toy{ public:

Toy(char* _n) { strcpy (name,_n); count++;} ~Toy(){ count--; }

char* GetName(){ return name; } static int getCount(){ return count; } private:

char name[10]; static int count; };

int Toy::count=0; int mail(){

Toy t1(“Snoopy”),t2(“Mickey”),t3(“Barbie”); cout<

运行时的输出结果是

A)1 B)2 C)3 D)运行时出错

(28)有如下程序 B #include using namespace std; class A { public:

A(int i):rl(i) { }

void print( ) {cout<<'e'<

void print( ) const {cout<<'C'<

全国计算机二级C++等级考试真题及答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c49fgc5soue670et7c26i4qfr0177x6016iw_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top