欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    C++复习题(1).docx

    • 资源ID:3153777       资源大小:41.68KB        全文页数:10页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C++复习题(1).docx

    C+复习题一、选择题 (1)下面关于类和对象的描述中,错误的是 A A)类就是C语言中的结构体类型,对象就是C语言中的结构体变量 B)类和对象之间的关系是抽象和具体的关系 C)对象是类的实例,一个对象必须属于一个已知的类 D)类是具有共同行为的若干对象的统一描述体 (2)以下各选项组中,均是C+语言关键字的组是 A A) public operator this B)shod string static C)it while > D)private cout printf (3)在C+语言中,数据封装要解决的问题是 D A)数据的规范化 B)便于数据转换 C)避免数据丢失 D)防止不同模块之间数据的非法访问 (4)以下程序中,错误的行是 A #include<iostream. h> class A public: int n2: A( int val)cout<<val<<endl; A; ; void main A a(0); A) B) C) D) (5)对类的构造函数和析构函数描述正确的是 A A)构造函数可以重载,析构函数不能重载 B)构造函数不能重载,析构函数可以重载 C)构造函数可以重载,析构函数也可以重载 D)构造函数不能重载,析构函数也不能重载 (6)下面程序的运行结果为 C #include(iostream. h> class A int num; public: A(int i)num=i; A(A &a)numa. num+; void printcout<<num; ; void main A a(1),b(a); a. print; b.print; A)11 B)12 C)21 D)22 (7)下面对静态数据成员的描述中,正确的是 A A)静态数据成员是类的所有对象共享的数据 B)类的每个对象都有自己的静态数据成员 C)类的不同对象有不同的静态数据成员值 D)静态数据成员不能通过类的对象调用 (8)如果类A被说明成类B的友元,则 D A)类A的成员即类B的成员 B)类B的成员即类A的成员 C)类A的成员函数不得访问类B的成员 D)类B不一定是类A的友元 (9)可以用p.a的形式访问派生类对象P的基类成员a,其中a是 D A)私有继承的公有成员 B)公有继承的私有成员 C)公有继承的保护成员 D)公有继承的公有成员 (10)建立派生类对象时,3种构造函数分别是a(基类的构造函数)、b(成员对象的构造函数)、c(派生类的构造函数)这3种构造函数的调用顺序为 A A)abc B)acb C)cab D)cba (11)下面关于虚函数的描述,错误的是 B A)在成员函数声明的前面加上virtual修饰,就可把该函数声明为虚函数 B)基类中说明了虚函数后,派生类中对应的函数也必须说明为虚函数 C)虚函数可以是另一个类的友元函数,但不能是静态成员函数 D)基类中说明的纯虚函数在其任何派生类中都必须实现 (12)下面关于模板的描述,错误的是 A A)函数模板和类模板的参数可以是任意的数据类型 B)类模板不能直接使用,必须先实例化为相应的模板类然后定义了模板类的对象后才能使用 C)函数模板不能直接使用,需要实例化为模板函数后才能使用 D)类模板的成员函数都是模板函数 (13)语句ofstream f(”SALARY. DAT",ios:app iios:binary);的功能是建立流对象f,试图打开文件SALARY. D AT并与之连接,并且 A A)若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件 B)若文件存在,将其置为空文件;若文件不存在,打开失败 C)若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件 D)若文件存在,打开失败;若文件不存在,建立一个新文件 (14)下面程序的运行结果是 C #include<iostream. h> void main int num=1; int &ref=num; refref+2; cout<<num; num=num+3; cout<<ref<<endl; A)13 B)16 C)36 D)33 假定AB为一个类,则该类的拷贝构造函数的声明语句为 C 。 A AB &(AB x) B. AB(AB x) C AB(AB &) D. AB(AB * x) 对于结构中定义的成员,其隐含访问权限为 A 。 A public B. protected C private D. static 当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为 D 。 A ios:in B. ios:out C ios:int | ios:out D. 没有 (18)下列关于C+语言类的描述中错误的是 C A)类用于描述事物的属性和对事物的操作 B)类与类之间通过封装而具有明确的独立性 C)类与类之间必须是平等的关系,而不能组成层次结构 D)类与类之间可以通过一些方法进行通信和联络 (19)下列描述中哪个是正确的。 B A)私有派生的子类无法访问父类的成员 B)类A的私有派生子类的派生类C无法初始化其祖先类A对象的属性,因为类A的成员对类C是不可访问的 C)私有派生类不能作为基类派生子类 D)私有派生类的所有子孙类将无法继续继承该类的成员 (20)下列关于构造函数说法不正确的是 C A)构造函数必须与类同名 B)构造函数可以省略不写 C)构造函数必须有返回值 D)在构造函数中可以对类中的成员进行初始化 (21)如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是 D A)一元运算符 B)二元运算符 C)选项A)和选项B)都可能 D)重载错误 (22)在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是 D A)一元成员运算符 B)二元成员运算符 C)一元友元运算符 D)选项B)和选项C)都可能 (23)下列关于模板的说法正确的是 D A)模板的实参在任何时候都可以省略 B)类模板与模板类所指的是同一概念 C)类模板的参数必须是虚拟类型的 D)类模板中的成员函数全部都是模板函数 (24)表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是 B A) showbase和eof B)showpoint和eof C)showpoint和bad D)showpoint和good (25)一个类的友元函数能够访问该类的 D A)私有成员 B)保护成员 C)公有成员 D)所有成员 (26)C+语言对C语言做了很多改进,C+语言相对于C语言的最根本的变化是 D A)增加了一些新的运算符 B)允许函数重载,并允许设置缺省参数 C)规定函数说明符必须用原型 D)引进了类和对象的概念 (27)对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是 D A)公有类型 B)私有类型 C)保护类型 D)友元类型 (28)在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是 C A)友元函数 B)虚函数 C)构造函数 D)析构函数 (29)类的析构函数的作用是 D A)一般成员函数的初始化 B)类的初始化 C)对象的初始化 D)删除类创建的对象 (30)下列说法正确的是 B A)内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方 B)内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方 C)类的内联函数必须在类体内定义 D)类的内联函数必须在类体外通过加关键字inline定义 (31)下面对静态数据成员的描述中,正确的是 D A)静态数据成员可以在类体内进行初始化 B)静态数据成员不可以被类的对象调用 C)静态数据成员不能受private控制符的作用 D)静态数据成员可以直接用类名调用 (32)下面对于友元函数描述正确的是 C A)友元函数的实现必须在类的内部定义 B)友元函数是类的成员函数 C)友元函数破坏了类的封装性和隐藏性 D)友元函数不能访问类的私有成员 (33)在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是C A)派生类的对象可以赋给基类的对象 B)派生类的对象可以初始化基类的引用 C)派生类的对象可以直接访问基类中的成员 D)派生类的对象的地址可以赋给指向基类的指针 (34)下面程序的运行结果为 C #include<iostream. h> class A public: Acout<<”1”; Acout<<”2”; class B:public A public: Bcout<<”3”; Bcout<<”4”; void main B b; A)1234 B)1324 C)1342 D)3142 (35)下列关于虚基类的描述,错误的是 B A)设置虚基类的目的是为了消除二义性 B)虚基类的构造函数在非虚基类之后调用 C)若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用 D)若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数 (36)下列关于多态性的描述,错误的是 C A)C+语言的多态性分为编译时的多态性和运行时的多态性 B)编译时的多态性可通过函数重载实现 C)运行时的多态性可通过模板和虚函数实现 D)实现运行时多态性的机制称为动态绑定 (37)下列运算符中,在C+语言中不能重载的是 C A)* B)>= C): D)/ (38)定义静态成员函数的主要目的是 C A)方便调用 B)有利于数据隐蔽 C)处理类的静态成员变量 D)便于继承 (39)设有以下类和对象的定义: class A public: int m; ; A k1, k2, *p1, *p2; 则下面针对成员变量m的引用,错误的是 B A)k1m=1 B)k2一>m=2 C)pl一>m=3 D)(*p2)m=4 (40)有关构造函数的说法中错误的是 D A)构造函数名字和类的名字一样 B)构造函数在说明类变量时自动执行 C)构造函数无任何函数类型 D)构造函数有且只有一个 (41)关于友元的描述中错误的是 D A)友元函数可以访问该类的私有数据成员 B)一个类的友元类中的成员函数都是这个类的友元函数 C)友元可以提高程序的运行效率 D)类和类之间的友元关系可以继承 (42)在面向对象方法中,实现信息隐蔽是通过对象的某一特性来实现的,这个特性是 A A)封装 B)类 C)对象 D)继承 二、填空题 (1)在面向对象的程序设计中,类描述的是具有相似性质的一组 对象 。 (2) C+语句const char * const p="hello" , ,所定义的指针p和它所指的内容都不能被 改变 。 (3) C+语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取 传地址 方式。 (4)继承的方式有公有继承、私有继承和 保护继承 3种。 (5)表达式operator+(x,y)还可以表示为 x+y 。 (6)类模板的使用实际士:是将类模板实例化成一个具体的 类 。 (7)在面向对象方法中,类之间共享属性和操作的机制称为 继承 。 (8)通过使用new和delete两个运算符进行的分配为 动态 存储分配 。 (9)在C+语言中,访问一个对象的成员所用的运算符是 成员选择运算符 ,访问一个指针所指向的对象的成员所用的运算符是 成员访问运算符 。 (10) C+语言支持的两种多态性分别是编译时的多态性和 运行时 的多态性。 (11)如果要把返回值为void的函数A声明为类B的友元函数,则应在类B的定义中加入的语句是 friend void A: 。 (12)如果类B继承了类A,则称类A为类B的基类,类B称为类A的 派生类 。 (13)将x+y中的+运算符用友元函数重载应写为 operator+(x,y) 。 (14)非成员函数应声明为类的 友元 函数才能访问这个类的private成员。 (15)派生类中的成员不能直接访问基类中的 私有 成员。 (16)派生类的成员一般分为两部分,一部分是 从基类继承的成员 ,另一部分是自己定义的新成员。 (17)在面向对象的程序设计中,用来请求对象执行某一处理或回答某些信息的要求称为消息(18)假定要动态分配一个类型为Worker的具有n个元素的数组,并由r指向这个动态数 组,则使用的语句是 Worker *r=new Workern 。 (19)将关键字const写在函数头之后,函数体之前,说明该函数是一个const成员函数。 比时const不是指定函数的返回值,而是修饰 指针。 (20)若要在程序文件中进行标准输入输出操作,则必须在开始的#include命令中使用 头文件 <iostream> 。 三、阅读下面程序,写出程序运行结果 1、 #include<iostream. h> int c; /全局变量 class A private: int a; static int b; public; Aa=0;c0; void setaa+; void setbb+; void setcc+; void displaycout<<a<<” ”<<b<<” ”<<c; ; int A:b=0; void main A al,a2; al.seta; al.setb; al.setc; a2.seta; a2.setb; a2.setc; a2.display;

    注意事项

    本文(C++复习题(1).docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开