《面向对象程序设计》期末考核试题样例及解答

合集下载

《面向对象程序设计C--》期末试卷及标准答案集总解析

《面向对象程序设计C--》期末试卷及标准答案集总解析

《面向对象程序设计C++》期末考试试卷(B)

班级:姓名:学号:分数:

试卷说明:本套试题共四个大题,全部题目都答在答题纸上,写在其他地方均无效。

(答题纸在本套试卷的第8页上)

一、单项选择题(每小题2分,共40分)

1、关于C++与C语言关系的描述中,( D )是错误的。

A.C语言是C++语言的一个子集B.C语言与C++语言是兼容的

C.C++语言对C语言进行了一些改进D.C++语言和C语言都是面向对象的2、已知:int m=10; 下列表示引用的方法中,(A )是正确的。

A.int &x=m; B.int &y=10; C.int &z; D.float &t=&m;

3、考虑下面的函数原型声明:void testDefaulParam(int a,int b=7,char z='*');

下面函数调用中,不合法的是( C )。

A.testDefaulParam(5); B.testDefaulParam(5,8); C.testDefaulParam(5,'#'); D.testDefaulParam(0,0,'*');

4、系统在调用重载函数时往往根据一些条件确定哪个重载函数被调用,在下列选项中,不能作为依据的是( A )。

A.函数的返回值类型B.参数的类型C.函数名称D.参数个数5、下列有关C++类的说法中,不正确的是( D )。

A.类是一种用户自定义的数据类型

B.只有类中的成员函数或类的友元函数才能存取类中的私有成员

C.在类中,如果不做特别说明,所有成员的访问权限均为私有的

D.在类中,如果不做特别说明,所有成员的访问权限均为公用的

面向对象程序设计期末复习题及答案

面向对象程序设计期末复习题及答案

C++面向对象程序设计复习

试题类型1、单项选择题(在每小题的四个备

选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。15题,每小题2分,共30分) [主要从作业题目中抽出来]

2. 填空题。(10题,每小题3分,共30分)

3、阅读程序,写出程序运行结果。【也称计算题】(3题,每小题5分,共15分)

4、程序编制题【也称综合分析题】。(第1、2题每题8分,第3题9分,共25分) 重点复习内

打*号是重点,打▲号是编程题出题范围

* 基本概念,对象,消息,类。

面向对象系统特性,封装性,继承性,多态性。*▲C++类的构成,类与对象,构造与析构,动态存储,类嵌套。

静态成员,对象数组,友元。

*函数重载。

运算符重载。

*引用定义与引用参数

* 基类与派生类的定义。

* 基类及派生类的访问权(含派生类对基类的访问、通过派生类对象对基类的访问)和初始化。多继承与虚基类。

*多态性与虚函数。

纯虚函数、抽象类。

*▲函数模板。

*▲使用类来定义对象并在程序中的应用题型样题

填空题 1. 假定AB为一个类,则执行“AB a[10];”语句时,系统自动调用该类的构造函数的次数为_________。

答案:10

2.可以用p.a的形式访问派生类对象P的基类成员a,其中a是_________。

答案:公有继承的公有成员

3.能作为重载函数的调用的依据是_________。答案:参数个数、参数类型

4.在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流是否结束状态的操作函数名称是_________

(完整word版)面向对象程序设计期末复习题及答案

(完整word版)面向对象程序设计期末复习题及答案

(完整word版)面向对象程序设计期末复习题及答案

C++面向对象程序设计复习试题类型1、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。15题,每小题2分,共30分) [主要从作业题目中抽出来]

2。填空题。(10题,每小题3分,共30分)

3、阅读程序,写出程序运行结果。【也称计算题】(3题,每小题5分,共15分)

4、程序编制题【也称综合分析题】. (第1、2题每题8分,第3题9分,共25分)重

点复习内容

打*号是重点,打▲号是编程题出题范围

*基本概念,对象,消息,类。

面向对象系统特性,封装性,继承性,多态性.

*▲C++类的构成,类与对象,构造与析构,动态存储,类嵌套.

静态成员,对象数组,友元。

*函数重载。

运算符重载。

*引用定义与引用参数* 基类与派生类的定义。

*基类及派生类的访问权(含派生类对基类的访问、通过派生类对象对基类的访问)和初始化。

