当前位置:首页 > 面向对象程序设计综合练习题a
C.虚函数 D.B和C
6-6.虚函数的定义是在基类中进行的,定义时需要冠以关键字( C )。
A. static B. friend C. virtual D. public
6-7.C++编译系统确定调用是具体对象的过程称为关联。C++有( B )关联。
A.1种 B.2种 C.3种 D.4种
6-8. 调用一个成员函数时,使用动态关联的情况是( B )。
A.通过对象调用一虚函数 B.通过指针或引用调用一虚函数 C.通过对象调用一静态函数 D.通过指针或引用调用一静态函数
6-9.C++类体系中,不能被派生继承的有( C )。
A.转换函数 B.构造函数 C.虚函数 D.静态成员函数 6-10.C++语言建立类族是通过( B )。
A.类的嵌套 B.类的继承 C.虚函数 D.抽象类 6-11.在下面的4个关键字中,( A )是用来说明虚函数的。
A.virtual B.public C.protected D.private
6-12.实现运行时的多态性要使用( D )。
A.重载函数 B.析构函数 C.构造函数 D.虚函数
6-13.关于纯虚函数,下列说法不正确的是( C )。 A.纯虚函数是在声明虚函数时被初始化为0的函数 B.纯虚函数没有函数体 C.纯虚函数可以被调用
D.如果在一个类中声明了纯虚函数,该虚函数中在派生类中仍有可能为虚函数
6-14.如果一个类至少有一个纯虚函数,那么该类称为( A ).。 A.抽象类 B.虚基类 C.派生类 D.以上都不对
7-1.C++的输入输出不包括( D )。 A.标准的输入输出 B.文件的输入输出
C.字符串输入输出
- 17 -
D.显示屏和打印机的输入输出 7-2.下面的类中,( C )不是由抽象基类ios直接派生出来的。 A.istream B.ostream C.iostream D.fstreambase
7-3.在C++中,抽象基类ios直接派生出( D )。 A.istrean, ostream, ifstream,ofstream
B.istrean, ostream, istrstream,ostrstream C.istrean, ostream, iostream
D.istrean, ostream, fstreambase,strstreambase 7-4.cin是某个类的标准对象,该类是( B )。
A.ostream B.istream C.stdout D.stdin
7-5.cout是某个类的标准对象,该类是( A )。
A.ostream B.istream C.stdout D.stdin
7-6.关于cout流对象,以下说法不正确的是( D )。 A.cout是ostream流类对象
B.用“cout<<”输出数据时,不须考虑数据是什么类型 C.当向cout流插入一个endl时,输出换行
D.用“cout<<”可以直接输出用户声明的类型的数据。 7-7.在iostream文件中定义了4种流对象,它们是( A )。 A.cin, cout, cerr, clog B.cin, cout, cerr, put
C.cin, cout, put, get D.cin, cout, cerr, get
7-8.在C++中串流类是在头文件strstream.h中定义的,下列不属于串流类的是( C )。
A. strstream B. ostrstream C. ofstream D. istrstream
7-9.在C++程序中使用的cin标识符是系统类库中定义的( A )类中的一个对象。
A. istream B. ostream
C. iostream D. fstream
7-10.在C++程序中使用的cout标识符是系统类库中定义的( B )类中的一个对象。
A. istream B. ostream C. iostream D. fstream 7-11.以下的函数中,( A )不是用于字符输入的。 A.cout.put('a') B.cin.get()
C.cin.get(ch) D.cin.get(ch,10, '\\n')
- 18 -
7-12.关于文件,以下说法不正确的是( C )。 A.用户常用的文件有程序文件和数据文件两大类
B.根据数据的组织形式,文件可分为ASCII文件和二进制文件
C.对于字符信息,用ASCII文件输出和用二进制文件输出,
其形式是不同的
D.对于数值数据,用ASCII文件和用二进制文件所占内存空
间是不同的
8-1.以下说法中,正确的是( C )。
A.编译系统能发现语法错误,也能发现运行错误
B.程序能通过编译,也能运行,就能得到正确的运行结果 C.程序能通过编译,也能运行,不一定能得到正确的运行结
果
D.发现运行错误比发现编译错误较容易
8-2.C++处理异常的机制有3部分组成,即( B )。 A.检查(try)、捕捉(catch)和纠错(error correction) B.检查(try)、抛出(throy)和捕捉(catch) C.检查(try)、捕捉(catch)和处理(heandl) D.检查(try)、抛出(throy)和处理(heandl) 8-3.关于异常处理,以下说法不正确的是( C )。 A.被检测的函数必须放在try块中 B. try块和catch块作为一个整体出现
C.catch既要检查所捕获的异常信息的类型,也检查它们的值 D.如果throw抛出的异常信息找不到与之匹配的catch块,
程序终止运行
8-4.关于命名空间,以下说法不正确的是( D )。
A.命名空间实际上是一个由程序设计者命名的内存区域 B.命名空间的作用是建立一些互相分隔的作用域,以免产生
名字冲突
C.全局变量独立于所有有名的命名空间之外,不需声明命名
空间
D.不能在一个命名空间内再定义一个命名空间
二、填空题
1-1.C++预定义的标准流包括 cin 、 cout 、cerr和clog。
1-2.要把PI=3.14159定义为常变量,定义语句是 const float
- 19 -
PI=3.14259 。
1-3.重载函数在函数类型或参数个数上不同,但 函数名 相同。
1-4.函数重载时,编译系统会根据 形参的类型 或 形参的个数 来区分,与返回类型无关。 1-5.所有的函数模板都是以 template 关键字和一个形参表开头的。 1-6.设函数max是由函数模板实现的,并且max(3.5,5)和max(2,5)都是正确的函数调用,则此函数模板具有 2 个类型参数。 1-7.如果一个函数既作为重载函数,又作为有默认值的函数,当调用函数时如果少写了一个参数,会出现 二义性 。 1-8.引用通常用作函数的 参数 和返回值。
1-9、C++语言的函数参数传递方式有 传值 和 传址 。 1-10要把一个函数指定为一个内置函数,有在函数首行的左端加一个关键字 inline 。 1-11.在C++中,用动态分配/撤消内存运算符 new 和 delete 分别取代C中的malloc和free函数。
1-12.New的功能是 动态申请 内存空间,delete的功能是 释放由new申请的 内存空间。
1-13.使用函数模板的方法是先说明函数模板,然后实例化成相应的 模板函数 进行调用、执行。
2-1.对象的三大特征是 封装 、 继承 和 多态 。 2-2.对象的三大基本特性是多态性、 继承 、封装性。 2-3.在C++类中可以包含 公共 、 保护 和 私有 三种具有不同访问控制权的成员。
2-4.如果在类的定义中既不指定private,也不指定public,则系统默认为是 私有的(private) 。
2-5.如果在类外定义成员函数,必须在函数名前加上类名和 作用域限定符“::” 。
2-6.在以下程序段的空白处填上合适的语句: Class Time {public: Int hour; Int minute; } ;
Time t,*p P=&t ;;
- 20 -
共分享92篇相关文档