全国计算机二级C++等级考试真题及答案.doc
《全国计算机二级C++等级考试真题及答案.doc》由会员分享,可在线阅读,更多相关《全国计算机二级C++等级考试真题及答案.doc(43页珍藏版)》请在咨信网上搜索。
1、2007年9全国计算机等级考试二级笔试试卷一、选择题(每小题2分,共70分)(11)在函数中,可以用auto,extem,register,和static这四个关键字中的一个来说明变量的存储类型,如果不说明存储类型,则默认的存储类型是 A A auto B extem C register D static(12)对于一个类定义,下列叙述中错误的是 B A 如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数 B 如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数 C 如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数 D 如果已经定义了构造函数和拷贝构造函数
2、,编译器不会生成任何构造函数(13)如果派生类以public方式继承基类,则原基类的protected成员和public成员在派生类中的访问类型分别是 D A public和 public B public和protected C protected 和 public D protected 和 protected(14)下列运算符函数中肯定不属于类FunNumber的成员函数的是 D A int operator-(FunNumber) B FunNumber operator-() C FunNumber operator-(int) D int operator (FunNumber)(
3、15)C+中的模板包括 C A 对象模板和函数模板 B 对象模板和类模板 C 函数模板和类模板 D 变量模板和对象模板(16)如果调用C+流进行输入输出,下面的叙述中正确的是 A A 只能借助于流对象进行输入输出 B 只能进行格式化输入输出 C 只能借助于cin和cout进行输入输出 D 只能使用运算符 和 进行输入输出(17)下列符号中不属于C+关键字的是 D A friend B namespace C continue D byte(18)下列各组的量申明中,含义相同的一组是 B A unsigned long int 和 long B signed short int 和 short
4、B unsigned short 和 short D short int 和int(19) 必须用一对打括号括起来的程序段是 D A switch 语句中的case标号语句 B if 语句的分支 C 循环语句的循环体 D 函数的函数体(20)语句的int*p=&k定义于指针P,于这个语句等效的语句序列是 A A int*p;p=&k B int*p;p=k C int*p;*p=&k D int*p;*p=k(21)关于函数重载,下列叙述中错误的是 C A 重载函数的函数名必须相同 B 重载函数必须在函数个数或类型上有所不同 C 重载函数的返回值类型必须相同 D 重载函数的函数体可以有所不同(
5、22)有如下头文件 Int f1(); Static int f2(); Class MA Public Int f3(); Static int f4();(静态函数) ;在所描述的函数中,具有隐含的this指针的是 C A f1 B f2 C f3 D f4(23)派生类的成员函数不能访问基类的 C A 共有成员和保护成员 B 共有成员 C 私有成员 D 保护成员(24)下列关于运算符重载的描述中,正确的是 A A 运算符重载为成员函数时,若参数表中五参数,重载的是一元运算符 B 一元运算符只能作为成员函数重载 C 二元运算符重载为非成员函数时,参数表中有一个参数 D C+中可以重载所有的
6、运算符(25)下列关于类模板的模板参数的叙述中,错误的是 D A 模板参数可以作为数据成员的类型 B 模板参数可以作为成员函数的返回类型 C 模板参数可以作为成员函数的参数类型 D 模板函数不能作为成员函数的局部变量的类型(26)已知一程序运行后执行的第一个输出操作是 B Coutsetw(10)setfill(*)1234 则此操作的输出结构是 A 1234 B *1234 C *1234 D 1234*(27)有如下程序 #include Using namespace std; Class myclass Public: MyClass()+count; MyClass()-count;
7、 Static int getcount()return count;Private Static int count;Int MyClass:count=0;Int main() Myclass obj; Coutobj,getCount(); MyClass*ptr=new MyClass; CoutMyClass:getcount(); Delete ptr; CoutMyClass:gercount(); Return(); 程序的输出结果是 AA 121 B 232 C 221 D 122程序的输出结果是 C A val=10 const:val=20 B const:val=10
8、const:val=20 C const:val=10 val=20 D val=10 val=20(29)有如下程序 #include Using namespace std; Class part Public; Part(int x=():val(x)coutval; -part()coutval; Private; Int val; ; Class whole Public; Whole(int x,int y,int z=0):p2(x),p1(y),val(z)coutval; Whole()countval; Private; Part p1,p2; Int val; ; Int
9、 maint Whole obj(1,2,3); Resturn(); 程序输出的结果是 DA 123321 B 213312 C 213 (30) 有如下程序: #include Using namespace std; Class base Public: Base(int x=0)coutx; ; Class derived : public base Public: Derivedrin(x=y)coutx; Priblic: Base val; ; Int main() Derived d(!); Return(); 程序的输出结果是 C A 0 B 1 C 01 D 001(31)
10、若有如下类定义: Classs B Void fun1() Protected; Double varl; Public: Void fun2() ; Class D:public B Protected; Void fun3() ;已知obj是类D的对象,下列语句中不违反成员访问控制的权限的是 C A obj.fun1(); B obj.var1; C obj.fun2(); D obj.fun3();(32)有如下程序: #include Using namespace sid; Class base Public; Void output()cout1; Virtual void pri
11、nt() coutB; ; Class derived:public base Public: Void output()cout2; Void print()coutoutput(); Ptr-print(); Delete ptr; Return(); 程序的输出结果是 D A 1B B 1D C 2B D 2D33.下列是重载乘法运算的函数原型声明,其中错误的是 A A myclass operator*(double,double);B myclass operator*(double,myclass);C myclass operator*(myclass,double);D myc
12、lass operator*( myclass , myclass);*是二元运算符,而且标准库里面已经有double*double的运算符定义,返回值为double,所以A的重载是错误的 34.A (35) 有如下程序: #include using namespace std; class B public: virtual void show()coutb; ; class D:public B public: void show()coutshow(); void fun2(B &ref)ref.show(); void fun3(B b)b.show(); void main() B
13、 b,*p=new D; D d; fun1(p); fun2(b); fun3(d); 程序的输出结果是 D A DBD B BBD C DBB D Dbb二、填空题(每空2分,共三十分)(6).在有定义语句:int a=3,b=2,c=1;则表达式ab?a:b的值是_(7).执行下列语句后,变量sum的值是_.Int sum =0;For (int j=I;j=I;j+) For (int j=I;j=I;j+) Sum+;(8).已知有函数f的定义如下: Int f() Static int -6; s-2; return s 则在某程序中第二次执行函数用语句f();时,函数f的返回值是
14、_.(9)已知如下程序得输出结果时23,请将划线处缺失得部分补充完整。 #include Using namespace std; Class myclass Public: Void print() coutcout23; Int main() Myclass*p=new myclass(); _print(); Return(); Class sample Public: Sample() _ (14)请将如下程序补充完整,使得输出结果为bbaa #include Using namespace std; Class A Public: _cout”aa”; ; Class B :publ
15、ic A Public: B()cout”bb”; ; Int main () B*p=new B; Delete p; Return(); (15)请将下列栈类stack补充完整 Class stack Private; Int plist100; /int 数组,用于存放栈的元素 Int top; /栈顶元素(数组下标) Public: Stack():top(0) Void push(sons int &item); /新元素item压入栈 Int pop(void); /将栈顶元素弹出栈 ; Void stack:pbsh(const int &item) If (top =99) /
16、如果栈满,程序结束 Exit(1); Top+; /栈顶指针增1 _【15】_; Int stack:pop() If (top0) /如果栈空,程序结束 Exit(1); Return plishtop-; 参考答案6.2 7.6 8.4 9.(*p) 10.ABBA 11.void Base:fun()12.virtual display()=0; 14.-A() 15.pListtop=item2008年9月计算机等级考试一、选择题(每小题2分,共70分)(11)在下列原型所示的 C+函数中,按“传值”方式传递参数的是(A)。A)void f1(int x); B)void f2(int
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国计算机 二级 C+ 等级 考试 答案
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。