c面向对象复习题答案版

合集下载

C++面向对象技术复习题汇总(含答案)

C++面向对象技术复习题汇总(含答案)

C++面向对象技术复习题汇总(含答案)面向对象程序设计C++复习资料与答案第一、二、六、七章习题一、选择题1、系统约定C++源程序文件名的缺省的扩展名为()A、bccB、c++C、cppD、vcc2、面向对象的程序设计将数据与()放在一起,作为一个相互依存、不可分割的整体来处理。

A、对数据的操作B、信息C、数据隐藏D、数据抽象3、当一个函数无返回值时,函数的类型应定义为()A、voidB、任意C、intD、无4、对于C++的函数,正确的叙述是:A、函数的定义不能嵌套,但函数的调用可以嵌套B、函数的定义不能嵌套,但函数的调用不能嵌套C、函数的定义和调用都不能嵌套D、函数的定义和调用都可以嵌套5、下列语句中错误的是()A、int *p=new int(10);B、int *p=new int[10]C、int *p=new int;D、int *p=new int[40](0);6、假设已经有定义:const char *const name=”chen”;,下面的语句中正确的是:()A、name[3]=’a’; B、name=”lin”;C、name=new char[5]; D、cout<<name[3];< bdsfid="94" p=""></name[3];<>7、假设已经定义:char *const name=”chen”;, 下面的语句中正确的是:()A、name[3]=’q’; B、name=”lin”;C、name=new char[5]; D、name=new char(‘q’);8、假设已经定义:const char *name=”chen”;, 下面的语句中错误的是:()A、name[3]=’q’; B、name=”lin”;C、name=new char[5]; D、name=new char(‘q’);9、下面的类型声明中正确的是:( )A、int &a[4];B、int &*p;C、int &&qD、int i,*p=&i;10、假设定义了函数模板()templateT max(T x,T y){ return(x>y)?x:y;}并定义了int i;char c;错误的调用语句是:()A、max(i,i)B、max(c,c)C、max((int)c,i);D、max(i,c)11、模板的使用是为了()A、提高代码的可重用性B、提高代码的运行效率C、加强类的封装性D、实现多态性12、设有二个语句:int x[‘a’];cin>>x;则编译器认为()A、说明语句int x[‘a’]错B、二个语句都错C、语句cin>>x 错D、二个语句正确,没有语法错13、设有语句:void f(int a[10],int &x);int y[10],*py=y,n;则对函数f的正确调用语句是( )A、f(py[10],n);B、f(py,n)C、f(*py,&n)D、f(py,&n)14、在C++中实现封装是借助于()A、枚举B、类C、数组D、函数15、对于下面几个函数:(1) void f(int x,float y) {…… }(2) int f(int a,float b){…… }(3) int f(int i,int j){…… }(4) float k(int x){…… }是重载函数。

《面向对象程序设计c》综合复习题集及答案详解

《面向对象程序设计c》综合复习题集及答案详解

《面向对象程序设计c》综合复习题集及答案详解综合复习题集一、单选题1.C++源程序文件的缺省扩展名为(A)。

A.cppB.e某eC.objD.lik2.由C++源程序文件编译而成的目标文件的缺省扩展名为(C)。

A.cppB.e某eC.objD.lik3.由C++目标文件连接而成的可执行文件的缺省扩展名为(B)。

A.cppB.e某eC.objD.lik4.编写C++程序一般需经过的几个步骤依次是()。

A.编译、编辑、连接、调试B.编辑、编译、连接、调试C.编译、调试、编辑、连接D.编辑、调试、编辑、连接5.以下标识符中不全是保留字的是()。

A.caeforintB.defaultthenwhileC.boolclalongD.gotoreturnchar6.能作为C++程序的基本单位是()。

A.字符B.语句C.函数D.源程序文件7.程序中主函数的名字为()。

A.mainB.MAINC.MainD.任意标识符8.C++程序的基本模块为()。

A.表达式B.标识符C.语句D.函数9.可用作C++语言用户标识符的一组标识符是()。