多继承与虚基类.

*多态性与虚函数.

纯虚函数、抽象类。

*▲函数模板。

*▲使用类来定义对象并在程序中的应用题型样题

填空题1。假定AB为一个类,则执行“AB a[10];"语句时,系统自动调用该类的构造函数的次数为_________。

答案:10

2。可以用p。a的形式访问派生类对象P的基类成员a,其中a是_________。

答案:公有继承的公有成员

3.能作为重载函数的调用的依据是_________。

答案:参数个数、参数类型

4.在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流是否结束状态的操作函数名称是_________

面向对象程序设计期末复习题及答案

面向对象程序设计期末复习题及答案

C++面向对象程序设计复习

试题类型1、单项选择题(在每小题的四个

备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。15题,每小题2分,共30分) [主要从作业题目中抽出来]

2. 填空题。(10题,每小题3分,共30分)

3、阅读程序,写出程序运行结果。【也称计算题】( 3题,每小题5分,共15分)

4、程序编制题【也称综合分析题】。 (第1、2题每题8分,第3题9分,共25分) 重点复习

内容

打*号是重点,打▲号是编程题出题范围

* 基本概念,对象,消息,类。

面向对象系统特性,封装性,继承性,多态性。*▲ C++类的构成,类与对象,构造与析构,动态存储,类嵌套。

静态成员,对象数组,友元。

*函数重载。

运算符重载。

*引用定义与引用参数

* 基类与派生类的定义。

* 基类及派生类的访问权(含派生类对基类的访问、通过派生类对象对基类的访问)和初始化。多继承与虚基类。

*多态性与虚函数。

纯虚函数、抽象类。

*▲函数模板。

*▲使用类来定义对象并在程序中的应用题型样题

填空题 1. 假定AB为一个类,则执行“AB a[10];”语句时,系统自动调用该类的构造函数的次数为_________。

答案:10

2.可以用p.a的形式访问派生类对象P的基类成员a,其中a是_________。

答案:公有继承的公有成员

3.能作为重载函数的调用的依据是_________。答案:参数个数、参数类型

4.在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流是否结束状态的操作函数名称是_________

面向对象期末考试题及答案

面向对象期末考试题及答案

面向对象期末考试题及答案

一、选择题(每题2分,共20分)

1. 面向对象编程中的三大特性是?

A. 封装、继承、多态

B. 抽象、继承、封装

C. 继承、封装、多态

D. 封装、抽象、多态

答案:A

2. 在Java中,哪个关键字用于定义类?

A. class

B. struct

C. type

D. interface

答案:A

3. 以下哪个不是面向对象设计原则?

A. 单一职责原则

B. 开闭原则

C. 里氏替换原则

D. 模块化原则

答案:D

4. 在面向对象编程中,构造函数的作用是什么?

A. 用于创建对象

B. 用于销毁对象

C. 用于实现继承

D. 用于实现多态

答案:A

5. 以下哪个是Java中的访问修饰符?

A. private

B. public

C. protected

D. 全部都是

答案:D

...(此处省略剩余选择题)

二、简答题(每题10分,共30分)

1. 简述面向对象编程的基本思想。

答案:面向对象编程是一种编程范式,它将现实世界中的实体抽象成对象,这些对象具有属性和行为。面向对象编程的基本思想是将数据和处理数据的方法结合在一起,形成对象。通过对象之间的交互来实现程序的功能。

2. 解释什么是多态性,并给出一个简单的例子。

答案:多态性是指允许不同类的对象对同一消息做出响应,但具体的行为会根据对象的实际类型而有所不同。例如,在Java中,可以通过重载和重写来实现多态。假设有一个动物类Animal,它有一个方法makeSound()。然后有一个子类Dog,它重写了makeSound()方法。当我们创建一个Dog对象并调用makeSound()时,会执行Dog类中的

《面向对象程序设计》期末考核试题样例及解答

《面向对象程序设计》期末考核试题样例及解答

《面向对象程序设计》期末考核试题样例及解答

《面向对象程序设计》期末考核试题样例及解答

一、单项选择(每小题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 Tao”);

《面向对象程序设计C--》期末试卷及标准答案集总解析

《面向对象程序设计C--》期末试卷及标准答案集总解析

