复旦华浦联合IT认证鉴定中心内部测试题笔试.doc_第1页
复旦华浦联合IT认证鉴定中心内部测试题笔试.doc_第2页
复旦华浦联合IT认证鉴定中心内部测试题笔试.doc_第3页
复旦华浦联合IT认证鉴定中心内部测试题笔试.doc_第4页
复旦华浦联合IT认证鉴定中心内部测试题笔试.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

复旦-华浦ISEP第二学期内部测试题复旦华浦联合IT认证鉴定中心软件工程师(ISEP)职业技能考核C+ 笔试试卷日期: 2006-01-19课程:ISEP 2005学期: 第二学期时间:1小时 总分数:100 针对以下题目请选择正确答案(每道题目有一个或多个正确的答案)。针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有正确答案,则该题不得分,以下每题2分。1)#include class basepublic:void who()coutbase classendl;class derive1:public basepublic:void who()coutderive1 classendl;class derive2:public basepublic:void who()coutderive2 classwho();p=&obj2;p-who();p=&obj3;p-who();obj2.who();obj3.who();以上程序的执行结果为()。(选择一项)a)base classbase classbase classderive1 classderive2 classb)base classderive1 classderive2 class derive1 classderive2 classc)base classbase classbase classbase classbase classd)代码运行出现错误2)以下程序的执行结果是()。(选择一项)#includevoid func(int),func(double);void main()double a=88.18; func(a);char b=a;func(b);void func(int x) coutxendl;void func(double x) coutx,;a)88,97b)88.18,97c)88, ad)88.17,a3)运算符重载函数的实现方式是()。(选择两项)a)成员函数b)友元函数c)内联函数d)带默认参数的函数4)#include iostream.hclass Npublic:N(int i)m=i;operator int();private:int m;N:operator int()return 2*m-2;void main()N n(12);int a=n;coutaendl;a+=n;coutaendl;coutint(n)endl;程序运行的结果是()。(选择一项)a)224444b)222244c)224422d)2222225)下面()throw表达式是错误的。(选择一项)a)class exceptionType ;throw exceptionType();b)int excpObj;throw excpObj;c)enum mathErroverflow,ubderflow,zerodivide;throw zerodivide();d)int *pi=&excpObj;throw pi;6)下列关于对象概念的描述中,()是错误的。(选择一项)a)对象就是C语言中的结构变量b)对象代表着正在创建的系统中的一个实体c)对象是一个状态和操作(或方法)的封装体d)对象之间的信息传递是通过消息进行的7)class ConcreteBasepublic:explicit ConcreteBase(int);virtual ostream& print(ostream&);virtual ConcreteBase();static int object_count();protected:int _id;static int _object_count; 基于上述代码,下面代码有错误的是()。(选择一项)a)class C1:public ConcreteBasepublic:C1(int val):ConcreteBase(val)/b)class C2:public C1public:C2(int val):C1(val)/.c)class C3:public C2public:C3(int val):C2(val),_object_count(val)/8)下列关于运算符重载的描述中,()是正确的。(选择一项)a)可以改变运算数的个数b)可以改变优先级c)可以改变结合性d)不可以改变语法结构9)关于纯虚函数和抽象类的描述中,()是错误的(选择一项)a)纯虚函数是一种特殊的虚函数,它没有具体的实现b)抽象类是指具有纯虚函数的类c)一个基类中说明有纯虚函数,该基类的派生类一定不再是抽象类d)抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出10)以下某个类的代码中,错误的行是()。(选择一项)Class Csampleint a=2.5; / (A)Csample(); /(B)public:Csample(int wal); / ( C)Csample(); / (D) a)A行错误b)B行错误c)C行错误d)D行错误11)下面template class的声明或定义是不合法的。(选择三项)a)template class Container1;template class Container1;b)template class container2;c)templateclass Container3;d)templateclass Contaner4;e)templateclass Container5;templateclass container5;12)关于动态绑定的下列描述中,()是错误的。(选择两项)a)虚函数是动态绑定执行的b)动态绑定是在运行时确定所调用的函数代码c)动态绑定调用函数操作是根据指向对象的指针或对象引用来判断的d)动态绑定是在编译时确定操作函数的13)在ios中提供控制格式的标志位中,()是转换为十六进制形式的标志位。(选择一项)a)hexb)octc)decd)left14)重载运算符就是在类中定义特殊的成员函数,下列成员函数()属于重载运算符函数。(选择两项)a)void -();b)void operator -();c)void operator add();d)sample operator +(sample object);15)class sampleprivate: int data; public: sample()data=10; operator int()return data;下列操作()是正确的。(选择两项)a)sample obj;int x=obj;b)int x=20;sample obj=x;c)sample obj;int x=int(obj);d)int x=20;sample obj=int(x);16)通常复制构造函数的参数是()。(选择一项)a)某个对象名b)某个对象的成员名c)某个对象的引用名d)某个对象的指针名17)以下程序运行的结果是()。(选择一项)#include iostream.hclass CSampleprivate:int i;static int k;public:CSample();void Display();CSample:CSample()i=0;k+;void CSample:Display()couti=i+,k=kendl;int CSample:k=0;void main()CSample a,b;a.Display();b.Display();a)i=1,k=1i=2,k=2b)i=0,k=2i=0,k=2c)i=0,k=1i=1,k=2d)i=1,k=2i=1,k=218)#include #include void main()cout.fill(*);cout.width(10);cout123.45endl;cout.width(8);cout1234.45endl;cout.width(4);cout1234.45endl;程序运行的结果是()。(选择一项)a)*123.45*1234.45*1234.45b)*123.45*1234.451234.45c)*123.45*1234.45*1234.45d)*123.45*1234.45*1234.4519)在C+中,关于下列设置参数默认值的描述中,正确的是()。(选择一项)a)不允许设置参数的默认值b)设置参数默认值只能在定义函数时设置c)在函数声明中,一旦给形参列表中的一个参数赋了默认值,后续所有参数也都必须有默认值.d)设置参数默认值时,应该全部参数都设置20)允许有选择地隐藏类中的属性和方法的过程被称为()。(选择一项)a)封装b)多态c)继承21)以下程序的执行结果是( )。(选择一项)#includevoid func(int),func(double);void main()double a=88.18; func(a);char b=a;func(b);void func(int x) coutxendl;void func(double x) coutx,;a)88,97b)88.18,97c)88, ad)88.17,a22)# include #define SQR(x) x*x void main() int a=10,k=2,m=1; a/=SQR(k+m); couta; 执行上面的C+程序后,a的值是( )(选一项)a)10b)2c)9d)023)#include int &func(int&num)num+;return num; void main() int n1,n2=5;nl=func(n2); coutn1“n2endl;上面的C+程序运行的结果是( ).(选1项)a)56b)65c)66d)5524)#include int &fn(int&num) num+; return num; ; void main() int a=3, b=4 ,c=7; a=fn(b); b=fn(c); c=fn(a); couta; coutb; coutc; 在C+中,以上程序的运行结果为( )。(选择一项)a)685b)454c)686d)86825)在C+中,下列关于内联函数的描述,正确的有( )(两项)a)内联函数比普通函数的执行速度快b)内联函数和普通函数一样在调用时都有一个保护现场的过程c)内联函数在编译过程就将函数体插入程序中d)调用内联函数比普通函数节约内存空间26)C+关于const关键字定义常量的描述( )是正确的(选两项)a)const定义的实体,它的值在程序运行时可以修改。b)const定义的实体,它的值在程序运行时不能被修改。c)const定义的常量必须在定义时赋值。d)const常量可以在定义时不用赋值,而在程序运行时赋值。27)关键字 _ 说明对象或变量初始化后不会被修改。(选择一项)a)staticb)publicc)constd)inline28)下列关于函数重载的描述,()是正确的。(选择三项)a)函数重载定义了一组名称相同的函数,使用的参数列表相同。b)函数重载定义了一组名称相同的函数,使用的参数列表不同。c)同一类中的同名函数可以构成函数重载。d)子类函数和父类函数同名,参数列表不同.,不能构成函数重载。29)class Oneclass void One Class(int x)a=x /1 int funl(int x ,int y) /2 a=x; b=y int fun1(int x,int y,int z=0 /3 a=x; b=y; c=z; static void fun2()a=199; /4 private: int a,b; 在C+中,上面是类OneClass的定义 ,对定义中语句描述正确的是( ). (选择一项)a)语句1是类OneClasss 的构造函数定义b)语句2和3实现类成员函数的重载c)语句4实现对类的成员变量a的更新操作d)语句1, 2. 3和4都不正确30)在C+中,下列带默认参数的函数的声明,( )是正确的.(选2项)a)void func(int=l,int=3,chara);b)void func(int num1,int num2,char chb);c)void func(int num12,int num2,int chc);d)void func(int nunl2,int num25,cbar ch);31)在C+中,下列选项正确的是( )。(选一项)a)main() coutx; int x=7;return 0;b)char *s =Hello,My world! delete s;c)在类Time中声明如下的函数原型:void Time(int);d)在类Employee中声明如下的函数原型:Employee(const char *, const char *);32)下列C+代码的正确输出是( )。 (选择一项)# include int global =20;void main ()int global=200;cout The value of global is :getdate( );b)today_ptr:getdate( );c)today_ptr.getdate( );d)getdate(today_ptr);35)class sampleprivate: int num;public: void display();void main()sample object1;sample object2;object1.display();object2.display();下列描述()是正确的(选两项)a)程序运行时,对象object1 object2公用num的存储空间b)程序运行时,对象object11,object2的成员num分别存储在各自对象的存储空间c)程序运行时,对象object1, object2 执行display成员函数时,执行的代码分别存储在各自对象的存储空间d)程序运行时,对象object1, object2 执行display成员函数时,执行的代码公用同一存储空间36)C+中,析构函数是在销毁对象时自动调用的成员函数,它具有( )特点。(选择一项)a)可以被对象直接调用b)与其所属的类同名,并在其前有“”符号c)可以有简单数据类型的参数列表,并且可以返回任何数据类型d)必须在每个类中显式声明37)#includeclass stringpublic:char *str;string(char *s=”)int len=strlen(s);str=new charlen+1;strcpy(str,s);string()delete str;void display()coutstrendl;void main()string s1(“hello world”);string s2;s2=s1;s1.display();s2.display();上面的C+程序运行的结果是( )。(选择一项)a)hello worldb)hello world hello worldc)程序运行由于访问空指针而出现异常d)没有输出,但运行良好38)判断下述说法哪些是正确的?( ) (选择一项)a)重载 插入运算符是为了处理所有的标准数据类型,包括字符串、内存地址和所有用户字定义的数据类型b)流操作器ws 可跳过输入流中的起始空格。c)假定未改变精度值使浮点数按指定精度输出,则当设置ios:showpoint标志位时,浮点数被强制以默认精度格式(6位小数位)输出d)流操作器dec、oct 、hex只对下一个输出整数有效。39)在C+中,关键字friend可以出现( )。(选择两项)a)main()中b)类的私有或公共部分中c)允许其他类访问的类中d)期望访问其他类的类中40)已知二元运算符+的重载如下定义:sample sample:operator+(sample obj)sample temp;temp.count=count+obj.count;return temp;下列使用+运算符的操作( )是正确。(选两项)a)sample obj1,obj2,obj3;obj1=obj2+obj3;b)sample obj1,obj2;obj1=+obj2;c)sample obj1,obj2,obj3,obj4;obj1=obj2+obj3+obj4;d)sample obj1,obj2;obj1=obj2+;41)在C+中,下列关于友元类的描述,( )是正确的。(选2项)a)当一个类的所有成员函数或大部分成员函数需要访问另一个类时,可以将该类声明为另一个类的友元类b)当某个类的所有成员函数或大部分成员函数需要访问另一个类时,可以将另一个类声明为该类的友元类c)友元类中的不是所有函数都是声明类的友元函数d)友元类中的所有成员函数可以访问声明类中的私有数据成员42)class employeeprivate: int a;protected: int b;public: int c:;class diredtor:public employee ;在main()中,下列操作()是正确的(选两项)a)employee obj;obj.b=1;b)employee obj;obj.b=10;c)employee obj;obj.c=3;d)employee obj;obj.c=20;43)下列关于访问说明符public, protected和private 的描述, ( )是正确的(选择二项)a)声明为这三种类型的成员都可以从自身类访问b)public和protected成员可以被派生类访问c)只有public成员可以被派生类访问protected和private 成员都不能被类外的对象访问d)只有public成员可以被类外的对象访问,protected和private成员都不能派生类访问44)#includeclass Xpublic:virtual void func() cout ”Base function n”;class X1 : public Xpublic:virtual void func() cout func();P = &d1;P-func();P = &d2; P-func();上面C+代码的正确输出是( )。(选择一项)a)Base functionDerived f

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论