A.voiddefine+WORDB.a3_b3_123YNC.for-abcCaeD.2aDOizeof10.存储以下数据,占用存储字节最多的是()。

A.0B.‘0’C.“0”D.0.011.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用()符号作为分隔符。

A.空格或逗号B.逗号或回车C.逗号或分号D.空格或回车12.设”inta=12;”,则执行完语句”a+=a某a;”后,a的值是()。

A.12B.144C.156D.28813.假设在程序中a、b、c均被定义成整型,所赋的值都大于1,则下列能正确表示代数式1/abc的表达式是()。

A.1.0/a某b某cB.1/(a某b 某c)C.1/a/b/(float)cD.1.0/a/b/c14.设”inta=15,b=26;”,则”cout<A.15B.26,15C.15,26D.2615.设某是一个bool型的逻辑量,y的值为10,则表达式某&&y的值为()。

C++面向对象程序设计复习练习试题带答案(1)

C++面向对象程序设计复习练习试题带答案(1)

C++面向对象程序设计模拟试题一一、单项选择题(本大题共10小题,每小题2分,共201.说明虚函数的关键字是()。

A. inlinevirtual C. define D. static2.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为()。

A. mainB. MAINC. nameD. function 3.cout是某个类的标准对象的引用,该类是()。

A. ostream B. istream C. stdout D. stdin4.如果在类外有函数调用CPoint::func();则函数func()是类CPoint的()。

A. 私有静态成员函数B. 公有非静态成员函数C. 公有静态成员函数 B. 友元函数5. 如果class类中的所有成员在定义时都没有使用关键字public、private或protected,则所有成员缺省定义为()。

A. publicB. protectedC. private D.static6.一个类的所有对象共享的是()。

A. 私有数据成员 B. 公有数据成员 C. 保护数据成员 D. 静态数据成员7.动态联编所支持的多态性称为()。

A. 虚函数 B. 继承C. 编译时多态性D. 运行时多态性8.定义类模板时要使用关键字()。

A. const B. newC. deleteD. template9.对虚基类的定义()。

A. 不需要使用虚函数 B. 必须使用虚函数C. 必须使用privatD. 必须使用public10.类型转换函数()。

A. 不能带有参数 B. 只能带一个参数 C. 只能带2个参数D. 只能带3个参数二、判断正误题(本大题共6小题,每小题2分,共12分)1.虚函数在基类和派生类之间定义,且要求函数原型完全一致。

()2.抽象类可以用来直接创建对象。

()3.内联函数中可以出现递归语句。

()4.模板类与类模板的意义完全相同。

()5.常对象只能调用常成员函数。

c面向对象程序设计期末考试题及答案

c面向对象程序设计期末考试题及答案

c面向对象程序设计期末考试题及答案一、选择题(每题2分,共20分)1. 下列哪个是面向对象程序设计的特点?A. 封装B. 继承C. 多态D. 所有选项都是2. 在Java中,以下哪个关键字用于定义类?A. classB. structC. typeD. classdef3. 以下哪个是Java中不允许的类成员访问修饰符?A. publicB. protectedC. privateD. global4. 以下哪个是Java中实现多态的方式?A. 函数重载B. 函数重写C. 接口D. 抽象类5. 在Java中,哪个关键字用于声明一个方法,该方法没有返回值?A. voidB. returnC. noneD. null6. 以下哪个是Java中创建对象的语法?A. new ClassName();B. create ClassName;C. make ClassName;D. ClassName();7. 在Java中,以下哪个是正确的构造方法声明?A. public ClassName();B. public ClassName new();C. public new ClassName();D. public ClassName create();8. 以下哪个是Java中实现继承的方式?A. 使用extends关键字B. 使用implements关键字C. 使用interface关键字D. 使用new关键字9. 在Java中,以下哪个关键字用于实现接口?A. implementsB. extendsC. interfaceD. class10. 以下哪个是Java中实现封装的方式?A. 使用public关键字B. 使用private关键字C. 使用protected关键字D. 使用default关键字答案:1. D2. A3. D4. B5. A6. A7. A8. A9. A10. B二、简答题(每题10分,共20分)1. 简述面向对象程序设计中的“封装”概念及其重要性。

C复习填空与判断题参考答案

C复习填空与判断题参考答案

二、填空题1. “面向对象〞程序设计的三大根本特性是封装性、继承性、多态性。

2、支持两种多态性:编译时的多态性与运行时的多态性。

3.在函数体之前加关键字可以防止覆盖函数改变数据成员的值。

4、对于类中定义的任何成员,其隐含访问权限为。

5、假设只需要通过一个成员函数读取数据成员的值,而不需要修改它,那么应在函数头的后面加上关键字。

6. 如果返回的指针丧失,那么所分配的堆空间无法收回,称为内存泄露。

7、在继承机制下,当对象消亡时,编译系统先执行派生类的析构函数,然后才执行派生类中子对象类的析构函数,最后执行基类的析构函数。

8、假定用户为类定义了一个构造函数“( )(){}〞,那么是该类的数据成员。

9. 假定用户没有给一个名为的类定义析构函数,那么系统自动给出的缺省析构函数定义为〔〕{} 。

10. 访问一个指针所指向的对象的成员所用的运算符是 > 。

11、有定义“x, a[]={5,7,9}, *;〞,在执行“*;〞语句后,x的值是6,*(1)的值为7。

12.假设希望用一个已有对象来构造另一个同类型的对象,可以使用拷贝构造函数来实现。

13、假定为一个类,那么类定义体中的“( x);〞语句为该类拷贝构造函数的原型语句,而“( x);〞为该类赋值重载函数的原型语句。

14、为了访问某个类的私有数据成员,必须在该类中声明该类的友元。

15、静态成员是局部于类的成员,它提供一种同类对象的共享机制。

16、访问一个指针所指向的对象的成员所用的运算符是 > 。

17. 面向对象程序设计有四个主要特点,即抽象、封装、继承与多态。

18.在用定义一个类时,数据成员与成员函数的默认访问权限是(私有)。

19.在函数体之前加关键字可以防止覆盖函数改变数据成员的值。

20.私有数据通常由公有成员函数来访问〔读与写〕。

这些函数统称为类的接口。

21.在字长为32位的机器中,()= 4 字节,()=8 _字节返回值。

23. 如果返回的指针丧失,那么所分配的堆空间无法收回,称为内存泄露。

总《面向对象程序设计c++》综合复习题集及答案详解

总《面向对象程序设计c++》综合复习题集及答案详解

总《面向对象程序设计c++》综合复习题集及答案详解一、单选题1. C++源程序文件的缺省扩展名为( A )。

A. cppB. exeC. objD. lik2. 由C++源程序文件编译而成的目标文件的缺省扩展名为( C )。

A. cppB. exeC. objD. lik3. 由C++目标文件连接而成的可执行文件的缺省扩展名为( B )。

A. cppB. exeC. objD. lik 4. 编写C++程序一般需经过的几个步骤依次是( )。

A. 编译、编辑、连接、调试 B. 编辑、编译、连接、调试C. 编译、调试、编辑、连接D. 编辑、调试、编辑、连接5. 以下标识符中不全是保留字的是()。

A. case for intB. default then whileC. bool class longD. gotoreturn char6. 能作为C++程序的基本单位是( )。

A. 字符B. 语句C. 函数D. 源程序文件 7. 程序中主函数的名字为()。

A. mainB. MAINC. MainD. 任意标识符 8. C++程序的基本模块为()。

A. 表达式B. 标识符C. 语句D. 函数 9. 可用作C++语言用户标识符的一组标识符是( )。

A. void define +WORDB. a3_b3 _123 YNC. for -abcCase D. 2a DO sizeof10. 存储以下数据,占用存储字节最多的是()。

A. 0 B. ‘0’C. “0”D. 0.0 11. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( )符号作为分隔符。

A. 空格或逗号B. 逗号或回车C. 逗号或分号D. 空格或回车12. 设”int a=12;”,则执行完语句”a+=a*a;”后,a的值是( )。

A. 12B. 144C. 156D. 28813. 假设在程序中 a、b、c 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式1/abc的表达式是( )。

c 面向对象程序设计语言重点难点复习题及答案

c  面向对象程序设计语言重点难点复习题及答案

1、数据共享与保护一、选择题:1、在下面存储类中, ( C ) 对象的可见性与生存期不一致。

A. 外部类B. 自动类C. 内部静态类D. 寄存器类2、在下面存储类中,(A)的对象不是局部变量。

A. 外部静态类B. 自动类C. 函数形参D. 寄存器类3、关于局部变量,下面说法正确的是( C )。

A. 定义该变量的程序文件中的函数都可以访问B. 定义该变量的函数中的定义处以下的任何语句都可以访问C. 定义该变量的复合语句中的定义处以下的任何语句都可以访问D. 定义该变量的函数中的定义处以上的任何语句都可以访问4、一个类的静态数据成员所表示属性 ( C )。

A. 是类的或对象的属性B. 只是对象的属性C. 只是类的属性D. 类和友元的属性5、类的静态成员的访问控制( D)。

A. 只允许被定义为privateB. 只允许被定义为private或protectedC. 只允许被定义为publicD. 可允许被定义为private、protected或public6、静态成员函数对类的数据成员访问(B)。

A. 是不允许的B. 只允许是静态数据成员C. 只允许是非静态数据成员D. 可允许是静态数据成员或非静态数据成员7、被非静态成员函数访问的类的数据成员( A )。

A. 可以是非静态数据成员或静态数据成员B. 不可能是类的静态数据成员C. 只能是类的非静态数据成员D. 只能是类的静态数据成员8、静态数据成员的初始化是在(D)中进行的。

A. 构造函数B. 任何成员函数C. 所属类D. 全局区9、当将一个类A或函数f()说明为另一个类B的友元后,类A或函数f()能够直接访问类B的( D )。

A. 只能是公有成员B. 只能是保护成员C. 只能是除私有成员之外的任何成员D. 具有任何权限的成员10、引入友元的主要目的是为了( C )。

A. 增强数据安全性B. 提高程序的可靠性C. 提高程序的效率和灵活性D. 保证类的封装性11、一个类的成员函数也可以成为另一个类的友元函数,这时的友元说明( A )。

c++面向对象复习题答案版

c++面向对象复习题答案版

c++面向对象复习题答案版第1页共22页一、填空题1.c++中存有两种数据类型:(char)和(intlong)可以采用signed修饰符。

在c++中,用数组、指针、和(提及)做为函数参数,能将参数值送回。

2.为了降低函数调用的时间开销,建议将小的调用频繁的函数定义为(内联函数),方法是在函数类型前加上(inline)关键字。

3.面向对象的程序设计存有四大特征,它们就是抽象化、PCB、(承继)、(多态)。

4.拷贝构造函数是在用一个对象初始化另一个对象时被调用,系统缺省的拷贝构造函数的工作方法是(把对象的每个数据成员的值都复制到新建立的对象中)。

5.用new提出申请某一个类的动态对象数组时,在该类中必须能相匹配至(该类的)构造函数,否则应用程序可以产生一个编程错误。

6.静态数据成员必须在类外进行初始化,且静态数据成员的一个拷贝被类的所有对象(共享)。

7.在c++中,定义空载函数时,应当至少并使空载函数的参数个数或参数类型(相同)。

8.在c++中,虽然友元提供更多了类之间数据展开出访的一种方式,但它毁坏了面向对象程序设计的(PCB)特性。

9.预编译指令由三种,它们是:文件包含、(宏定义)和(条件编译)。

10.静态的成员函数没暗含的(this),所以,它们就可以轻易出访类的静态的数据成员。

11.在c++中,函数的参数存有两种传达方式,它们就是值传达和(地址)。

12.当非静态成员函数被调用时,该成员函数的(this)指向调用它的对象。

13.拷贝构造函数采用(提及)做为参数初始化建立中的对象。

14.在公有承继的情况下,基类数据成员在派生类中的出访权限(维持不变)。

15.在c++中,结构派生类对象时,总是先从(基类)的初始化已经开始的。

16.当需要统计程序中某个类创建对象的个数时,需要给该类定义(静态数据)成员。

17.在多个类之间有重复继承时,为避免被重复继承的基类数据成员在内存中有多个拷贝,应将该基类定义为(虚基类)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、填空题++中有两种数据类型:( char )和( int long )可以使用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表达式的值为__0_ _。

23.已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=’a’+4’的值为_e_ __。

24.数组与函数参数联系密切,当用数组元素作函数参数时,这是属于值传递;当数组名作为参数时,这是属于地址传递,对形参的改变可影响到实参。

25.利用“对象名.成员变量”形式访问的对象成员仅限于被声明为公有的成员;若要访问其他成员变量,需要通过公有函数或友元函数函数。

26.一个__类____和__对象___的关系,正如基本数据类型与该类型的变量一个。

27.类成员的默认访问方式是_私有的_____.28.一个类有_多个____个构造函数,有_一个____析构函数。

29.类的__静态___成员函数不能对类中的非静态成员进行默认访问。

30.如果说明类B是类A的友元类,则类B的所有成员函数都是类A的_友元函数_____。

31.利用成员函数对二元运算符重载,其左操作数为对象,右操作数为实际参数。

32.类有两种用法:一种是类的实例化,即生成类的__模板类____ ;另一种是通过__基类_____派生出新的类。

33.运算函数中的关键字是_ _operator ____,它和运算符一起组成该运算符函数的函数名。

34.如果一个类中有一个或多个纯虚函数,则这个类称为_ _抽象类____。

35.文件的打开是通过使用类_ _ _对象_____的成员函数来实现的。

36.设所有变量均为整型,则表达式(e=2,f=5,e++,f++,e+f)的值为_9___。

37.已知c的ASCII码为十进制数99,设k为字符型变量,则表达式k=‘c’+1的值为___d_____。

38.函数的形参在未被调用之前不被分配空间,函数的形参的类型要和实参的相同。

39.类的成员分为数据成员和_ _ _成员函数____。

40.类完成了面向对象程序设计的_抽象____特性。

41.构造函数是_对象_____被创建时自动执行,对象消失时自动执行的成员函数称为__析构_____对象43.在继承机制下,当对象消亡时,编译系统先执行派生类的析构函数,然后才执行派生类中子对象类的析构函数,最后执行基类的析构函数。

44.类的__静态_____数据成员是类所有对象共享的成员。

45.友元函数__不是____类的成员函数。

(是/不是)46.如果类A继承了类B,则类A称为__派生类_____,类B称为__基类_____。

47.运算符重载后,原运算符的优先级和结合特性__不会___改变。

(会/不会)48._纯虚函数_____是一个在基类中说明的虚函数,但未给出具体的实现,要求在其派生类实现。

49.文件的关闭是通过通过使用类________的成员函数________来实现的。

(去掉)二、选择题1.面向对象的(B)是一种信息隐蔽技术,目的在于将对象的使用者与设计者分开。

不允许使用者直接存取对象的属性,只能通过有限的接口与对象发生联系。

A.多态性 B.封装性 C.继承性 D.重用性2.C++的合法注释是( B)。

A./*This is a C program/* B.+ 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.06.对while、do…while循环结构,下面说法正确的是(B)。

A.只是表达形式不同 B.do…while结构中的语句至少执行一次C.while结构中的语句至少执行一次 D.条件成立时,它们有可能一次也不执行7.对中断语句的说法下面不正确的是( B )。

A.用户可以指定中断的位置 B.用户可以指定转移的位置C.break语句可以跳出本循环 D.continue语句可以结束本次循环8.以下正确的说法是(D)。

A.用户若需要调用标准函数,调用前必须重新定义B.用户可以直接调用所有标准库函数C.用户可以定义和标准库函数重名的函数,但是在使用时调用的是系统库函数D.用户可以通过文件包含命令将系统库函数包含到用户源文件中,然后调用系统库函数9.下列哪个不是重载函数在调用时选择的依据(D)。

A.参数类型 B.参数个数 C.函数类型 D.函数名10.对数组名作函数的参数,下面描述正确的是(B)。

A.数组名作函数的参数,调用时将实参数组复制给形参数组B.数组名作函数的参数,主调函数和被调函数共用一段存储单元C.数组名作参数时,形参定义的数组长度不能省略D.数组名作参数,不能改变主调函数中的数据11.如果x是整型变量,则合法的形式是( D )。

A.&(x+5) B.*x C.&*x D.*&x12.在定义一个共用体变量时,系统为其分配存储空间的原则是(B)。

A.按所有成员需要的存储空间总和分配。

B.按成员中占存储空间最大者分配。

C.按成员占存储空间最小者分配。

D.按第一个成员所需的存储空间分配。

13.下面( B)项是对构造函数和析构函数的正确定义。

A.void X::X(), void X::~X()B.X::X(参数), X::~X()C.X::X(参数), X::~X(参数)D.void X::X(参数), void X::~X(参数)14.拷贝构造函数具有的下列特点中,(D)是错误的。

A.? 如果一个类中没有定义拷贝构造函数时,系统将自动生成一个默认的B.? 拷贝构造函数只有一个参数,并且是该类对象的引用C.拷贝构造函数是一种成员函数D.拷贝构造函数的名字不能用类名15.类的析构函数的作用是( D)。

A.一般成员函数B.类的初始化C.对象初始化D.删除对象16.下列对派生类的描述中,( D )是错误的。

A.一个派生类可以作为另一个派生类的基类B.派生类至少有一个基类C.派生类的成员除了它自己的成员外,还包含了它的基类成员D.派生类中继承的基类成员的访问权限到派生类保持不变17.继承具有( B, C),即当基类本身也是某一个类派生类时,底层的派生类也会自动继承间接基类的成员。

A规律性 B.传递性 C.重复性 D.多样性18.C++类体系中,能被派生类继承的是(A,B,C)。

A.构造函数 B.虚函数 C.析构函数 D.友元函数19.下列关于动态联编的描述中,错误的是(D)。

A.动态联编是以虚函数为基础B.动态联编是运行时确定所调用的函数代码的C.动态联编调用函数操作是指向对象的指针或对象引用D.动态联编是在编译时确定操作函数的20.关于纯虚函数和抽象类的描述中,错误的是( C )。

A.纯虚函数是一种特殊的虚函数,它没有具体的实现B.抽象类是指具有纯虚函数的类C.一个基类中说明有纯虚函数,该基类派生类一定不再是抽象类D. 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出21.C++源文件的扩展名为( A )。

A.cpp B.c C.txt D.exe22.在C++语言中,( A )的陈述是正确的。

A.能使用关键字并区分大小写 B.能使用关键字并不区分大小写C.不能使用关键字并区分大小写 D.不能使用关键字并不区分大小写23.运算符+、=、*、>=中,优先级最高的运算符是( C)。

A.+ B.= C.* D.>=24.下列不合法的变量名为(A )。

A.int B.int1 C.name_1 D.name025.已知x=43,ch=‘A’,y=0;则表达式(x>=y&&ch<’B’&&!y)的值是( C )。

A.0 B.语法错 C.1 D.“假”A.语句for(i=0;;i++)表示无限循环 B.for(;;)表示无限循环26.以下不正确的是(c)。

?C.for()也表示无限循环 D.while(1)表示无限循环27.在函数的返回值类型与返回值表达式的类型的描述中,错误的是( B,D )。

A.函数返回值的类型是在定义函数时确定,在函数调用时是不能改变的B.函数返回值的类型就是返回值表达式的类型C.函数返回值表达式类型与返回值类型不同时,函数表达式类型应转换成返回值类型D.函数返回值类型决定了返回值表达式的类型28.如果一个函数无返回值,定义时它的函数类型应是(C)。

相关文档
最新文档