奥鹏网院作业 发表于 2016-2-17 14:09:06

15秋奥鹏福师《C++语言程序设计》在线作业二

福师《C++语言程序设计》在线作业二

一、单选题:
1.下列关于函数模板和模板函数的描述,错误的是(    )          (满分:2)
    A. 函数模板是一组函数的模板
    B. 模板函数是一个实在的函数
    C. 函数模板是定义重载函数的一种工具
    D. 模板函数在编译时不生成可执行代码
2.对于结构中定义的成员,其隐含访问权限为(    )(    )。          (满分:2)
    A. public
    B. protected
    C. private
    D. static
3.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是(    )(    )。          (满分:2)
    A. 增加了一些新的运算符
    B. 允许函数重载,并允许设置缺省参数
    C. 规定函数说明符必须用原型
    D. 引进了类和对象的概念
4.下列关于C++语言类的描述中错误的是(    )          (满分:2)
    A. 类用于描述事物的属性和对事物的操作
    B. 类与类之间通过封装而具有明确的独立性
    C. 类与类之间必须是平等的关系,而不能组成层次结构
    D. 类与类之间可以通过一些方法进行通信和联络
5.以下叙述中正确的是(    )。          (满分:2)
    A. 构成C++语言程序的基本单位是类
    B. 可以在一个函数中定义另一个函数
    C. main(    )函数必须放在其他函数之前
    D. 所有被调用的函数一定要在调用之前进行定义
6.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是(    )(    )。          (满分:2)
    A. 友元函数
    B. 虚函数
    C. 构造函数
    D. 析构函数
7.下面不能正确表示a*b/(c*d)的表达式是(    )          (满分:2)
    A.(a*b)/c*d
    B. a*b/(c*d)
    C. a/c/d*b
    D. a*b/c/d
8.在对typedef的叙述中错误的是(    )。          (满分:2)
    A. 用typedef可以定义各种类型名,但不能用来定义变量
    B. 用typedef可以增加新类型
    C. 用typedef只是将已存在的类型用一个新的标识符来代表
    D. 使用typedef有利于程序的通用和移植
9.以下各选项组中,均是C++语言关键字的组是(    )。          (满分:2)
    A. publicoperatorthis
    B. shodstringstatic
    C. itwhile>=
    D. privatecoutprintf
10.下列关于多态性的描述,错误的是(    )(    )。          (满分:2)
    A. C++语言的多态性分为编译时的多态性和运行时的多态性
    B. 编译时的多态性可通过函数重载实现
    C. 运行时的多态性可通过模板和虚函数实现
    D. 实现运行时多态性的机制称为动态绑定
11.结构化程序设计的一种基本方法是(    )。          (满分:2)
    A. 筛选法
    B. 递归法
    C. 归纳法
    D. 逐步求精法
12.下列关于多态性的描述,错误的是(    )。          (满分:2)
    A. C++语言的多态性分为编译时的多态性和运行时的多态性
    B. 编译时的多态性可通过函数重载实现
    C. 运行时的多态性可通过模板和虚函数实现
    D. 实现运行时多态性的机制称为动态绑定
13.下面的哪个保留字不能作为函数的返回类型(    )。          (满分:2)
    A. void
    B. int
    C. new
    D. long
14.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为(    )。          (满分:2)
    A. main
    B. MAIN
    C. name
    D. function