《面向对象程序设计C++》期末考试试卷(B)

班级:姓名:学号:分数:

试卷说明:本套试题共四个大题,全部题目都答在答题纸上,写在其他地方均无效。

(答题纸在本套试卷的第8页上)

一、单项选择题(每小题2分,共40分)

1、关于C++与C语言关系的描述中,( D )是错误的。

A.C语言是C++语言的一个子集B.C语言与C++语言是兼容的

C.C++语言对C语言进行了一些改进D.C++语言和C语言都是面向对象的

2、已知:int m=10; 下列表示引用的方法中,(A )是正确的。

A.int &x=m; B.int &y=10; C.int &z; D.float &t=&m;

3、考虑下面的函数原型声明:void testDefaulParam(int a,int b=7,char z='*');

下面函数调用中,不合法的是( C )。

>

A.testDefaulParam(5); B.testDefaulParam(5,8); C.testDefaulParam(5,'#'); D.testDefaulParam(0,0,'*');

4、系统在调用重载函数时往往根据一些条件确定哪个重载函数被调用,在下列选项中,不能作为依据的是( A )。

A.函数的返回值类型B.参数的类型C.函数名称D.参数个数5、下列有关C++类的说法中,不正确的是( D )。

A.类是一种用户自定义的数据类型

B.只有类中的成员函数或类的友元函数才能存取类中的私有成员

C.在类中,如果不做特别说明,所有成员的访问权限均为私有的^

D.在类中,如果不做特别说明,所有成员的访问权限均为公用的

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案

一、单选题

1.在下列概念中,Java语言只保留了D

A.运算符重载B.结构和联合C.指针D.方法重载

2.下列类定义中,不正确的是B

A.class x { .... } B.static class x implements y1,y2 { .... }

C.public class x extends Applet { .... } D.class x extends y { .... }

3.下列语句序列执行后,k 的值是B

int m=3, n=6, k=0;

while( (m++) < (- - n) ) ++k;

i++

先把i的初值赋给表达式(i++),作为表达式(i++)的值,然后i自增

1作为i的值。

如i=1,则表达式(i++)的值等于1,而i的值变为2。

++i

i先自增1,再把自增后的值赋给表达式(++i)。

如i=1,则表达式(++i)的值等于2,i的值也为2,

A.0 B.1 C.2 D.3

4.设i、j为int型变量名,a为int型数组名,以下选项中,正确的赋值语句是A

A.a[0] = 7; B.i = i + 2 C.i++ - --j; D.a(0) = 66;

5.Java语言的类间的继承关系是B

A.多重的B.单重的C.线程的D.不能继承

6.下列语句序列执行后,k 的值是C

int i=10, j=18, k=30;

switch( j - i ) {

case 8 : k++;

case 9 : k+=2;

case 10: k+=3;

default : k/=j;

}

A.31 B.3 C.2 D.33

c面向对象程序设计期末考试题及完整参考答案

