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

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。