15.下面关于数组的初始化正确的是(    )。          (满分:2)
    A. charstr[]={‘a',’b','c‘}
    B. charstr={'a','b','c’}
    C. charstr={{'a‘,'b’},{’e’,'d’},{’e’,‘f'}}
    D. charstr[]={'a','b','c’}
16.下列各种高级语言中,(    )是面向对象编程语言。(    )          (满分:2)
    A. BASIC
    B. C语言
    C. C++语言
    D. Pascal语言
17.若x,y,z均被定义为整数,则下列表达式能正确表达代数式1/(x*y*z)的是          (满分:2)
    A. 1/x*y*z
    B. 1.0/(x*y*z)
    C. 1/(x*y*z)
    D. 1/x/y/(float)z
18.设int * p2=&x,* p1=a;p2= *b;则a和b的类型分别是(    )。          (满分:2)
    A. int * 和int
    B. int * 和int **
    C. int和int *
    D. int * 和int *
19.下列对引用的陈述中,不正确的是(    )          (满分:2)
    A. 每一个引用都是其所引用对象的别名
    因此必须初始化
    B. 形式上针对引用的操作实际上作用于它所引用的对象
    C. 一旦定义了引用
    一切针对其所引用对象的操作只能通过该引用间接进行
    D. 不需要单独为引用分配存储空间
20.以下哪个不是循环语句          (满分:2)
    A. while语句
    B. do-while语句
    C. for语句
    D. if-else语句
二、多选题:
1.在内存中,字符数据以ASCII码存储,即以整数表示。(    )          (满分:2)
    A. 错误
    B. 正确
2.类的静态数据成员需要在定义每个类的对象时进行初始化。          (满分:2)
    A. 错误
    B. 正确
3.NULL与void *是不同的概念,NULL是一个指针值,任何类型的指针都可赋予该值。而void *是一种类型,是一种无任何类型的指针。(    )          (满分:2)
    A. 错误
    B. 正确
4.C++语言程序中,要调用的函数必须在main(    )函数中定义(    )          (满分:2)
    A. 错误
    B. 正确
5.C++语言中的每条基本语句以;作为结束符,每条复合语句以}作为结束符。          (满分:2)
    A. 错误
    B. 正确
6.inline函数表示编译器一定会将函数体直接插入到调用此函数的地方,这样可以加快程序的运行速度。          (满分:2)
    A. 错误
    B. 正确
7.类是一种类型,它封装了数据和操作。          (满分:2)
    A. 错误
    B. 正确
8.关系表达式x+y>5的相反表达式为x+y<=5。          (满分:2)
    A. 错误
    B. 正确
9.float和double类型的大小分别为4和8。          (满分:2)
    A. 错误
    B. 正确
10.C++语言程序必须要有return语句(    )          (满分:2)
    A. 错误
    B. 正确
三、判断题:
11.如果类B继承了类A,则称类A为类B的基类,类B称为类A的派生类。          (满分:2)
    A. 错误
    B. 正确
12.说明函数原型时不需要指明每个函数参数的名字,只需要说明每个参数的类型和返回值类型就可以了。          (满分:2)
    A. 错误
    B. 正确
13.C++语言中规定函数的返回值的类型是由return语句中的表达式类型所决定。          (满分:2)
    A. 错误
    B. 正确
14.指针在使用前可以不进行初始化(    )          (满分:2)
    A. 错误
    B. 正确
15.自增运算符和自减运算符只能用于变量,不能用于常量或表达式 。(    )          (满分:2)
    A. 错误
    B. 正确
16.C++中,一个函数必须在函数声明后才能使用(    )          (满分:2)
    A. 错误
    B. 正确
17.用new动态申请的内存是在堆中分配的,而不是在栈中分配的。          (满分:2)
    A. 错误
    B. 正确
18.16位计算机中整型占4个字节存储空间。          (满分:2)
    A. 错误
    B. 正确
19.在内存中,字符数据以ASCII码存储,即以整数表示。(    )          (满分:2)
    A. 错误
    B. 正确
20.声明一个结构并不分配内存,内存分配发生在定义这个新数据类型的变量中。(    )          (满分:2)
    A. 错误
    B. 正确
1.下列哪种函数不可以是虚的(    )。          (满分:2)
    A. 自定义的构造函数
    B. 拷贝构造函数
    C. 静态成员函数
    D. 析构函数
2.下列说法中错误的是(    )。          (满分:2)
    A. 不允许设置参数的默认值
    B. 设置参数的默认值只能在定义函数时设置
    C. 设置参数的默认值时,应该设置右边的参数
    D. 设置参数的默认值时,应该全部参数都设置
3.下列关于构造函数的描述中,正确的是(    )。          (满分:2)
    A. 构造函数可以设置默认参数
    B. 构造函数在定义类对象时自动执行
    C. 构造函数可以是内联函数
    D. 构造函数不可以重载
4.关于函数重载,下列描述错误的是(    )。          (满分:2)
    A. 函数重载是指两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
    B. 函数重载是指两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
    C. 函数重载是指两个以上的函数名字不同,但形参的个数或类型相同
    D. 函数重载是指两个以上的函数取相同的函数名,并且函数的返回类型相同
5.在进行完成任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中不能用于检测输入流状态的操作函数名称是(    )。          (满分:2)
    A. fail
    B. eof
    C. bad
    D. good
6.对C++语言和C语言的兼容性,描述不正确的是(    )。          (满分:2)
    A. C++兼容C
    B. C++部分兼容C
    C. C++不兼容C
    D. C兼容C++
7.下列哪些是类的特性(    )。          (满分:2)
    A. 多态性
    B. 继承性
    C. 封装性
    D. 虚拟性
8.在下面的一维数组定义中,没有语法错误的是(    )。          (满分:2)
    A. inta[ ]={1
    2
    3}
    B. inta={0}
    C. inta[ ]
    D. inta
9.考虑函数原型void test(int a ,int b=7,char z=’*’),下面的函数调用中,属于合法调用的是(    )。          (满分:2)
    A. test(5)
    B. test(5
    8)
    C. test(6
    ’#’)
    D. test(0
    0
    ’*’)
10.关于异常和C++提供的异常处理机制正确的说法是(    )。          (满分:2)
    A. 若程序员预见到程序中的异常,则一定可以通过修改程序代码来避免异常出现
    B. 使用dynamiccast操作符可能会产生异常
    C. 异常可以用catch进行捕获处理
    D. 异常可以是对象,也可以是普通整数

页: [1]
查看完整版本: 15秋奥鹏福师《C++语言程序设计》在线作业二