c++选择题题集_第1页
c++选择题题集_第2页
c++选择题题集_第3页
c++选择题题集_第4页
c++选择题题集_第5页
免费预览已结束,剩余8页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实用文档C+琏择题集1 .以下的各类函数中,不是类的成员函数.C A构造函数B析构函数C友元函数 D拷贝初始化构造函数2 .作用域运算符“:的功能是:B A标识作用域的级别的B指出作用域的范围的C给定作用域的大小的D标识成员是属于哪个类的3 .以下说明中const char *ptr ;其中ptr应该是:C A指向字符常量的指针B指向字符的常量指针C指向字符串常量的指针D指向字符串的常量指针4 .:print函数是一个类的常成员函数,它无返回值,以下表示中,是正确的. A Avoid printconst ; Bconst void print ;Cvoid const print : Dvo

2、id printconst ;5 .在类定义的外部,可以被访问的成员有C A所有类成员Bprivate的类成员Cpublic的类成员 Dpublic 或private 的类成员6 .要求翻开文件"dMile.dat",可写入数据,正确的语句是:B ifstream infile"d:file.dat", ios:in;ifstream infile"d:file.dat", ios:in;ofstream infile"d:file.dat", ios:out;fstream infile"d:file.

3、dat", ios:in|ios:out;7 .关于类和对象不正确的说法是:C A类是一种类型,它封装了数据和操作B对象是类的实例C 一个类的对象只有一个D一个对象必属于某个类8 .在C+,类与类之间的继承关系具有 C A自反性 B对称性 C传递性 D反对称性9 .结构化程序设计所规定的三种根本限制结构是:C A输入、处理、输出 B树形、网形、环形C顺序、选择、循环 D主程序、子程序、函数文案大全实用文档10 .C+语言是从早期的C语言逐渐开展演变而来的.与C语言相比,它在求解问题方法上进行的最大改良是:B A面向过程 B面向对象 C平安性 D复用性11 .在C+实现封装是借助于B

4、A枚举 B类 C数组 D函数12 .C+语言是从早期的C语言逐渐开展演变而来的与 C语言相比,它在求解问题方法上进行的 最大改良是:B A面向过程B面向对象C平安性 D复用性13 .在C+用D 能够实现将参数值带回.a数组b指针c引用 d上述ABC都可14 .考虑函数原型void testint a,int b=7,char ch="*",下面的函数调用中,属于不合法调用的是:C Atest5 Btest5,8Ctest6,"#"Dtest0,0,"*"15 .以下关于类和对象的表达中,错误的选项是:A A一个类只能有一个对象;B对象

5、是类的具体实例;C类是对某一类对象的抽象;D类和对象的关系是一种数据类型与变量的关系.16 .:int m=10 ;以下表示引用的方法中,正确的选项是:C Aint &Z ; Bint &t=10 ; Cint &X=m ; Dfloat &f=&m ;17 .对于int *pa5;的描述中,正确的选项是:D Apa是一个指向数组的指针,所指向的数组是5个int型元素Bpa是一个指向某数组中第5个元素的指针,该元素是int型变量Cpa5表示数组的第5个元素的值,是int型的值Dpa是一个具有5个元素的指针数组,每个元素是一个int型指针18 .定义析构函

6、数时,应该注意:C A具名与类名完全相同B返回类型是void类型C无形参,也不可重载D函数体中必须有 delete语句19 .在公有继承的情况下,基类的成员私有的除外在派生类中的访问权限 B A受限制B保持不变C受保护D不受保护文案大全实用文档20 .以下不是函数重载所要求的条件是:D A函数名相同B参数个数不同C参数类型不同D函数返回值类型不同21 .在C+执行以下4条语句后输出rad值为:C static int hot=200;int &rad=hot ;hot=hot+100 ;cout<<rad<<endl ;A 0 B 100 C 300D 2002

