《面向对象程序设计》期末考核试题样例及解答
一、单项选择(每小题
1
分,
12
小题,共
12
分)
1. C++
源程序文件的缺省扩展名为
( )
。
A. cpp B. exe C. obj D. lik
2. x>0 || y==5
的相反表达式为(
)
。
A. x<=0 || y!=5 B. x<=0 && y!=5
C. x>0 || y!=5 D. x>0 && y==5
3.
在下面的字符数组定义中,有语法错误的是
( )
。
A. char a[20]=
“
abcdefg
”
; B. char a[]=
“
x+y=55.
”
;
C. char a[15]; D. char a[10]=
’
5
’
;
4.
以下正确的函数原型语句是
( )
。
A. double fun(int x,int y)
B. double fun(int x;int y)
C. double fun(int,int);
D. double fun(int x,y);
5.
在下面存储类中,
(
)的对象不是局部变量。
A.
外部静态类
B.
自动类
C.
函数形参
D.
寄存器类
6.
假定有“
struct BOOK{char title[40]; float price;}; BOOK *book=new BOOK;
”
,
则正确的语句是(
)
。
A. strcpy(book->title,
”
Wang Tao
”
); B. strcpy(book.title,
”
Wang Tao
”
);
C.
strcpy(*book.title,
”
Wang
T
ao
”
); D.
strcpy((*book)->title,
”
Wang
T
ao
”
);
7.
软件产品所具有的全部或部分地再用于新的应用的能力称为该软件的(
)
。
A.
可维护性
B.
可复用性
C.
兼容性
D.
正确性
8.
在多文件结构的程序中,通常把含有
main()
函数的文件称为(
)
。
A.
主文件
B.
实现文件
C.
程序文件
D.
头文件
9.
在一个用链表实现的队列类中,
假定每个结点包含的值域用
elem
表示,
包含的指针
域用
next
表示,链队的队首指针用
elemHead
表示,队尾指针用
elemTail
表示,若链队为
空,则进行插入时必须把新结点的地址赋给
( )
。
A. elemHead B. elemTail
C. elemHead
和
elemTail D. elemHead
或
elemTail
10.
假定
AB
为一个类,则执行
“
AB a, b(2), c[3], *p=&a;
”
语句时共调用该类无参构
造函数的次数为
( )
。
A. 5 B. 6 C. 3 D. 4
11.
引入友元的主要目的是为了(
)
。
A.
增强数据安全性
B.
提高程序的可靠性
C.
提高程序的效率和灵活性
D.
保证类的封装性
12.
如果是类
B
在类
A
的基础上构造,那么,就称(
)
。
A.
类
A
为基类或父类,类
B
为超类或子类
B.
类
A
为基类、父类或超类,类
B
为派生类或子类
C.
类
A
为派生类,类
B
为基类
D.
类
A
为派生类或子类,类
B
为基类、父类或超类
二、填空(每空
1
分,
15
小题,共
18
分)