C++ -- 笔试题

1、下列对派生类的描述中错误的说法是:(D) 。

A、派生类至少有一个基类
B、派生类可作为另一个派生类的基类
C、派生类除了包含它直接定义的成员外,还包含其基类的成员
D、派生类所继承的基类成员的访问权限保持不变

2、当派生类中有和基类一样名字的成员时,一般来说,(B)

A、将产生二义性
B、派生类的同名成员将覆盖基类的成员
C、是不能允许的
D、基类的同名成员将覆盖派生类的成员

3、C++中的虚基类机制可以保证:(D) 。

A、限定基类只通过一条路径派生出派生类
B、允许基类通过多条路径派生出派生类,派生类也就能多次继承该基类
C、当一个类多次间接从基类派生以后,派生类对象能保留多份间接基类的成员
D、当一个类多次间接从基类派生以后,其基类只被一次继承

4、下面是重载双目运算符-的成员函数原形,其中最符合-原来含义的是(A)。

A、 ValueValue:operator-(Value);
B、ValueValue:operator-(int);
c.Value&Value:.operator-(Value);
D、Value&Value:.operator-(Value&);

5、在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是(B)。

A、作为友元函数重载的1元运算符
B、作为成员函数重载的1元运算符
C、作为友元函数重载的2元运算符
D、作为成员函数重载的2元运算符

6、当将一个类A或函数f()说明为另一个类B的友元后,类A或函数f()能够直接访问类B的(D)。

A、只能是公有成员
B、只能是保护成员
C、只能是除私有成员之外的任何成员
D、具有任何权限的成员

7、引入友元的主要目的是为了©。

A、增强数据安全性
B、提高程序的可靠性
C、提高程序的效率和灵活性
D、保证类的封装性

8、静态成员函数对类的数据成员访问(B) 。

A、是不允许的
B、只允许是静态数据成员
c、只允许是非静态数据成员
D、可允许是静态数据成员或非静态数据成员

9、对类中引用成员的初始化是通过构造函数中给出的(C)实现的。

A、函数体
B、参数表
c、初始化表
D、初始化表或函数体

10、假定AB为一个类,则执行“ABa,b(3),*p;”语句时共调用该构造函数的次数为(A)。

A、2
B、3
c、4
D、5

11、假定一个类的构造函数为“B(intax,intbx):a(ax),b(bx)I”,执行“Bx(1,2)y(3,4);x=y;”语句序列后x.a的值为( A )。

A、1
B、2
c、3
D、4

12、在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队首的后一个位置为( B )。

A、 first+1
B、(first+1)%MS
c.(first-1)%MS
D、(first+length)%MS

13、在多文件结构的程序中,通常把类中所有非内联函数的定义单独存放于( B )中。

A、主文件
B、实现文件
C、库文件
D、头文件

14、在C++程序中使用的cin标识符是系统类库中定义的( A )类中的一个对象。

A、istream
B、ostream
c.iostream
D、fstream

15、面向对象软件开发中使用的OOD表示( B ) 。

A、面向对象分析
B、面向对象设计
C、面向对象语言
D、面向对象方法

16、假定变量a和pa定义为“doublea[10],*pa=a;,”,要将12.35赋值给a中的下标为5的元素,不正确的语句是( D )。

A、pa[5]=12.35;
B、a[5]=12.35;
c、(pa+5)=12.35;
D、
(a[0]+5)=12.35;

17、假定指针变量p定义为“int*p=newint(100);”,要释放p所指向的动态内存,应使用语句(A )。

A、deletep;
B、delete*p;
c.delete&p;
D、delete[p;

18、在下面存储类中,( A )的对象不是局部变量。

A、外部静态类
B、自动类
c、函数形参
D、寄存器类

19、您正在编写SELECT语句来查找名称中包含一个特定字符的每种产品。应在WHERE子句中使用哪个关键字?( A )

A、LIKE
B、FIND
c、BETWEEN
D、INCLUDES

20、您需要禁用User1查看Customer表中数据的访问权限。您应该使用哪个语句?( C )

A、 REMOVEUser1FROMCustomer
B、REVOKEUser1FROMCustomer
C、REMOVESELECTONCustomerFROMUser1)
D、REVOKESELECTONCustomerFROMUser1

21、您执行以下语句: SELECTEmployeelD,FirstName,DepartmentName FROMEmployee,Department这种类型的操作称为:( A )

A、笛卡尔产品
B、同等联接
c、交集
D、外部联接

22、要创建存储过程的一个理由是:( A

A、提高性能。
B、将存储空间降到最低。
C、跳过区分大小写的要求。
D、使用户能够控制查询逻辑。

23、若用单链表来表示队列,最适合队列操作的是 ( B )。

A、带尾指针的非循环队列
B、带尾指针的循环链表
C、带头指针的非循环链表
D、带头指针的循环链表

24、用带头结点的单链表存储队列,其队头指针指向头结点,队尾指针指向队尾结点,则在进行出队时( D )。

A、仅修改队头指针
B、仅修改队尾指针
C、对头、尾指针都要修改
D、对头、尾指针都可能要修改

25、假定一个二维数组的定义语句为“inta[3][4]=f[3,4},2,8,6]};”,则元素a[2][1]的值为( A )。

A、0
B、4
c、8
D、6

26、在下面循环语句中循环体执行的次数为( A )。inti=O;doi++;while(i*i<10);

A、4
B、3
C、5
D、2

27、假定下列x和y均为int型变量,则不正确的赋值为( B )。

A、X+=y++
B、X+十=y++
C、X=++y
D、++X=十+y

28、要删除外键,应使用哪条语句( A )

A、ALTER TABLE
B、DELETE TABLE
C、ALTER FOREIGN KEY
D、DELETE FOREIGN KEY

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值