7、2 .类clase CC1的说明如下,错误的语句是:A clase CC1int a=2 ;ACC1;/Bpublic:CC1int val ; /CCC1;/D;23 .以下各类函数中,不是类的成员函数是:C A构造函数B 析构函数C友元函数D拷贝构造函数24 .类的指针成员的初始化是通过函数完成的,这个函数通常是:C A析构函数B构造函数C其它成员函数D友元函数25 .关于构造函数的说法,不正确的选项是:A A没有定义构造函数时,系统将不会调用它B具名与类名完全相同C它在对象被创立时由系统自动调用D没有返回值26 .按解释中的要求在以下程序划线处填入的正确语句是:C #include &l

8、t;iostream.h>class Basepublic:void funcout<<"Base:fun"<<endl ; ;文案大全实用文档class Derived:public Base public:void fun()/在此空格处调用基类的函数fun()cout<<"Derived:fun"<<endl ; ;A)fun() ; B)Base.fun() ; C)Base:fun(); D)Base->fun();27 .在C+编译器所生成的文件的扩展名为( B )A) .cpp B

9、) .obj C) .lib D) .exe28 .在保护继承的情况下,基类的成员(私有的除外)在派生类中的访问权限( C )A)受限制B)保持不变C)受保护 D)不受保护29 .有如下一段程序:int f1(float);int f2(char) ;int f3(float);int f4(float);int (*pf ) (float );那么以下不合法的是:(C )A)int (*p) (float) =&f1 ; B)pf=&f4 ; C)pf=&f2 ; D)pf=&f3 ;30 .通常拷贝构造函数的参数是:(C )A)对象名B)对象的成员名C)对象

10、的引用名D)对象的指针名31 .系统在调用重载函数时,不能作为确定哪个重载函数被调用的依据是:(D )A)参数个数B)参数类型C)函数名称D)函数的返回值类型32 .以下描述中,正确的选项是:(D )A)所有的运算符号都可以重载.B)基类类型的指针可以指向子类,子类类型的指针也可以指向基类.C)可以在类的构造函数中对静态数据成员进行初始化.D)动态联编要满足两个条件:被调用的成员函数是虚函数;用指针或引用调用虚函数.33 .关于成员函数特征的描述中,错误的选项是:(A )A)成员函数一定是内联函数B) 成员函数可以重载C)成员函数可以设置参数的默认值 文案大全D)成员函数可以是静态的实用文档3

11、4 .以下关于构造函数的描述中,错误的选项是:D A构造函数可以设置默认参数;B构造函数在定义类对象时自动执行C构造函数可以是内联函数;D构造函数不可以重载35 .下面描述中,表达错误的选项是:B A公有继承时,基类中的public成员在派生类中仍是public的B公有继承时,基类中的private成员在派生类中仍是private的C公有继承时,基类中的protected成员在派生类中仍是protected的D私有继承时,基类中的public成员在派生类中是 private的36 .C+语言是从早期的C语言逐渐开展演变而来的,与C语言相比,C+侪求解问题方法上进行 的最大改良是:B A面向过程

12、B面向对象C平安性 D复用性37 .有如下类声明" class Aint x ;; ",那么A类的成员x是:B A公有数据成员B私有数据成员C公有成员函数D私有成员函数38 .有如下程序:执行后的输出结果应该是:A #include<iostream.h>class clastatic int n ;public:clan+ ; clan-; static int get_nreturn n ; ;int cla二n=0;int maincla * p=new cla ;delete p ;cout<v"n="vvcla二get_n&l

13、t;<endl;return 0 ;An=0文案大全B)n=1C)n=3D)n=4实用文档39 .有如下程序:执行后的输出结果应该是:(A )#include <iostream.h>class Apublic: A()cout<<"A" ; ;class C:public Apublic:C()cout<<"C" ; ;void main()C cobj ; A) AC B) CA C) A D) C40 .有如下程序:执行后的输出结果应该是:(D )#include <iostream.h>cla

