《《面向对象程序设计》高起专习题三答案.docx》由会员分享,可在线阅读,更多相关《《面向对象程序设计》高起专习题三答案.docx(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、面向对象程序设计高起专习题三答案 面向对象程序设计高起专习题三答案 一、单项选择题(本大题共25小题,每小题2分,共50分) 1、用“”运算符从键盘输入多于一个数据时,各数据之间应使用( D )符号作为分隔符。 A、空格或逗号 B、逗号或回车 C、逗号或分号 D、空格或回车 2、C+中声明常量的关键字是( A )。 A、const B、extern C、public D、enum 3、以下叙述中正确的是( B ) A、使用#define可以为常量定义一个名字,该名字在程序中可以再赋另外的值 B、使用const定义的常量名有类型之分,其值在程序运行时是不可改变的 C、在程序中使用内置函数使程序的
2、可读性变差 D、在定义函数时可以在形参表的任何位置给出缺省形参值 4、下列的符号常变量定义中,错误的定义是( C )。 A、const M=10; B、const int M=20; C、const char ch; D、const bool mark=true; 5、函数原型语句正确的是( B )。 A、int Function(void a) B、void Function (int); C、int Function(a); D、void int(double a); 6、在关键字private后面定义的成员为类的( A )成员。 A、私有 B、公用 C、保护 D、任何 7、在一个类的定义
3、中,包含有( C )成员的定义。 A、数据 B、函数 C、数据和函数 D、数据或函数 8、在类作用域中能够通过直接使用该类的( D )成员名进行访问。 A、私有 B、公用 C、保护 D、任何 9、在关键字public后面定义的成员为类的( B )成员。 A、私有 B、公用 C、保护 D、任何 10、类中定义的成员默认为( B )访问属性。 A、public B、private C、protected D、friend 11、每个类( C )构造函数。 A、只能有一个 B、可以有公用的 C、可以有多个 D、只可有缺省的 12、对类对象成员的初始化是通过构造函数中给出的( B )实现的。 A、函数
4、体 B、参数初始化表 C、参数表 D、参数初始化表或函数体 13、假定AB为一个类,则执行“AB x;”语句时将自动调用该类的 ( B ).。 A、有参构造函数 B、无参构造函数 C、复制构造函数 D、赋值重载函数 14、假定AB为一个类,则执行“AB x(a,5);”语句时将自动调用该类的 ( A )。 A、带参构造函数 B、无参构造函数 C、复制构造函数 D、赋值重载函数 15、假定CTest为一个类,并且有一无默认值的的有参构造函数和一无参构造函数,则执行“CTest objTest;”语句时将自动调用该类的( B )。 A、有参构造函数 B、无参构造函数 C、复制构造函数 D、赋值构造
5、函数 16、在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是( B )。 A、作为友元函数重载的1元运算符 B、作为成员函数重载的1元运算符 C、作为友元函数重载的2元运算符 D、作为成员函数重载的2元运算符 17、在成员函数中进行双目运算符重载时,其参数表中应带有( B )个参数。 A、0 B、1 C、2 D、3 18、双目运算符重载为普通函数时,其参数表中应带有( C )个参数。 A、0 B、1 C、2 D、3 19、如果表达式a+b中的“+”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为( A )。 A、a.operator+(b) B、b.operator
6、+(a) C、operator+(a,b) D、operator(a+b) 20、如果表达式a=b中的“=”是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为( C )。 A、a.operator=(b) B、b.operator=(a) C、operator=(a,b) D、operator=(b,a) 21、派生类的成员函数可以直接访问基类的( B )成员。 A、所有 B、公有和保护 C、保护和私有 D、私有 22、派生类可以访问其基类的( D )。 A、公用成员 B、保护成员 C、私有派生 D、公用和保护成员 23、对于类中定义的成员,其隐含访问权限为( C )。 A、pu
7、blic B、ptotected C、private D、static 24、在定义一个派生类时,若不使用保留字显式地规定采用何种继承方式,则默认为( A )方式。 A、私有继承 B、非私有继承 C、保护继承 D、公用继承 25、在公用继承的情况下,基类成员在派生类中的访问权限( B ) A、受限制 B、保持不变 C、受保护 D、不受保护 二、判断题(本大题共25小题,每小题2分,共50分,正确填“T”,错误填“F”) 1、字符串sdfgh的长度是5。( T ) 2、将字符串常量存放到字符串变量时,包含字符串本身和结束符“0”。( F ) 3、关系运算符可以用来比较两个字符的大小,也可用来比较
8、两个字符串的大小。( T ) 4、使用new运算符创建数组时,可以为该数组指定初始值( F )。 5、在设计类时一般把数据成员设置为私有的,把函数成员设置为公用的,从而实现了公用接口和私有实现的分离。( T ) 6、析构函数必须指定返回类型以及函数参数。( F ) 7、如果定义了一个类的对象数组,该数组有10个元素,则要调用10次构造函数来对每个元素初始化。( T )。 8、友元函数说明在类体内,它是一种成员函数。( F ) 9、友元类必须被说明为公用成员。( F ) 10、运算符重载以后,其优先级和结合性都不能改变。( T ) 11、重载单目运算符作为类的成员函数,函数没有参数。( T )
9、12、将运算符“+”函数重载为类的成员函数,交换律不适用。( T ) 13、不能通过派生类对象引用从私有基类继承过来的任何成员。( T ) ( F )14、若类B是类A的私有派生类,类C是类B的私有派生类,则类C可访问类A的公用成员。 15、在声明派生类时,派生类把基类的的构造函数也一起继承过来。( F ) 16、派生类能够继承基类的析构函数。( F ) 17、使用虚函数可以避免多重继承产生的二义性。( T ) 18、当一个成员函数被声明为虚函数后,其派生类中的具有相同参数类型和相同参数个数类型的相同类型的同名函数也是虚函数。( T ) 19、纯虚函数是在基类中说明的虚函数,它在该基类中必须定义具体的操作内容。( F ) 20、不可以定义抽象类的对象。( T ) 21、使用字符串流时必须打开文件。( F ) 22、程序运行过程出现异常是由于语法错误引起的。( F ) 23、在C+的异常处理方法中,try块和catch块必须作为一个整体出现。( T ) 24在C+中,在文件中只能用“#include 包含头文件iostream,而不能用“#include 包含头文件iostream。( F ) 25、C+中的所有运算符都允许重载。( F )
限制150内