端木老师 发表于 2018-4-20 11:35:40

南开18春《面向对象程序设计》在线作业

18春学期《面向对象程序设计》在线作业
一、单选题:
1.(单选题)面向对象程序设计方法以()为中心进行分析和设计。          (满分:)
    A结构    B模块
    C对象
    D类
    正确答案:——C——
2.(单选题)已知函数原型:voidf(inta,intb=3,charc='*');则下面的函数调用中,不合法的调用是()。          (满分:)
    Af(5)
    Bf(5,8)
    Cf(6,,'#')
    Df(0,0,'#')
    正确答案:——C——
3.(单选题)有关带默认参数的函数的描述正确的是()。          (满分:)
    A只能在函数定义时设置默认参数值
    B只能在函数声明时设置默认参数值
    C函数调用时,必须使用默认的参数值,不能给出新的实参值
    D设置默认参数时,应该设置最右边的若干个参数的默认值
    正确答案:——D——
4.(单选题)下列关于虚函数的说明中,正确的是()。          (满分:)
    A从虚基类继承的函数都是虚函数
    B虚函数不得是静态成员函数
    C只能通过指针或引用调用虚函数
    D抽象类中的成员函数都是虚函数
    正确答案:————
5.(单选题)下列运算符中,()在C++中不能重载。          (满分:)
    A?:
    B+
    C-
    D<=
    正确答案:————
6.(单选题)下面关于私有继承方式的论述中错误的是()。          (满分:)
    A基类中的私有成员对其对象不可见
    B基类中的私有成员对其派生类不可见
    C基类中的公有成员对其派生类可见
    D基类中的保护成员对其派生类不可见
    正确答案:————
7.(单选题)如果一个类至少有一个纯虚函数,那么就称该类是()。          (满分:)
    A抽象类
    B虚基类
    C派生类
    D以上都不对
    正确答案:————
8.(单选题)类的默认的无参构造函数()。          (满分:)
    A在任何情况下都存在
    B仅当未定义无参构造函数时存在
    C仅当未定义有参构造函数时存在
    D仅当未定义任何构造函数时存在
    正确答案:————
9.(单选题)对A、B两个类进行多重继承得到派生类C,则创建派生类C的对象时,从基类B中继承过来的成员变量由()类的构造函数进行初始化。          (满分:)
    AA
    BB
    CC
    D都可以
    正确答案:————
10.(单选题)静态数据成员初始化在()进行,而且前面不加static,以免与一般静态变量或对象相混淆。          (满分:)
    A类体内
    B类体外
    C构造函数内
    D内联函数内
    正确答案:————
11.(单选题)类对象占用内存的大小与()有关。          (满分:)
    A数据成员
    B成员函数
    C数据成员和成员函数
    D私有成员
    正确答案:————
12.(单选题)类aClass的定义如下:\nclassaClass\n{public:\naClass(){}\naClass(inti){value=newint(i);}\nint*value;\n}\n若要对类中的value赋值,则下面的语句中,正确的是()。          (满分:)
    AaClassmy;my.value=10;
    BaClassmy;*my.value=10;
    CaClassmy;my.*value=10;
    DaClassmy(10);
    正确答案:————
13.(单选题)假定MyClass为一类,执行MyClassa,b(2),*p;语句时会自动调用该类构造函数()次。          (满分:)
    A2
    B3
    C4
    D5
    正确答案:————