14、ss BASEpublic: BASE()cout<<"BASE" ;class DERIVED: public BASEpublic:DERIVED()cout<<"DERIVED" ;void main()DERIVED x ; A)BASE B)DERIVED C)BASEDERIVEDD)DERIVEDBASE41 .类TM和类TN是两个独立的类,那么类TM中哪种形式的数据成员一定是不允许的:(C )A)TM * a B)TN & a C)TM a D)TN a ;42 .通过下述哪一项调用虚函数时,采用动态联编.

15、(A )A)对象指针 B)对象名C)成员名限定D)派生类名43 .在下述哪种情况下适宜采用inline定义内联函数.(C )A)函数体含有循环语句B)函数体含有递归语句C)函数代码少、频繁调用 文案大全D)函数体含有switch语句实用文档44 .创立动态对象,需要使用操作符 A A new B delete C . D *45 .删除动态对象,需要使用操作符B A new B deleteC . D *46 .在C+不能被重载的一组运算符是:A A: ?: . sizeofB?: . sizeof + ->C: ?: new delete D+- ?:sizeof47 .如果类A被说明

16、成类B的友元,那么C A类A的成员即是类B的成员B类B的成员即是类A的成员C类A的成员函数可以访问类 B的所有成员D类B的成员函数可以访问类 A的所有成员48 .下面关于友元的描述中,错误的选项是:D A友元函数可以直接访问该类的私有成员.B一个类的友元类中的所有成员函数都是这个类的友元函数.C利用友元可以提升程序的运行效率,但却破坏了封装性.D友元关系不能被继承,是双向可交换的.49 .以下虚基类的声明中,正确的选项是:B Aclass virtual B: public A Bclass B: virtual public ACclass B: public A virtual Dvirt

17、ual class B: public A50 .C+设置虚基类的目的是A A消除二义性B简化程序C提升运行效率D减少目标代码51 .有如下模板定义:template <class T>T funT x,T yreturn x*x+y*y; 在以下对fun的调用中,错误的选项是:C Afun2,8Bfun2.0,8.2Cfun2.3,8Dfun<float>2,8.352 .通常情况下,函数模板中的类型参数个数不能是A A0个 B1个 C2个 D3个53 .以下关于this指针的表达中正确的选项是:D A任何与类相关的函数都有this指针; B类的成员函数都有this指

18、针;C类的友员函数都有this指针;D类的非静态成员函数才有this指针;文案大全实用文档54 .当一个类的某个函数被说明为 virtual时,在该类的所有派生类中的同原型函数(A )A)都是虚函数B)只有被重新说明时才是虚函数C)都不是虚函数 D)只有被重新说明为virtual时才是虚函数55 .在派生类中重新定义虚函数时,必须在以下哪方面与基类保持一致.(A )A)参数类型B)参数名字C)操作内容D)赋值56 .关于const关键字说法错误的选项是(D )A)const关键字可以修饰对象和成员函数B)const对象不能被修改C)const成员函数不能修改类数据成员D)const可以用于说明

19、类57 .执行如下程序后的输出结果是:(B )#include<iostream.h>class teststatic int count ;public:test()count+ ; test()count- ; static int getCount()return count ; ;int test:count=0 ;int main()test * p=new test;test * q=new test;delete p ;cout<<"count="<<test二getCount()<<endl ;return 0

20、 ;A)count=0 B)count=1 C)count=2 D)count=358 .关于类模板的说法正确的选项是:(B )A)类模板的主要作用是生成抽象类B)类模板实例化时,编译器将根据给出的模板实参生成一个类文案大全实用文档C)在类模板中的数据成员具有同样类型D)类模板中的成员函数没有返回值59 .有如下说明语句int a10=1,2,3,4,5,6,7,8,9,10;int *p=a ;那么数值为9的表达式是:(B ).A)*p+9 B)*(p+8) C)*p+=9 D)p+760 .以下关键字不能用来声明类的访问权限的是:(C )A)public B)private C)stati