c面向对象程序设计期末考试题及完整参考答案
1.一个类只能有一个析构函数,且不能有参数和返回类型,也不能是静态的。()
2.类的静态构造函数为类的所有对象共享,并且只在首次使用该类时被调用。()
3.派生类可以继承基类的所有成员,并增加自己的成员进行功能扩张。()
4.接口方法不能是静态的,也不能使用任何访问限制修饰符。()
5.如果一个类被声明为抽象的,则它的派生类不可以被声明为抽象类。()
}
则正确的执行结果是()。
A)I am a Stude nt.B)I am a PostStude nt.C)st.WhoYouAre()D)异常退出
5.已知st是类Student的一个实例,read ()是Student类的一个静态成员。如果要访问Student的read()成员,
则下列()表达式是正确的。
{
Circle c =②;//创建一个半径为10.5的Circle实例
Console.WriteLine(”该_name是{0},id是{1},半径r为{2},面积是⑶",③,④,⑤,c.Area());
}
}
2.
using System;
n amespace P5_5
{ _
public
{
private float speed;
public virtual float Run( float dista nce)

面向对象程序设计》期末试卷及标准答案

面向对象程序设计》期末试卷及标准答案

《面向对象程序设计C++》期末考试试卷(A)班级:姓名:学号:分数:

试卷说明:本套试题共四个大题,全部题目都答在

答题纸上,写在其他地方均无效。

(答题纸在本套试卷的第10页上)

一、选择题(每小题2分,共40分)

1、C++是(C )。

A. 面向对象的程序设计语言

B. 面向过程的程序设计语言

C. 既支持面向对象的程序设计又支持面向过程的程序设计的混合型语言

D. 非结构化的程序设计语言

2、面向对象程序设计思想的主要特征中不包括( D )。

A. 封装性

B. 多态性

C. 继承性

D. 功能分解,逐步求精

3、若定义:string str; 当语句cin>>str; 执行时,从键盘输入:

Microsoft Visual Studio 6.0!

所得的结果是str=( B )。

A. Microsoft Visual Studio 6.0!

B. Microsoft

C. Microsoft Visual

D. Microsoft Visual Studio 6.0

4、考虑下面的函数原型声明:void testDefaulParam(int a,int b=7,char z='*'); 下面函数调用中,不合法的是( C )。

A. testDefaulParam(5);

B. testDefaulParam(5,8);

C. testDefaulParam(5,'#');

D. testDefaulParam(0,0,'*');

5、下列语句中,将函数int sum(int x, int y)正确重载的是( C )。

A. float sum(int x, int y);

面向对象程序设计》期末试卷及标准答案

面向对象程序设计》期末试卷及标准答案

⾯向对象程序设计》期末试卷及标准答案

《⾯向对象程序设计C++》期末考试试卷(A)班级:姓名:学号:分数:

试卷说明:本套试题共四个⼤题,全部题⽬都答在

答题纸上,写在其他地⽅均⽆效。

(答题纸在本套试卷的第10页上)

⼀、选择题(每⼩题2分,共40分)

1、C++是(C )。

A. ⾯向对象的程序设计语⾔

B. ⾯向过程的程序设计语⾔

C. 既⽀持⾯向对象的程序设计⼜⽀持⾯向过程的程序设计的混合型语⾔

D. ⾮结构化的程序设计语⾔

2、⾯向对象程序设计思想的主要特征中不包括( D )。

A. 封装性

B. 多态性

C. 继承性

D. 功能分解,逐步求精

3、若定义:string str; 当语句cin>>str; 执⾏时,从键盘输⼊:

Microsoft Visual Studio 6.0!

所得的结果是str=( B )。

A. Microsoft Visual Studio 6.0!

B. Microsoft

C. Microsoft Visual

D. Microsoft Visual Studio 6.0

4、考虑下⾯的函数原型声明:void testDefaulParam(int a,int b=7,char z='*'); 下⾯函数调⽤中,不合法的是( C )。

A. testDefaulParam(5);

B. testDefaulParam(5,8);

C. testDefaulParam(5,'#');

D. testDefaulParam(0,0,'*');

5、下列语句中,将函数int sum(int x, int y)正确重载的是( C )。

(完整版)《面向对象程序设计C》期末试卷及标准答案(A)

(完整版)《面向对象程序设计C》期末试卷及标准答案(A)

《面向对象程序设计C++ 》期末考试一试卷( A )

班级:姓名:学号:分数:题号一二三四总分

得分

试卷说明:本套试题共四个大题,所有题目都答在答题纸上,写在其余地方均无效。

(答题纸在本套试卷的第10 页上)

一、选择题(每题 2 分,共 40 分)

1、C++是()。

A.面向对象的程序设计语言

B.面向过程的程序设计语言

C.既支持面向对象的程序设计又支持面向过程的程序设计的混淆型语言

D.非结构化的程序设计语言

2、面向对象程序设计思想的主要特点中不包含()。

A. 封装性

B. 多态性

C. 继承性

D. 功能分解,逐渐求精

3、若定义: string str;当语句cin>>str;履行时,从键盘输入:

Microsoft Visual Studio 6.0!

所得的结果是str=()。

B. Microsoft

A. Microsoft Visual Studio 6.0!

C. Microsoft Visual

4、考虑下边的函数原型申明:void testDefaulParam(int a,int b=7,char z='*');

下边函数调用中,不合法的是()。

A. testDefaulParam(5);

B. testDefaulParam(5,8);

C. testDefaulParam(5,'#');

D. testDefaulParam(0,0,'*');

5、以下语句中,将函数 int sum(int x, int y) 正确重载的是()。

A. float sum(int x, int y);

面向对象程序设计试题及答案

面向对象程序设计试题及答案

面向对象程序设计试题及答案

一、试题

1. 请简要解释面向对象(Object-Oriented)程序设计的概念。

2. 列举面向对象程序设计中的四个基本特征,并分别进行简要描述。

3. 请说明封装(Encapsulation)在面向对象程序设计中的作用和优势。

4. 解释继承(Inheritance)在面向对象程序设计中的概念和用途。

5. 什么是多态(Polymorphism)?请解释多态的概念以及其在面向

对象程序设计中的重要性。

6. 简要介绍抽象类(Abstract Class)和接口(Interface)的概念,

并说明它们之间的区别。

7. 请解释类(Class)与对象(Object)之间的关系。

8. 在面向对象程序设计中,什么是构造函数(Constructor)?请说

明构造函数的作用和使用方法。

9. 请示范一个使用面向对象程序设计的简单实例,并说明你所设计

的类的结构和功能。

二、答案

1. 面向对象程序设计是一种以对象为中心的编程方法,通过定义表

示对象属性和行为的类来组织程序结构,以实现代码的重用性、灵活

性和可维护性。

2. (1)封装:将数据和对数据的操作封装在一个类中,通过访问

权限控制,保护数据的安全性和完整性。

(2)继承:通过建立类之间的继承关系,实现代码的重用,具有层次性和扩展性。

(3)多态:允许不同类的对象对同一消息作出不同的响应,实现代码的灵活性和扩展性。

(4)抽象:通过抽象类和接口的定义,隐藏对象的具体实现细节,提供统一的接口和规范。

3. 封装的作用是将数据和对数据的操作封装在一个类中,外部无法

面向对象程序设计期末复习题及答案

面向对象程序设计期末复习题及答案

C++面向对象程序设计复习

试题类型1、单项选择题(在每小题的四个备

选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。15题,每小题2分,共30分) [主要从作业题目中抽出来]

2. 填空题。(10题,每小题3分,共30分)

3、阅读程序,写出程序运行结果。【也称计算题】(3题,每小题5分,共15分)

4、程序编制题【也称综合分析题】。(第1、2题每题8分,第3题9分,共25分) 重点复习内

打*号是重点,打▲号是编程题出题范围

* 基本概念,对象,消息,类。

面向对象系统特性,封装性,继承性,多态性。*▲C++类的构成,类与对象,构造与析构,动态存储,类嵌套。

静态成员,对象数组,友元。

*函数重载。

运算符重载。

*引用定义与引用参数

* 基类与派生类的定义。

* 基类及派生类的访问权(含派生类对基类的访问、通过派生类对象对基类的访问)和初始化。多继承与虚基类。

*多态性与虚函数。

纯虚函数、抽象类。

*▲函数模板。

*▲使用类来定义对象并在程序中的应用题型样题

填空题 1. 假定AB为一个类,则执行“AB a[10];”语句时,系统自动调用该类的构造函数的次数为_________。

答案:10

2.可以用p.a的形式访问派生类对象P的基类成员a,其中a是_________。

答案:公有继承的公有成员

3.能作为重载函数的调用的依据是_________。

答案:参数个数、参数类型4.在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流是否结束状态的操作函数名称是_________

面向对象程序设计C++期末试卷2套(含答案)

面向对象程序设计C++期末试卷2套(含答案)

面向对象程序设计C++ 第一套试卷

一、选择题(共32分,每小题2分)

1.按照C++标识符的规则,下面( B )是c++的标识符。

A.8_afr

B.a_ide

C.t-axy

D._3?d

2.C++中声明常量的关键字是( A )

A.const

B.extern

C.public

D.enum

3.建立( C )的作用是为变量另起一个名字。

A.指针

B.枚举

C.引用

D.结构

4.在( D )情况下适宜采用内联函数。

A.函数体含有循环语句

B.函数代码多,频繁调用

C.函数体含有递归语句

D. 函数代码少,频繁调用

5.关于new运算符的下列描述中,错误的是( D )

A.它可以用来动态创建对象和对象数组

B.使用它创建的对象或对象数组可以使用运算符delete删除

C.使用它创建对象时要调用构造函数

D.使用它创建对象数组时必须指定初始值

6.类成员的访问权限中,( C )只能被本类的成员函数和其友元函数访问。

A.share

B.public

C.private

D.protected

7.在下面有关构造函数的描述中,正确的是( B )

A.构造函数可以带有返回值

B.构造函数名字与类名完全相同

C.构造函数必须带参数

D.构造函数必须定义,不能默认

8.有如下类声明:

class A

{ private: int x;

public: A(int n){ x=n;} };

class B: public A

{ private: int y;

public: B(int a,int b); };

在构造函数B的下列定义中,正确的是( C )。

A. B::B(int a,int b): x(a),y(b){ }

JAVA面向对象程序设计(期末考试试题及答案)

JAVA面向对象程序设计(期末考试试题及答案)

程序设计(期末考试试题及答案)

JAVA面向对象

面向对象程序设计

一、单选择题

1、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。

A.java

B..class

C.html

D..exe

2、不允许作为类及类成员的访问控制符的是(C)。

A.public

B.private

C.static

D.Protected

3、设x=1,y=2,z=3,则表达式y+=z--/++x的值是(A)。

A.3

B.3.5

C.4

D.5

4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。

A.static void method()

B.public void method()

C.final void method()

D.abstract void method()

5、下列属于容器的组件有:(B)

A.JButton B.JPane

C.Canvas D.JTextArea

6、v oid的含义:(C)

A.方法体为空B.定义的方法没有形参

C.定义的方法没有返回值 D.方法的返回值不能参加算术运算

7、关于Java中异常的叙述正确的是:(D)

A.异常是程序编写过程中代码的语法错误

B.异常是程序编写过程中代码的逻辑错误

C.异常出现后程序的运行马上中止

D.异常是可以捕获和处理的

8、下面哪个不是java语言中的关键字?(B)

A.long

B.sizeof

C.instanceof

D.Const

9、在复选框中移动鼠标,然后单击一选项,要捕获所选项必需实现哪个接口?(D)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《面向对象程序设计》期末考核试题样例及解答

一、单项选择(每小题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 Tao”);

D. strcpy((*book)->title,”Wang Tao”);

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分)

1. C++语言是在_________语言的基础上发展起来的。

2. 假定x=5,y=6,则执行表达式y*=x++计算后,x和y的值分别为__________和__________。

3. 假定x是一个逻辑量,则x && false的值为__________。

4. 在if语句中,每个else关键字与它前面同层次并且最接近的________关键字相配套。

5. 一个二维字符数组a[10][20]能够存储________个字符串,每个字符串的长度至多为________。

6. 局部变量具有局部生存期,存放在内存的____________区中。

7.假定p所指对象的值为25,p+1所指对象的值为42,则执行*(p++)或*p++运算后,p所指对象的值为________。

8. 已知语句“cout<

9. 面向对象软件开发的生命周期分为三个阶段,即分析、__________和__________。

10. 若采用p->abc(y)表达式调用一个成员函数,在成员函数中使用的________就代表了类外的p指针。

11.当用户为一个类定义有____________时,则系统不会为该类再自动生成一个默认构造函数。

12.假定用户为类AB定义了一个构造函数"AB(int aa, int bb):a(aa),b(bb){}",则定义该类的对象时,有________种定义格式。

13.假定用户只为类AB定义了一个构造函数"AB(int aa, int bb=0) {a=aa; b=bb;}",则定义该类的对象时,其实参表中至少带有_________个实参。

14. 在重载一个单目运算符时,参数表中没有参数,说明该运算符函数只能是类的_____________。

15. 若要保证一个公共的基类在派生类中只产生一个基类子对象,则必须都以____________的方式继承它。

三、程序填充。对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到程序下面相应标号的后面(每小题6分,3小题,共18分)

1. 把从键盘上输入的一个大于等于3的整数分解为质因子的乘积。如输入24时得到的输出结果为“2 2 2 3”,输入50时得到的输出结果为“2 5 5”,输入37时得到的输出结果为“37”。

#include

void main()

{

int x;

cout<<"请输入一个整数,若小于3则重输:";

do cin>>x; while(___(1)___);

int i=2;

do{

while(___(2)___) {

cout<

x/=i;

}

相关文档
最新文档