|
一、单选题(共 25 道试题,共 100 分。)V 1. 类B是通过public继承方式从类A派生而来的,且类A和类B都有完整的实现代码,则下列说法正确的是
A. 类B中具有pubic可访问性的成员函数个数一定不少于类A中public成员函数的个数
B. 一个类B的实例对象占用的内存空间一定不少于一个类A的实例对象占用的内存空间
C. 只要类B中的构造函数都是public的,在main函数中就可以创建类B的实例对象
D. 类A和类B中的同名虚函数的返回值类型必须完全一致
满分:4 分
2. 关于C++语言和C语言的关系的下列描述中,错误的是
A. C语言是C++语言的一个子集
B. C语言和C++语言都是面向对象的语言
C. C++语言与C语言兼容
D. C++语言对C语言做了些改进
满分:4 分
3. 文件包含中被包含的文件的扩展名( )
A. 必须为 .h
B. 不能用 .h
C. 必须是 .c
D. 不一定是 .h
满分:4 分
4. 假定Myclass为一个类,则执行Myclass a[3],*p[2];语句时,自动调用该类构造函数_____次。
A. 2
B. 3
C. 4
D. 5
满分:4 分
5. 已知:print( )函数是一个类的常成员函数,且无返回值。在下列表示中,正确的是
A. void print( ) const;
B. const void print( );
C.
void print( );
D. void print(const);
满分:4 分
6. 在函数定义前加上关键字“inline”,表示该函数被定义为____
A. 重载函数
B. 内联函数
C. 成员函数
D. 普通函数
满分:4 分
7. 下面有关重载函数的说法中正确的是______
A. 重载函数必须具有不同的返回值类型
B. 重载函数形参个数必须不同
C. 重载函数必须有不同的形参列表
D. 重载函数名可以不同
满分:4 分
8. 设B类是由A类继承的。当创建一个B类的对象时,构造函数的调用顺序是( )
A. 先调用A类的构造函数,然后调用B类的构造函数
B. 先调用B类的构造函数,然后调用A类的构造函数
C. 不调用A类的构造函数
D. 视定义时A类和B类出现的位置
满分:4 分
9. 在不同文件的函数中,对全局变量的引用要加上___关键字。
A. register
B. auto
C. static
D. extern
满分:4 分
10. 下列对引用的陈述中,不正确的是____
A. 每一个引用都是其所引用对象的别名,因此必须初始化
B. 形式上针对引用的操作实际上作用于它所引用的对象
C. 一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行
D. 不需要单独为引用分配存储空间
满分:4 分
11. 设”int a=15,b=26;”,则”cout<<(a,b);”的输出结果是____
A. 15
B. 26,15
C. 15,26
D. 26
满分:4 分
12. 能正确表示x>=3或者x<1的关系表达式是
A. x>=3 or x<1
B. x>=3|x<1
C. x>=3||x<1
D. x> =3|||x<1
满分:4 分
13. for(int x=0,y=0;!x&&y<=5;y++)语句执行循环的次数是
A. 0
B. 5
C. 6
D. 无数次
满分:4 分
14. 对于构造函数和析构函数,下面说法中正确的是
A. 构造函数和析构函数都可以重载
B. 构造函数和析构函数都必须是类的成员
C. 对同一个类,构造函数和析构函数都可以有多个
D. 构造函数和析构函数都是被其它函数调用而执行
满分:4 分
15. 以下错误的描述是____.
A. 被调用函数中可以不用return语句
B. 被调用函数中可以用多个return语句
C. 被调用函数中,如果有返回值,就一定要有return语句
D. 被调用函数中,一个return语句可返回多个值给调用函数
满分:4 分
16. 假定p是具有double类型的指针变量,则表达式++p使p的值(以字节为单位)增加____
A. 1
B. 4
C. sizeof(double)
D. sizeof(p)
满分:4 分
17. 动态联编要求类中应有
A. 成员函数
B. 内联函数
C. 虚函数
D. 构造函数
满分:4 分
18. 下列正确的八进制整型常量表示是______。( )
A. 0a0
B. 015
C. 080
D. 0x10
满分:4 分
19. 在不考虑强制类型转换的情况下,关于类中常量成员函数的下列说法不正确的是
A. 常量成员函数中不能修改本类中的非静态数据成员
B. 常量成员函数中可以调用本类中的任何静态成员函数
C. 常量成员函数的返回值只能是void或常量
D. 若常量成员函数中调用虚函数f,那么函数f在本类中也一定是一个常量成员函数
满分:4 分
20. C++程序的执行总是从哪里开始的?
A. main函数
B. 第一行
C. 头文件
D. 函数注释
满分:4 分
21. 假设有说明语句:int a[5][5],下列表示数组元素的方法中,不符合C++语法的是
A. *(a+1)+1
B. *(*(a+1)+1)
C. *(*(a+1)
D. *(&a[0][0]+1)
满分:4 分
22. C++语言中允许的基本数据类型包括______。
A. 整型、实型、逻辑型
B. 整型、实型、字符型
C. 整型、字符型、逻辑型
D. 整型、逻辑型、实型、字符型
满分:4 分
23. 以下叙述中正确的是____.
A. 使用#define可以为常量定义一个名字,该名字在程序中可以再赋另外的值
B. 使用const定义的常量名有类型之分,其值在程序运行时是不可改变的
C. 在程序中使用内联函数使程序的可读性变差
D. 在定义函数时可以在形参表的任何位置给出缺省形参值
满分:4 分
24. C++语言的跳转语句中,对于break和continue说法正确的是
A. break语句只应用于循环体中
B. continue语句只应用于循环体中
C. break是无条件跳转语句,continue不是
D. break和continue的跳转范围不够明确,容易产生问题
满分:4 分
25. 在C++语言中,二维数组元素在内存中的存放顺序是( )
A. 按行存放
B. 按列存放
C. 由用户自己定义
D. 由编译器决定
满分:4 分
|
|