首 页
郑州大学
奥鹏教育
国家开放大学
西南交通大学
成人教育
联大学堂
江苏师大
青书学堂
 
   今天是: 全民学习吧,专业辅导,快速解决您的烦恼,详情请加微信:goodluckgold、QQ:3446094242
  当前位置: 郑州大学远程教育在线测试
       
 
QQ:3446094242
微信号:goodluckgold
课件学习、在线测试、网上考试,如有需要,请加微信或QQ,全程辅导,为您排忧解难!!!
 
《面向对象程序设计》第01章在线测试 《面向对象程序设计》第01章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、下面的步骤不属于C++程序开发步骤的是A、编辑程序B、编译程序C、连接程序D、程序分析 2、断言assert(x<10)的作用是A、如果x的值小于10,则将打印包含行号和文件名的错误信息,而且程序终止B、如果x的值大于或等于10,则将打印包含行号和文件名的错误信息,而且程序终止。C、如果x的值小于10,则将打印包含行号和文件名的错误信息,但程序继续执行D、如果x的值大于或等于10,则将打印包含行号和文件名的错误信息,但程序继续执行。 3、执行完下列语句后,n的值为多少?( ) int n; for (n = 0; n < 100; n++)A、n = 99B、n =100C、n = 101D、n = 99 4、函数的形参和实参结合的本质是A、传值B、传地址C、根据情况而定D、传名字 5、如果程序中有全局变量X和局部变量X,则在局部变量X的作用域内访问全局变量的方法是A、不能访问B、XC、::XD、{X}第二题、多项选择题(每题2分,5道题共10分) 1、下列标识符哪些是合法的?A、ProgramB、-page,C、_lock,D、@mail 2、参数的传递方式可以分为三种,他们是A、按值传递B、按地址传递C、按引用传递D、按数组传递 3、下面函数声明正确的是A、void f1(int a,int b);B、void f2(int a,int c,int b=-1);C、void f3(int a ,int b=-1, int c);D、int f4(…); 4、C++程序中声明变量 int *p1 , *p2 ,m=5, n;下面错误的语句是A、p1=&m; p2=&p1;B、p1=&m; p2=&n;*p1=*p2C、p1=&m;p2=p1;D、p1=&m;*p2=*p1; 5、C++程序种中声明变量如下: int* pInt=new int; float* pFloat=new float[10]; 不能正确撤销上面分配的空间的语句是A、free pInt;free pFloat;B、del_ete pInt;del_ete pFloat;C、del_ete[] pInt;del_ete[] pFloat;D、del_ete pInt;del_ete[] pFloat;第三题、判断题(每题1分,5道题共5分) 1、if ( x = 3 ) 和 if (x = = 3) 这两条语句的作用是一样的。正确错误 2、重载的函数的函数名是相同的,但它们的参数的个数和数据类型不同。正确错误 3、重载的函数的函数名是相同的,但它们的参数的个数、参数数据类型或返回值类型中至少应有一种是不同的。正确错误 4、任何一个用于计算值的公式都可称为表达式。正确错误 5、变量声明int * p [5] 定义了一个指向数组的指针变量p。正确错误
《面向对象程序设计》第02章在线测试 《面向对象程序设计》第02章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、在关键字public后面定义的成员为类的( )成员。A、私有B、公用C、保护D、任何 2、假定 ab 为一个类,则执行 ab x ;语句时将自动调用该类的 ( ) 。A、有参构造函数B、无参构造函数C、拷贝构造函数D、赋值构造函数 3、如果 class 类中的所有成员在定义时都没有使用关键字 pubilc,private,protected ,则所有成员缺省定义为: ( ) 。A、A. publicB、B. protectedC、C. privateD、D. static 4、当一个类对象结束它的生存期的时侯,系统自动调用该类的( )。A、无参构造函数B、带参构造函数C、拷贝构造函数D、析构函数 5、假定AA是一个类,abc是该类的一个成员函数,则参数表中隐含的第一个参数为( B )。A、abcB、*thisC、thisD、this&第二题、多项选择题(每题2分,5道题共10分) 1、下列可以作为类的成员的是( )A、自身类对象的指针B、自身类对象C、自身类对象的引用D、另一个类的对象 2、关于封装,下列说法中正确的是( )。A、通过封装,对象的全部属性和操作结合在一起,形成一个整体B、通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)C、通过封装,每个对象都成为相对独立的实体D、通过封装,对象的属性都是不可见的 3、假定AA为一个类,a为该类私有的数据成员,GetValue()为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的语句错误的是()。A、x.aB、x.a()C、x->GetValue()D、x.GetValue() 4、下面关于静态数据成员的说法错误的是(BCD)A、静态数据成员是类的所有对象所共有的B、静态数据成员要在构造函数内初始化C、类的每个对象有自己的静态数据成员D、静态数据成员不能通过类的对象调用 5、假定AB为一个类,则执行 “AB *s=new AB(a,5);”语句的结果是A、动态生成对象AB赋值给变量sB、动态生成对象sC、如果对象AB中有公有成员a,则s->a可以访问该成员D、动态生成对象AB,该对象的地址赋值给变量s第三题、判断题(每题1分,5道题共5分) 1、 析构函数的作用是在对象被撤销时收回先前分配的内存空间。正确错误 2、 静态成员函数允许访问类的数据成员。正确错误 3、 如果类A的声明中将类B的对象作为数据成员,则称类A和类B之间是一种has-a关系,类B是类A的子对象。正确错误 4、 建立类的对象时,先调用各个对象成员的构造函数,初始化相应的对象成员,然后才执行类的构造函数,初始化类中其他成员。正确错误 5、 this是一个隐含于每一个类的成员函数的特殊指针,它是一个指向正在被某个成员函数操作的对象的指针。正确错误
《面向对象程序设计》第03章在线测试 《面向对象程序设计》第03章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、假定AB为一个类,则执行 “AB r1=r2;”语句时将自动调用该类的( )。A、无参构造函数B、带参构造函数C、赋值重载函数D、拷贝构造函数 2、如果 class 类中的所有成员在定义时都没有使用关键字 pubilc,private,protected ,则所有成员缺省定义为: ( ) 。A、publicB、protectedC、privateD、static 3、当一个类对象结束它的生存期的时侯,系统自动调用该类的( )。A、无参构造函数B、带参构造函数C、拷贝构造函数D、析构函数 4、假定AB为一个类,则执行“AB *p=new AB(1,2);”语句时共调用该类构造函数的次数为( )。A、0B、1C、2D、3 5、假定AB为一个类,px为指向该类的一个含有n个对象的动态数组的指针,则执行“del_ete []px;”语句时共调用该类析构函数的次数为( )。A、0B、1C、nD、n+1第二题、多项选择题(每题2分,5道题共10分) 1、假定AA为一个类,a为该类私有的数据成员,GetValue()为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的语句错误的是( )。A、x.aB、x.a()C、x->GetValue()D、x.GetValue() 2、静态数据成员的初始化不是在( )中进行的。A、构造函数B、任何成员函数C、所属类D、全局区 3、下面关于静态数据成员的说法错误的是( )A、静态数据成员是类的所有对象所共有的B、静态数据成员要在构造函数内初始化C、类的每个对象有自己的静态数据成员D、静态数据成员不能通过类的对象调用 4、假定AB为一个类,则执行 “AB *s=new AB(a,5);”语句的结果是A、动态生成对象AB赋值给变量sB、动态生成对象sC、如果对象AB中有公有成员a,则s->a可以访问该成员D、动态生成对象AB,该对象的地址赋值给变量s 5、下面关于常对象的说法正确的是()A、在定义常对象时必须进行初始化。B、常对象的数据成员不能被更新。C、常对象不能作为类的成员。D、通过常对象可以调用该对象的成员函数。第三题、判断题(每题1分,5道题共5分) 1、所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是数据类型。正确错误 2、假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为x->a。正确错误 3、C++允许使用友元,但是友元会破坏封装性。正确错误 4、静态成员函数允许访问类的数据成员。正确错误 5、如果类A的声明中将类B的对象作为数据成员,则称类A和类B之间是一种has-a关系,类B是类A的子对象。正确错误
《面向对象程序设计》第04章在线测试 《面向对象程序设计》第04章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、一个类的成员函数也可以成为另一个类的友元函数,这时的友元说明( )。A、需加上类域的限定B、不需加上类域的限定C、类域的限定可加可不加D、不需要任何限定 2、一个类的友元不是该类的成员,与该类的关系密切,所以它( )。A、有this指针,有默认操作的对象B、没有this指针,可以有默认操作的对象C、有this指针,不能执行默认操作D、没有this指针,也就没有默认操作的对象 3、下面的语句中能将类B 定义为类A的友元类的是( )A、friend class B;B、class A{ friend B};C、class A{ friend class B;};D、class friend B class A; 4、如果类B 是类A的友元类,n是类A的私有数据成员,函数f(A tmp)是类B的公有成员函数,a是类A的对象, b是B类的对象,下面语句正确的是( )A、main(){ f(a);}B、main(){ b.f;};C、main(){ a.n;};D、main(){ b.f(a);}; 5、下面对于友元函数描述正确的是A、友元函数的实现必须在类的内部定义B、友元函数是类的成员函数C、友元函数破坏了类的封装性和隐藏性D、友元函数不能访问类的私有成员第二题、多项选择题(每题2分,5道题共10分) 1、如果类 a 被说明成类 b 的友元,则下面的说法错误的是 ( ) 。A、类 a 的成员即类 b 的成员B、类 b 的成员即类 a 的成员C、类 a 的成员函数不得访问类 b 的成员D、类 b 不一定是类 a 的友元 2、关于友元函数的说法正确的是( )A、友元函数可以是普通函数,可以是其他类的成员函数,也可以是本类的成员函数B、友元函数可以访问多个类的私有成员和保护成员C、在调用友元函数的时候需要使用“.”运算符D、如果友元函数是某个类的成员函数,在定义这个友元函数的时候要使用类前缀。 3、如果函数int f(int, int)是类A的友元,那么下面的说法正确的是( )A、int f(int, int)可以访问A的私有成员B、int f(void)是int f(int, int)的重载函数C、int f(void)可以访问A的私有成员D、int f()不是类A的友元函数 4、若B类为A类的友元类,则下面的说法错误的是( )A、B类的所有成员函数都是A类的友元函数B、B类指定的成员函数才是A类的友元C、A类的所有成员函数可以访问B类的成员D、B类的私有成员函数不能可以访问A类的私有成员 5、关于友元的说法正确的是( )A、如果函数f是类A的友元函数,那么函数f的所有重载函数都是类A的友元函数B、如果函数f是类A的友元函数,那么f可以访问类A的所有成员C、如果函数f是类A的友元函数,那么函数f不可以声明为静态成员函数D、如果函数f是类A的友元函数,那么f可以调用A的构造函数第三题、判断题(每题1分,5道题共5分) 1、友元只能访问类中的公有成员,不能访问私有成员。正确错误 2、友元类的所有成员函数都可以访问相应类的成员。正确错误 3、友元类是使用friend关键字声明的类,它的所有成员函数都是相应类的友元函数。正确错误 4、友元函数一定不是本类的成员函数,但却可以访问本类中的所有成员。正确错误 5、如果函数f()要操作类A和类B的私有成员,可以把f()声明为类A的成员函数,把类A声明为类B的友元类。正确错误
《面向对象程序设计》第05章在线测试 《面向对象程序设计》第05章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、在成员函数中进行双目运算符重载时,其参数表中应带有( )个参数。A、0B、1C、2D、3 2、如果表达式a+b中的“+”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为( )。A、a.operator+(b)B、b.operator+(a)C、operator+(a,b)D、operator(a+b) 3、如果表达式a++中的“++”是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为( )。A、a.operator++()B、operator++(a)C、operator++(a,1)D、operator++(1,a) 4、双目运算符的调用格式是( )A、双目运算符 左运算对象 右运算对象B、双目运算符 右运算对象 左运算对象C、左运算对象 双目运算符 右运算对象D、右运算对象 双目运算符 左运算对象 5、假定M是一个类名,且M中重载了操作符=,可以实现M对象间的连续赋值,如“m1=m2=m3;”。重载操作符=的函数原型最好是( )。A、int operaotor=(M);B、int operator=(M&);C、M operator=(M&);D、M& operator=(M);第二题、多项选择题(每题2分,5道题共10分) 1、关于运算符重载的说法正确的是( )A、在设计运算符重载成员函数时不能使用默认参数。B、重载运算符+之后,包含整型变量a,b的表达式a+b的含义可能与原来不同C、运算符重载函数可以作为类的成员函数和作为类的友元函数。D、重载运算符可以使程序员自定义运算符。 2、关于运算符重载,下列说法错误的是( )。A、重载时,运算符的优先级可以改变。B、重载时,运算符的结合性可以改变。C、重载时,运算符的功能可以改变。D、重载时,运算符的操作数个数可以改变。 3、在重载一个运算符时,其参数表中没有任何参数,这表明该运算符不可能是( )。A、作为友元函数重载的1元运算符B、作为成员函数重载的1元运算符C、作为友元函数重载的2元运算符D、作为成员函数重载的2元运算符 4、下面说法正确的是( )A、new和del_ete是运算符B、new和del_ete只能被重载为成员函数,不能重载为友元C、new和del_ete重载函数不能用static修饰D、new和del_ete重载函数一定不是静态成员函数 5、下面重载类型转换运算符的语句正确的是( )A、class X {X operator (int);};B、class X {operator(X, int);};C、class X {operator Z( );};D、class X {operator Y( );};第三题、判断题(每题1分,5道题共5分) 1、对每个可重载的运算符来讲,它既可以重载为友元函数,又可以重载为成员函数。正确错误 2、运算符重载的本质就是函数重载。正确错误 3、双目运算符重载为成员函数的时候,一个运算对象由this指针给出,另一个运算对象通过重载运算符的形参传递。正确错误 4、重载运算符为成员函数和友元函数时的关键区别在于成员函数具有this指针,而友元函数没有this指针。正确错误 5、重载比较运算符函数的返回值必须是bool类型。正确错误
《面向对象程序设计》第06章在线测试 《面向对象程序设计》第06章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、以下关于函数模板叙述正确的是( )。A、函数模板也是一个具体类型的函数B、函数模板的类型参数与函数的参数是同一个概念C、通过使用不同的类型参数,函数模板可以生成不同类型的函数D、用函数模板定义的函数没有类型 2、下面函数模板定义中不正确的是( )A、template<class Q>B、template<class Q> Q F(Q x){ return Q+x; return x+x; }C、template<class T>D、template<class T> T F(T x){return x*x; return x>1; } 3、关于函数模板的说法错误的是( )A、函数模板是一个模板,其中用到通用类型参数B、函数模板是具体的函数,在系统遇到具体函数调用时生成C、函数模板是一组函数的抽象D、函数模板不能执行 4、关于模板之间的关系说法正确的是( )A、C++中有函数模板和类模板B、函数模板是模板函数的实例化C、类模板是模板类的实例化D、对象是类模板的实例化 5、下面类模板的定义语句错误的是( )A、template <class T, class T> class Tclass{…};B、template <class T, int T> class Tclass{…};C、template <class T, int exp, class T> class Tclass{…};D、template <class T1, class T2> class Tclass{…};第二题、多项选择题(每题2分,5道题共10分) 1、关于模板函数的说法正确的是( )A、模板函数是编译系统在编译时根据函数模板自动生成的。B、模板函数是函数的模板C、模板函数是程序员用代码写出来的D、模板函数是函数模板的实例化 2、下面关于模板的说法正确的是( )A、模板是C++软件复用的功能之一B、C++提供了两种模板机制:类模板和函数模板C、模板体现了函数或类的参数多态性D、模板抽象了类或函数 3、关于函数模板声明的说法正确的是( )A、类型形参前必须加前缀classB、形参表中的参数在函数定义中至少要出现一次C、在template语句与函数模板声明之间不允许有别的语句D、如果类型形参多于一个,则每个形参前都要使用class 4、已经有函数模板定义 template < class T> T fun(T x, T y){ return (x>y) ? x: y;} 下面的函数调用正确的是( )A、fun(5,6)B、fun(5, 2.0)C、fun(‘a’, ‘c’)D、fun(‘a’, 4) 5、关于函数模板的说法正确的是( )A、函数模板生成的模板函数是重载的,但是函数模板不能重载B、C++程序中函数模板可以同名,但是形参个数和类型应有区别C、函数模板可以和普通函数重载D、函数模板不能重载第三题、判断题(每题1分,5道题共5分) 1、函数模板中的每一个类型参数在函数参数表中必须至少使用一次。正确错误 2、类模板中不能带有静态成员。正确错误 3、定义类模板时可以没有类型参数。正确错误 4、模板类型参数名可以用来指定函数模板的返回类型。正确错误 5、函数模板是模板的定义,是一类函数的抽象,代表了一类具有相同功能的函数,不能够实际执行。正确错误
《面向对象程序设计》第07章在线测试 《面向对象程序设计》第07章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、在公有继承的情况下,基类成员在派生类中的访问权限 ( ) 。A、受限制B、保持不变C、受保护D、不受保护 2、可以用 p.a 的形式访问派生类对象 p 的基类成员 a ,其中 a 是 ( )A、私有继承的公有成员B、公有继承的私有成员C、公有继承的保护成员D、公有继承的公有成员 3、假设ClassY:publicX,则说明一个Y类的对象时和删除Y类对象时,调用构造函数和析构函数的次序分别为( )A、X,Y; Y,XB、X,Y; X,YC、Y,X; X,YD、Y,X; Y,X 4、对于公有继承,基类的公有和保护成员在派生类中将( )成员。A、全部变成公有B、全部变成保护C、全部变成私有D、仍然相应保持为公有和保护 5、c++ 设置虚基类的目的是 ( ) 。A、消除二义性B、简化程序C、提高运行效率D、减少目标代码第二题、多项选择题(每题2分,5道题共10分) 1、当保护继承时,下面说法正确的是( )A、基类的成员的访问权限在派生类中不变B、在类作用域外能够通过派生类的对象来直接访问基类的公有成员C、基类的保护成员和私有成员在派生类中的访问权限为受保护的D、基类的公有成员在派生类中的访问权限为受保护的 2、当派生类中有和基类一样名字的成员时,下面说法错误的是( )。A、将产生二义性B、派生类的同名成员将覆盖基类的成员C、是不能允许的D、基类的同名成员将覆盖派生类的成员 3、含有虚基类的派生类的构造函数调用次序错误的是( )A、虚基类,基类,派生类, 对象成员B、基类,派生类,对象成员,虚基类C、对象成员,基类,虚基类,派生类D、基类,虚基类,对象成员,派生类 4、已知有下面的类定义: class A {…}; class B {…}; class C:public B, virtual public A{…}; C c;撤销c的时候,析构函数调用顺序错误的是( )A、ABCB、CBAC、BACD、CAB 5、下面说法正确的是( )A、类模板可以派生出新的类B、从一个普通类可以派生出类模板C、模板类可以派生出非模板类D、函数模板也可以派生出新的模板类第三题、判断题(每题1分,5道题共5分) 1、基类的保护成员不能被派生类的对象访问。正确错误 2、公有继承时基类中的public成员在派生类中仍是public的。正确错误 3、C++语言中,既允许单继承,又允许多继承。正确错误 4、构造函数可以被继承。正确错误 5、解决多继承情况下出现的二义性的方法之一是使用成员名限定法。正确错误
《面向对象程序设计》第09章在线测试 《面向对象程序设计》第09章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是( )A、failB、eofC、badD、good 2、下列项目中,设置十六进制的控制符是( )A、decB、octC、hexD、ws 3、关于eof()函数的下列说法中,正确的是(C)A、执行文件打开的操作函数B、用于判断输入输出错误的函数C、判断文件是否结束的函数D、执行文件关闭的函数 4、seekg(-40,ios::cur)的意思是(A)A、读写位置从当前位置前移40个字节B、读写位置从当前位置后移40个字节C、读写位置从当前位置上移40个字节D、读写位置从当前位置下移40个字节 5、关于重载插入运算符的说法,正确的是( )A、函数的返回值必须是对类ostream的引用B、函数的第一个操作数是“>>”的右操作数C、函数的第二个操作数是“>>”的左操作数D、函数的第二个参数必须是对类ostream的引用第二题、多项选择题(每题2分,5道题共10分) 1、对于输入流来说,用于文件读写位置定位的成员函数有( )A、istream& istream::seekg(streampos);B、istream& istream::seekg(streamoff,ios::seek_dir);C、streampos istream::tellg();D、istream& ostream::seekp(streampos); 2、下面提供输入操作的类是( )A、iosB、istreamC、iostreamD、ostream 3、下面用于绑定文件到程序上用来输出的类是( )A、ostreamB、ifstreamC、ofstreamD、fstream 4、下面关于cin的说法正确的是( )A、cin是与标准设备链接的预定义输入流B、运算符>>向cin发送字符C、提取运算符读取键盘输入的所有字符,包括空格D、一个语句中可以使用多个提取运算符 5、 下面的说法正确的是(AD)A、流读取运算符通常会跳过输入流中的空白字符B、流的成员函数get与提取运算符的作用是一样的C、插入运算符可以输出类的成员变量D、输出字符可以用cout的成员函数put第三题、判断题(每题1分,5道题共5分) 1、使用提取符(<<)可以输出各种类型的变量的值,也可以输出指针值.正确错误 2、流是一种抽象,它负责在数据的生产者(程序/文件)和数据的消费者(文件/程序)之间建立联系,并管理数据的流动正确错误 3、二进制文件的写操作用成员函数write()正确错误 4、setw(n)只对下一个输出有效正确错误 5、调用clear函数后,流就变成可用正确错误
《面向对象程序设计》第08章在线测试 《面向对象程序设计》第08章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、下面描述中体现了抽象类特性的语句是( )A、可以说明虚函数B、可以进行构造函数重载C、可以定义友元函数D、不能说明其对象 2、下列关于虚函数与函数重载区别的叙述中不正确的是( )A、函数说明形式上不同B、函数重载允许是非成员函数,虚函数只能是成员函数C、函数重载的调用依据参数和类型的差别,虚函数则依据对象D、函数重载的本体可以在类外定义,虚函数不可以 3、通过 ( ) 调用虚函数时,采用动态束定。A、对象指针B、对象名C、成员名限定D、派生类名 4、在派生类中定义虚函数时,可以与基类中相应的虚函数不同的是( )A、参数类型B、参数个数C、函数名称D、函数体 5、下面不是多态性的是( )A、函数重载B、动态绑定C、模板D、派生第二题、多项选择题(每题2分,5道题共10分) 1、下列描述中,( )不是抽象类的特征。A、可以说明虚函数;B、可以进行构造函数重载;C、可以定义友元函数;D、不能说明其对象。 2、下面属于多态性的是( )A、函数重载B、类模板C、函数模板D、派生类 3、下面的说法正确的是( )A、虚函数在派生类中可能有不同实现B、C++对虚函数的调用采取了动态绑定方式C、动态绑定只能通过指针或引用表示对象来调用虚函数D、动态绑定的处理方式不能实现静态类型检查 4、调用虚函数实现多态的步骤是( )A、将基类对象地址或派生类对象地址赋给基类指针B、定义基类指针C、用派生类对象或基类对象调用虚函数D、用基类指针调用虚函数 5、关于抽象类的说法正确的是( )A、抽象类可以生成类对象B、抽象类不能用作参数类型、函数返回类型或显式转换的类型C、不能定义抽象类指针和引用D、抽象类只能作为其他类的基类第三题、判断题(每题1分,5道题共5分) 1、C++中只要调用虚函数就是动态绑定。正确错误 2、设计统一的公共接口是利用抽象类和虚函数实现的。正确错误 3、相比较而言,静态绑定的执行速度要比动态绑定的执行速度快。正确错误 4、虚函数是用virtual 关键字说明的成员函数。正确错误 5、动态联编是在运行时选定调用的成员函数的。正确错误
《面向对象程序设计》第10章在线测试 《面向对象程序设计》第10章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、下面哪些情况不会造成异常( )A、内存耗尽B、再次打开文件C、除数为0D、数组越界访问 2、异常规范的正确说法是( )A、在函数声明时定义异常规范B、在函数定义时定义异常规范C、异常规范说明时必须带参数D、在函数后如果没有throw说明则表示没有异常 3、关于没有被捕捉的异常正确的说法是( )A、在catch块中没有处理的异常B、未被捕捉的异常必然导致系统崩溃C、如果一个异常没有被捕捉到,将调用terminate()函数终止程序运行D、忽略它 4、关于try, throw和catch使用的说明中,错误的是( )A、throw必须在try块中B、每一个try块的后面一定要跟着catch块C、程序中catch块可以有多个D、throw抛出的异常与距它最近的cach匹配 5、为保证程序中的全局变量不与开发商提供的全局变量重名,可以采取的措施是( )A、查阅手册,不起同样的名字B、引入命名空间C、避开不用D、让开发商改名第二题、多项选择题(每题2分,5道题共10分) 1、异常处理的优点是( )A、提高程序可读性B、程序的控制不会因产生异常而随意跳转C、正常处理代码和异常处理代码隐式分离D、与函数调用返回的控制方法一致 2、throw 表达式中的表达式的含义( )A、表达式表示异常的值B、表达式与return语句的运算数相似C、表达式表示异常的类型D、表达式的值可以用来区别不同的异常 3、catch子句的说法正确的是( )A、catch子句后的复合语句是异常处理程序B、catch子句捕获throw表达式抛出的异常C、catch子句的异常类型说明只能是类型,不能是数值D、catch子句的异常类型不能是自定义类 4、下面说法正确的是( )A、函数声明void f(int i) throw ( int,char)说明函数f会引发int和char类型的异常B、函数声明void f(int i) throw ( ) 不会引发任何类型的异常C、函数声明void f(int i) throw ( )和void f(int i)是一样的D、函数声明void f(int i)说明该函数不会引发异常 5、关于命名空间的说法正确的是( )A、命名空间用namespace定义B、namespace可以嵌套C、命名空间可以实例化D、定义namespace后,不能再向其中加入新的成员第三题、判断题(每题1分,5道题共5分) 1、异常(Exception)是程序运行过程中,由于环境变化、用户操作失误以及其它方面的原因而产生的运行时不正常的情况.正确错误 2、异常处理器根据抛出异常模块的报告来处理异常。正确错误 3、在C++中,如果出现未被捕捉的异常,就会调用函数terminate(),终止本程序的运行。正确错误 4、throw(…)表示函数将会抛出所有类型的异常正确错误 5、catch处理程序的出现次序无关紧要。正确错误
《面向对象程序设计》第11章在线测试 《面向对象程序设计》第11章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、以下正确的说法是( )。A、用户调用标准库函数前,必须重新定义B、用户可以重新定义标准库函数,若如此,该函数将失去原有含义C、系统不允许用户重新定义标准库函数D、用户调用标准库函数前,不必使用预编译命令将该函数所在文件包括到用户源文件中 2、关于STL的说法正确的是( )A、STL是新的C++标准库B、STL是函数集合C、STL是基于模板实现的D、STL是VC++6.0的一部分 3、双队列(deque)属于( )A、顺序容器B、关联容器C、前向容器D、双向容器 4、多重映射(multimap)属于( )A、顺序容器B、关联容器C、前向容器D、双向容器 5、队列(queue)属于( )A、顺序容器B、关联容器C、前向容器D、容器适配器第二题、多项选择题(每题2分,5道题共10分) 1、按照算法对容器的影响可以将算法分成( )A、可变序列算法B、非可变序列算法C、排序算法D、数值计算算法 2、从广义上讲,STL的代码分为三类,它们分别是( )A、容器B、迭代器C、算法D、模板 3、下面属于C++标准库的是( )A、STLB、C标准函数库C、COMD、DLL 4、下面的说法正确的是( )A、容器用于存放数据对象B、算法用于操作容器中的数据对象C、迭代器是容器的代替D、迭代器用于链接容器和算法 5、下面属于关联容器的是( )A、向量B、集合C、队列D、映射第三题、判断题(每题1分,5道题共5分) 1、STL(Standard Template Library,标准模板库)就是标准C++库。正确错误 2、容器是能够保存其它类型的对象的类。正确错误 3、C++的容器可以包含混合类型的对象,也就是说容器类可以包含一组相同类型或一组不同类型的对象。正确错误 4、当容器类包含相同类型的对象时,称为同类容器类;当容器类包含不同类型的对象时,称为异类容器类。正确错误 5、堆栈(stack)、队列(queue)和多重映射(multimap)属于容器适配器正确错误
《面向对象程序设计》第12章在线测试 《面向对象程序设计》第12章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、面向对象软件开发中使用的OOD表示( )A、面向对象分析B、面向对象设计C、面向对象语言D、面向对象方法 2、面向对象方法中的对象是( )A、统一的B、独立的C、互不联系的D、相互协作的 3、消息包括的内容有( )A、发送消息的对象B、接收消息的对象C、输入信息D、应答信息 4、面向对象模型不包括( )A、静态模型B、对象模型C、功能模型D、动态模型 5、描述相互协作的对象之间的交互关系和连接关系的是( )A、类图B、顺序图C、协作图D、用例图第二题、多项选择题(每题2分,5道题共10分) 1、下面哪些属于UML的图( )A、用例图B、类图C、结构图D、流程图 2、关于类的说法正确的是( )A、类是抽象的B、类是对象的蓝图C、类是对象模板D、类只有属性没有行为 3、关于消息的说法正确的是( )A、消息是指向某个对象发出的服务请求B、消息是指对象提供的服务规定的消息格式C、消息是通过调用对象函数实现的D、消息是对象之间相互协作的方式 4、类/对象之间的关系可概括为( )A、关联B、归纳C、组合D、实例 5、下面的说法正确的是( )A、软件就是程序,程序就是软件B、软件开发的过程就是程序设计的过程C、软件是程序、支持程序运行的数据以及与程序有关的文档资料的集合。D、程序设计仅仅是软件开发过程的一个阶段。第三题、判断题(每题1分,5道题共5分) 1、UML不是一种可视化的程序设计语言而是一种可视化的建模语言.正确错误 2、UML视图中包含的模型元素可以有类、对象、节点、包、构件、关系和消息等。正确错误 3、UML的图包括:用例图、类图、对象图、状态图、活动图、顺序图、协作图、构件图和配置图。正确错误 4、面向对象的要素包括抽象、封装。正确错误 5、类的继承关系也叫泛化关系。正确错误
全民学习吧
加微信:goodluckgold,QQ:3446094242,轻松辅导,学习无忧