21、c D)protected61 .实现运行时的多态性采用(D )A)重载函数B)构造函数C)析构函数D)虚函数62 .以下说明语句中正确的选项是:(D )A)int a,&ra=a,&&ref=ra ; B)int &refa10;C)int a,&ra=a,&*refp=&ra ; D)int *pi, *&pref=pi ;63 .进行文件操作时需要包含头文件(C )A)iostream.h B)stdio.h C)fstream.h D)stdlib.h64 .使用如setw()的格式操纵符时需要包含头文件(C )A)ios

22、tream.h B)fstream.h C)iomanip.h D)stdlib.h65 .对C+邮言和C语言的兼容性,描述正确的选项是:( A )A)C+容C B)C+局部兼容C C)C+不兼容C D)C 兼容C+66 .在C+使用流进行输入输出,其中用于屏幕输出的对象是:( C )A)cerr B)cin C)cout D)cfile67 .对使用关键字new所开辟的动态存储空间,释放时必须使用( C )A)free B)create C)delete D)realse68 .如没有使用private关键字定义类的数据成员,那么默认为( A )A)private B)public C)pr

23、otected D)friend69 .使用值传递方式将实参传给形参,以下说法正确的选项是:( A )A)形参是实参的备份 B)实参是形参的备份C)形参和实参是同一对象D)形参和实参无联系70 .在函数调用时,如某一默认参数要指明一个特定值,那么有( A )A)其之前所有参数都必须赋值 B)其之后所有参数都必须赋值C)其前、后所有参数都必须赋值D)其前、后所有参数都不必赋值文案大全实用文档71 .设存在函数int max(int , int)返回两参数中较大值,假设求 22, 59, 70三者中最大值,下 列表达式不正确的选项是:(C )A)int m = max(22 , max(59, 7

24、0) ; B)int m = max(max(22 , 59), 70);C)int m = max(22 , 59, 70); D)int m = max(59 , max(22, 70);72 .以下哪个类型函数不适合声明为内联函数( A )A)函数体语句较多B)函数体语句较少C)函数执行时间较短D)函数执行时间过长73 . int Func(int , int);不可与以下哪个函数构成重载( B )A)int Func(int , int , int) ; B)double Func(int , int);C)double Func(double , double) ; D)double

25、 Func(int , double);74 .类的私有成员可在何处访问(D )A)通过子类的对象访问B)本类及子类的成员函数中C)通过该类对象访问D) 本类的成员函数中75 .如果没有为一个类定义任何构造函数的情况下,以下描述正确的选项是:( A )A)编译器总是自动创立一个不带参数的构造函数B)这个类没有构造函数C)这个类不需要构造函数D)该类不能通过编译76 . 一个类可包含析构函数的个数是:( B )A)0个 B)1 个 C)0 个或1个 D)0 个或多个77 . 一个类可包含构造函数的个数是:( D )A)0个 B)0 个或1个 C)0 个或多个D)1个或多个78 . this指针存

26、在的目的是:(B )A)保证基类公有成员在子类中可以被访问B)保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码C)保证基类保护成员在子类中可以被访问D)保证基类私有成员在子类中可以被访问79 .以下关于类的权限的描述错误的选项是:( A )A)类本身的成员函数只能访问自身的私有成员B)类的对象只能访问该类的公有成员C)普通函数不能直接访问类的公有成员,必须通过对象访问D) 一个类可以将另一个类的对象作为成员80 .在编译指令中,宏定义使用哪个指令( B )A)#include B)#define C)#if D)#else文案大全实用文档81 .设类A将其它类对象作为成员,那么建立 A类对象时,以下描述正确的选项是:(B )A)A类构造函数先执行B)成员构造函数先执行C)两者并行执行D) 不能确定82 .以下描述错误的选项是:(A )A)在创立对象前,静态成员不存在B)静态成员是类的成员C)静态成员不能是虚函数D)静态成员函数不能直接访问非静态成员83 .对于友元描述正确的选项是:( B )A)友元是本类的成员函数B)友元不是本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论