网院作业 发表于 2017-11-7 11:14:39

华师17秋《面向对象程序设计》在线作业题目

华师《面向对象程序设计》在线作业
一、单选题:【20道,总分:40分】
1.假定一个二维数组的定义语句为“int a={{3,4},{2,8,6}};”,则元素a的值为(    )。          (满分:2)
    A. 0    B. 4
    C. 8    D. 6
2.对类的构造函数和析构函数描述正确的是(    )。          (满分:2)
    A. 构造函数可以重载,析构函数不能重载
    B. 构造函数不能重载,析构函数可以重载
    C. 构造函数可以重载,析构函数也可以重载
    D. 构造函数不能重载,析构函数也不能重载
3.从键盘的输入中读入一个值,并赋值给x的语句是(    )。          (满分:2)
    A. cin>>x
    B. cin<<x
    C. cout>>x
    D. cout<<x
4.程序中主函数的名字为(    )。          (满分:2)
    A. main
    B. MAIN
    C. Main
    D. 任意标识符
5.函数重载是指(    )。          (满分:2)
    A. 两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
    B. 两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
    C. 两个以上的函数名字不同,但形参的个数或类型相同
    D. 两个以上的函数取相同的函数名,并且函数的返回类型相同
6.循环语句“for(int i=0; i<n; i++) cout<<i*i<<’ ’;”中循环体执行的次数为(    )。          (满分:2)
    A. 1
    B. n-1
    C. n
    D. n+1
7.函数原型语句正确的是(    )。          (满分:2)
    A. int Function(void a);
    B. void Function(int);
    C. int Function(a);
    D. void int(double a);
8.假定一个二维数组的定义语句为“int a={{3,4},{2,8,6}};”,则元素a的值为(    )。          (满分:2)
    A. 2
    B. 4
    C. 6
    D. 8
9.由C++目标文件连接而成的可执行文件的缺省扩展名为(    )。          (满分:2)
    A. cpp
    B. exe
    C. obj
    D. lik
10.do语句能够改写为(    )语句。          (满分:2)
    A. 复合
    B. if
    C. switch
    D. while
11.以下关于函数模板叙述正确的是(    )。          (满分:2)
    A. 函数模板也是一个具体类型的函数
    B. 函数模板的类型参数与函数的参数是同一个概念
    C. 通过使用不同的类型参数,函数模板可以生成不同类型的函数
    D. 用函数模板定义的函数没有类型
12.C++语言提供的预处理语句有3种,下面不属于预处理语句的是(    )。          (满分:2)
    A. 宏定义预处理
    B. 文件预处理
    C. 条件编译预处理
    D. 中止预处理
13.设”int a=15,b=26;”,则”cout<<(a,b);”的输出结果是(    )。          (满分:2)
    A. 15
    B. 26,15
    C. 15,26
    D. 26
14.下面说法中正确的是(    )。          (满分:2)
    A. C++程序总是从第一个定义的函数开始执行
    B. C++程序总是从main函数开始执行
    C. C++函数必须有返回值,否则不能使用函数
    D. C++程序中有调用关系的所有函数必须放在同一个程序文件中
15.能作为C++程序的基本单位是(    )。          (满分:2)
    A. 字符
    B. 语句
    C. 函数
    D. 源程序文件
16.switch语句能够改写为(    )语句。          (满分:2)
    A. for
    B. if
    C. do
    D. while
17.编写C++程序一般需经过的几个步骤依次是(    )。          (满分:2)
    A. 编译、编辑、连接、调试
    B. 编辑、编译、连接、调试
    C. 编译、调试、编辑、连接
    D. 编辑、调试、编辑、连接
18.x>0 (    ) y==5的相反表达式为(    )。          (满分:2)
    A. x<=0(    ) y!=5
    B. x<=0 && y!=5
    C. x>0(    ) y!=5
    D. x>0 && y==5
19.变量s的定义为“char *s=”Hello world!”;”,要使变量p指向s所指向的同一个字符串,则应选取(    )。          (满分:2)
    A. char *p=s;
    B. char *p=&s;
    C. char *p;p=*s;
    D. char *p; p=&s;
20.设x和y均为bool量,则x (    ) y为假的条件是(    )。          (满分:2)
    A. 它们均为真
    B. 其中一个为真
    C. 它们均为假
    D. 其中一个为假
二、多选题:【15道,总分:30分】

1.关于消息,下列说法中正确的是(    )。          (满分:2)
    A. 发送消息的对象请求服务,接受消息的对象提供服务
    B. 消息的发送者必须了解消息的接收者如何响应消息
    C. 在C++中,消息的发送具体体现为对接收消息的对象的某个函数的调用
    D. 每个对象只能接收某些特定格式的消息
2.若有以下定义和语句:?int?w,(*pw);?pw=w;?则对w数组元素合法引用是(    )。          (满分:2)
    A. pw
    B. *(pw+2)
    C. *(w+2)
    D. *(pw+1)
3.下列函数中,可以作为虚函数的是(    )。          (满分:2)
    A. 析构函数
    B. 成员函数
    C. 普通函数
    D. 构造函数
4.下列说法中错误的是(    )。          (满分:2)
    A. 不允许设置参数的默认值
    B. 设置参数的默认值只能在定义函数时设置
    C. 设置参数的默认值时,应该设置右边的参数
    D. 设置参数的默认值时,应该全部参数都设置