14.(单选题)假设堆内存分配均成功,则下面程序段完全正确的是()。          (满分:)
    Aint*p=newint(3);cout<<*p;deletep;
    Bint*p=newint={1,2,3,4,5
    Cint*p=newint;for(inti=0;i<5;i++,p++){*p=i;cout<<*p;
    D以上程序段均正确
    正确答案:————
15.(单选题)下列关于构造函数说法不正确的是()。          (满分:)
    A构造函数必须与类同名
    B构造函数可以省略不写
    C构造函数必须有返回值
    D在构造函数中可以对类中的成员进行初始化
    正确答案:————
16.(单选题)下列关于构造函数调用顺序的描述中,正确的是()。          (满分:)
    A创建派生类对象时,先调用基类的构造函数,后调用派生类的构造函数
    B创建基类对象时,先调用基类的构造函数,后调用派生类的构造函数
    C创建派生类对象时,先调用派生类的构造函数,后调用基类的构造函数
    D创建基类对象时,先调用派生类的构造函数,后调用基类的构造函数
    正确答案:————
17.(单选题)下列关于this指针的说法,错误的是()。          (满分:)
    Athis指针指向当前正在操作的对象
    Bthis指针只存在于非静态成员函数中
    C在成员函数中对非静态数据成员的访问是通过this指针完成的
    D静态成员函数中可以通过this指针访问非静态成员
    正确答案:————
18.(单选题)已知“float*p;p=newfloat;”,若要释放p所指向的堆中的这些字节,下列语句正确的是()。          (满分:)
    Adeletep;
    Bdeletep[];
    Cdelete[]p;
    Ddeletep;
    正确答案:————
19.(单选题)下列关于成员函数特征的描述中,错误的是()。          (满分:)
    A成员函数可以重载
    B成员函数一定是内联函数
    C成员函数可以设置参数的默认值
    D成员函数可以是静态的
    正确答案:————
20.(单选题)下面关于类的成员函数描述不正确的是()。          (满分:)
    A静态成员函数内可以直接访问类的非静态成员数据
    B静态成员函数内可以直接访问类的静态成员数据
    C非静态成员函数可以直接访问类的非静态成员数据
    D非静态成员函数可以直接访问类的静态成员数据
    正确答案:————
21.(单选题)下列关于运算符重载正确的是()。          (满分:)
    A运算符重载可以改变运算符的操作数个数
    B运算符重载可以改变运算符的优先级
    C运算符重载可以改变运算符的结合性
    D运算符重载不可以改变语法结构
    正确答案:————
22.(单选题)下面对静态数据成员的描述中,正确的是()。          (满分:)
    A静态数据成员可以在类体内进行初始化
    B静态数据成员不可以被该类的对象调用
    C静态数据成员不能受private控制符的作用
    D静态数据成员可以直接用类名访问
    正确答案:————
23.(单选题)友元重载运算符obj1>obj2被C++编译器解释为()。          (满分:)
    Aoperator>(obj1,obj2)
    B>(obj1,obj2)
    Cobj1.operator>(obj2)
    Dobj2.operator>(obj1)
    正确答案:————
24.(单选题)下列关于动态联编的描述中,错误的是()。          (满分:)
    A动态联编是以虚函数为基础的
    B动态联编是在运行时确定所调用的函数代码的
    C动态联编调用函数操作是通过指向对象的指针或对象
    D动态联编是在编译时确定操作函数的
    正确答案:————
25.(单选题)抽象类的作用主要是()。          (满分:)
    A直接用作基类
    B直接用作指针
    C引用的基类型
    D包括以上各项
    正确答案:————
26.(单选题)交换两个string类对象所表示的字符串的内容,应该使用string类的()函数。          (满分:)
    Aassign
    Binsert
    Cswap
    Dfind
    正确答案:————
27.(单选题)任意一个类,析构函数的个数最多是()。          (满分:)
    A不限个数
    B1
    C2
    D3
    正确答案:————
28.(单选题)派生类中的成员不能访问基类中的()。          (满分:)
    A私有成员
    B公有成员
    C保护成员
    D以上都可以
    正确答案:————
29.(单选题)多继承的构造函数顺序可分为如下4步:\n①所有非虚基类的构造函数按照它们被继承的顺序构造。\n②所有虚基类的构造函数按照它们被继承的顺序构造。\n③所有子对象的构造函数按照它们声明的顺序构造。\n④派生类自己的构造函数体\n这四个步骤的正确顺序是()。          (满分:)
    A④③①②
    B②④③①
    C②①③④
    D③④①②
    正确答案:————
30.(单选题)要在类对象上使用运算符,以下不用必须被重载的运算符是()。          (满分:)
    A[]
    正确答案:————
转载注明www.ap5u.com

页: [1]
查看完整版本: 南开18春《面向对象程序设计》在线作业