《c复习题习题练习题》由会员分享,可在线阅读,更多相关《c复习题习题练习题(20页珍藏版)》请在金锄头文库上搜索。
1、一、 填空题(每空1分,共15分,将正确答案写在( )中)1.C+中有两种数据类型: ( )和 ( )可以使用signed修饰符。在C+中,用数组、指针、和( )作为函数参数,能够将参数值带回。2.为了降低函数调用的时间开销,建议将小的调用频繁的函数定义为( ),方法是在函数类型前加上( )关键字。3.面向对象的程序设计有四大特征,它们是抽象、封装、( )、( )。4.拷贝构造函数是在用一个对象初始化另一个对象时被调用,系统缺省的拷贝构造函数的工作方法是( )。5.用new申请某一个类的动态对象数组时,在该类中必须能够匹配到( )构造函数,否则应用程序会产生一个编译错误。6.静态数据成员必须在
2、类外进行初始化,且静态数据成员的一个拷贝被类的所有对象( )。7.在C+中,定义重载函数时,应至少使重载函数的参数个数或参数类型( )。8.在C+中,虽然友元提供了类之间数据进行访问的一种方式,但它破坏了面向对象程序设计的( )特性。9.预编译指令由三种,它们是:文件包含、 ( )和 ( )。10.静态的成员函数没有隐含的 ( ),所以,它们只能直接访问类的静态的数据成员。11.在C+中,函数的参数有两种传递方式,它们是值传递和( )。12.当非静态成员函数被调用时,该成员函数的( )指向调用它的对象。13.拷贝构造函数使用( )作为参数初始化创建中的对象。14.在公有继承的情况下,基类数据成
3、员在派生类中的访问权限( )。15.在C+中,构造派生类对象时,总是先从( )的初始化开始的。16.当需要统计程序中某个类创建对象的个数时,需要给该类定义( )成员。17.在多个类之间有重复继承时,为避免被重复继承的基类数据成员在内存中有多个拷贝,应将该基类定义为( )。18.在C+类中,有一种不能定义对象的类,这样的类只能被继承,称之为( ),定义该类至少具有一个( )。19.在C+中构造一个对象时,其数据成员在构造函数中初始化。对于内嵌的对象、 ( )、 ( )数据成员需要在构造函数的成员初始化列表中初始化。 20.在类的定义中,说明为protected的数据成员称为保护成员。保护数据成员
4、具有双重作用:对于其派生类而言, ( );而对于其外部的程序而言, ( )。21.控制格式输出的操纵符中,( )是设置数据精度的,( )是设置十六进制的。22.如果s是int型变量,且s=6,则下面s%2+(s+1)%2表达式的值为_ _。23已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=a+4的值为_ _。24数组与函数参数联系密切,当用数组元素作函数参数时,这是属于值传递;当数组名作为参数时,这是属于 传递,对形参的改变可影响到实参。25利用“对象名.成员变量”形式访问的对象成员仅限于被声明为 的成员;若要访问其他成员变量,需要通过 函数或友元函数函数。26一
5、个_和_的关系,正如基本数据类型与该类型的变量一个。27类成员的默认访问方式是_.28一个类有_个构造函数,有_析构函数。29类的_成员函数不能对类中的非静态成员进行默认访问。30如果说明类B是类A的友元类,则类B的所有成员函数都是类A的_。31利用成员函数对二元运算符重载,其左操作数为,右操作数为 。32类有两种用法:一种是类的实例化,即生成类的_ ;另一种是通过_派生出新的类。33运算函数中的关键字是_,它和运算符一起组成该运算符函数的函数名。34如果一个类中有一个或多个纯虚函数,则这个类称为_。35文件的打开是通过通过使用类_的成员函数_来实现的。36设所有变量均为整型,则表达式(e=2
6、,f=5,e+,f+,e+f)的值为_。37已知c的ASCII码为十进制数99,设k为字符型变量,则表达式k=c+1的值为_。38函数的形参在未被调用之前 分配空间,函数的形参的 要和实参的相同。39类的成员分为数据成员和_。40类完成了面向对象程序设计的_特性。41构造函数是_被创建时自动执行,对象消失时自动执行的成员函数称为_对象 42C+将类继承分为 和 两种。43在继承机制下,当对象消亡时,编译系统先执行 的析构函数,然后才执行派生类中子对象类的析构函数,最后执行 的析构函数。44类的_数据成员是类所有对象共享的成员。45友元函数_类的成员函数。(是/不是)46如果类A继承了类B,则类
7、A称为_,类B称为_。47运算符重载后,原运算符的优先级和结合特性_改变。(会/不会)48_是一个在基类中说明的虚函数,但未给出具体的实现,要求在其派生类实现。49文件的关闭是通过通过使用类_的成员函数_来实现的。二、选择题1面向对象的( )是一种信息隐蔽技术,目的在于将对象的使用者与设计者分开。不允许使用者直接存取对象的属性,只能通过有限的接口与对象发生联系。A多态性 B封装性 C继承性 D重用性2C+的合法注释是( )。A/*This is a C program/* B/ This is a C programC “This is a C program” D/*This is a C program/3关于C+和C语言的描述中,( )是错误的?AC是C+的一个子集 B C程序在C+环境可以运行C C+程序在C环境可以运行 D C+是面向对象的而C是面向过程的4运算符 +、=、=、% 中,优先级最低的运算符是( )。A. + B.a+&cd)?+d:a=中,优先级最高的运算符是( )。A+ B= C* D=24下列不合法的变量名