5.下面的表达式中值为0的(    )。          (满分:2)
    A. 3/5
    B. 5>>3
    C. !3
    D. 5%3
6.类A中有唯一的一个公有成员函数f,对于类A的一个对象a,执行语句f(100);成功,那么f的函数原型可以为(    )。          (满分:2)
    A. A &f(int,int=50);
    B. void f(int&)const;
    C. const A *f(const int);
    D. A f(const int&)const;
7.在C++语言中,不合法的字符常量是(    )。          (满分:2)
    A. \x43'
    B. 'ab'
    C. '\084'
    D. "\0"
8.下列说法中错误的是(    )。          (满分:2)
    A. C++程序总是从第一个定义的函数开始执行
    B. C++程序总是从main函数开始执行
    C. C++函数必须有返回值,否则不能使用函数
    D. C++程序中有调用关系的所有函数必须放在同一个程序文件中
9.下面关于指针变量和引用变量的说法正确的是(    )。          (满分:2)
    A. 指针变量存放的是内存地址,并且可以置为0
    B. 定义引用变量时,必须同时指明具体被引用的对象或变量
    C. 使用取地址操作符,可以取得指针变量自身的地址,但取不到引用变量自身的地址
    D. 类中的数据成员可以是指针变量,但不能是引用变量
10.在类的静态成员函数的实现体中,可以访问或调用(    )。          (满分:2)
    A. 本类中的静态数据成员
    B. 本类中非静态的常量数据成员
    C. 本类中其它的静态成员函数
    D. 本类中非静态的成员函数
11.关于封装,下列说法中正确的是(    )。          (满分:2)
    A. 通过封装,对象的全部属性和操作结合在一起,形成一个整体
    B. 通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)
    C. 通过封装,每个对象都成为相对独立的实体
    D. 通过封装,对象的属性都是不可见的
12.下列说法中正确的是(    )。          (满分:2)
    A. 在一个函数中,可以有多条return语句
    B. 函数的定义不能嵌套,但函数的调用可以嵌套
    C. 函数必须有返回值
    D. 即使在不同的函数中,也不可以使用相同名字的变量
13.关于派生类的说法不正确的是(    )。          (满分:2)
    A. 派生类可显现基类的任何函数成员
    B. 派生类可重载已有的函数成员
    C. 派生类可以拥有自己的新成员
    D. 派生类无法给基类的数据成员初始化
14.关于类中重载赋值运算符,正确的说法是(    )。          (满分:2)
    A. 由编译器提供的缺省赋值函数具有public访问性并且执行按位赋值
    B. 在重载派生类的赋值操作时,不但要实现派生类中数据成员的赋值,还要负责基类中数据成员的赋值
    C. 只有在类中含有指针数据成员或引用数据成员时,才需要重载类的赋值操作
    D. 通过修改类A的声明或定义,可以禁止用户在类A对象间进行任何赋值操作
15.下列说法中,正确的是(    )。          (满分:2)
    A. 被调用函数中可以不用return语句
    B. 被调用函数中可以使用多个return语句
    C. 被调用函数中,如果有返回值,就一定要有return语句
    D. 被调用函数中,一个return语句可以返回多个值给调用函数
三、判断题:【15道,总分:30分】

1.对于全局函数int f(void),与其完全等价的函数原型为const int f(    )。          (满分:2)
    A. 错误
    B. 正确
2.当函数的返回值是数组类型的,传递的是数组第一个元素的地址。          (满分:2)
    A. 错误
    B. 正确
3.变量在使用之前需要首先声明其类型和名称。          (满分:2)
    A. 错误
    B. 正确
4.系统可以提供默认的析构函数。          (满分:2)
    A. 错误
    B. 正确
5.不同对象可以调用相同名称的函数,并可导致完全相同的行为的现象称为多态性。          (满分:2)
    A. 错误
    B. 正确
6.inline函数表示编译器一定会将函数体直接插入到调用此函数的地方,这样可以加快程序的运行速度。          (满分:2)
    A. 错误
    B. 正确
7.C++程序中,通常使用const来定义符号常量,定义时必须指出类型。          (满分:2)
    A. 错误
    B. 正确
8.在C++中,将数据从一个对象到另一个对象的流动抽象为“流”。          (满分:2)
    A. 错误
    B. 正确
9.说明函数原型时不需要指明每个函数参数的名字,只需要说明每个参数的类型和返回值类型就可以了。          (满分:2)
    A. 错误
    B. 正确
10.关键字friend用于声明友元。          (满分:2)
    A. 错误
    B. 正确
11.在C++语言中,非保值转换应用强制类型转换。          (满分:2)
    A. 错误
    B. 正确
12.输出字符指针就是输出字符串。          (满分:2)
    A. 错误
    B. 正确
13.变量必须先定义或说明,后使用。          (满分:2)
    A. 错误
    B. 正确
14.运算符重载可以改变运算符原来的结合性。          (满分:2)
    A. 错误
    B. 正确
15.C++语言支持封装性和继承性,不支持多态性。          (满分:2)
    A. 错误
    B. 正确


页: [1]
查看完整版本: 华师17秋《面向对象程序设计》在线作业题目