c面向对象考试题及答案_第1页
c面向对象考试题及答案_第2页
c面向对象考试题及答案_第3页
c面向对象考试题及答案_第4页
c面向对象考试题及答案_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

c面向对象考试题及答案一、选择题(8题,每题3分,共24分)

1.在面向对象的编程思想中,以下哪个概念描述了对象之间的交互方式?

A.封装

B.继承

C.多态

D.抽象

2.以下哪个关键字用于定义一个类的私有成员?

A.public

B.protected

C.private

D.internal

3.在C语言中,以下哪个关键字用于定义一个类的构造函数?

A.new

B.create

C.init

D.constructor

4.以下哪个操作符用于判断两个对象是否相等?

A.=

B.==

C.=

D.!=

5.在面向对象的编程中,以下哪个概念描述了类的子类与父类之间的关系?

A.关联

B.依赖

C.继承

D.聚合

6.以下哪个关键字用于定义一个类的静态成员?

A.static

B.const

C.volatile

D.final

7.在C语言中,以下哪个关键字用于定义一个类的析构函数?

A.delete

B.dispose

C.finalize

D.destructor

8.以下哪个操作符用于实现动态内存分配?

A.new

B.malloc

C.allocate

D.allocate

二、(一)多项选择题(5题,每题4分,共20分)

1.以下哪些是面向对象编程的基本特征?

A.封装

B.继承

C.多态

D.过程化

E.抽象

2.以下哪些关键字用于定义一个类的成员函数?

A.function

B.method

C.procedure

D.void

E.public

3.以下哪些操作符用于实现对象的比较?

A.=

B.==

C.=

D.!=

E.>

4.以下哪些是C语言中常用的访问修饰符?

A.public

B.protected

C.private

D.internal

E.static

5.以下哪些是C语言中常用的内存管理函数?

A.new

B.delete

C.malloc

D.free

E.allocate

(二)判断题(5题,每题2分,共10分)

1.面向对象编程不支持过程化编程的思想。(×)

2.在C语言中,类的成员函数可以定义为静态的。(√)

3.在C语言中,类的成员函数可以定义为私有的。(√)

4.在C语言中,类的成员函数可以定义为抽象的。(×)

5.在C语言中,类的成员函数可以定义为重载的。(√)

三、(一)填空题(8题,每题2分,共16分)

1.在面向对象编程中,将数据和操作数据的方法捆绑在一起的概念称为_______。

2.在C语言中,用于定义一个类的关键字是_______。

3.在C语言中,用于实现动态内存分配的关键字是_______。

4.在C语言中,用于实现动态内存释放的关键字是_______。

5.在C语言中,用于判断两个对象是否相等的关键字是_______。

6.在C语言中,用于定义一个类的静态成员的关键字是_______。

7.在C语言中,用于定义一个类的构造函数的关键字是_______。

8.在C语言中,用于定义一个类的析构函数的关键字是_______。

(二)计算题(2题,每题4分,共8分)

1.假设有一个类A,其中有一个私有成员变量x和一个公有成员函数f,函数f的功能是返回x的值。请写出类A的定义。

2.假设有一个类B,其中有一个公有成员变量y和一个公有成员函数g,函数g的功能是将y的值增加1。请写出类B的定义。

四、综合题(1题,共12分)

设计一个类Person,其中包含以下成员:

1.私有成员变量name(字符串类型)和age(整型)。

2.公有成员函数getName和getAge,分别用于获取name和age的值。

3.公有成员函数setName和setAge,分别用于设置name和age的值。

4.公有成员函数print,用于打印Person对象的信息。

五、材料分析题(1题,共16分)

假设有一个类Student,其中包含以下成员:

1.私有成员变量studentID(字符串类型)和grade(浮点型)。

2.公有成员函数getStudentID和getGrade,分别用于获取studentID和grade的值。

3.公有成员函数setStudentID和setGrade,分别用于设置studentID和grade的值。

4.公有成员函数calculateGPA,用于计算学生的平均成绩。

请分析以下情况:

1.如果有一个Student对象s,如何使用成员函数获取s的studentID和grade的值?

2.如果有一个Student对象s,如何使用成员函数设置s的studentID和grade的值?

3.如果有一个Student对象s,如何使用成员函数计算s的GPA?

答案部分:

一、选择题

1.C

2.C

3.D

4.B

5.C

6.A

7.C

8.A

二、(一)多项选择题

1.A,B,C,E

2.B,E

3.B,D

4.A,B,C,D

5.C,D

(二)判断题

1.×

2.√

3.√

4.×

5.√

三、(一)填空题

1.封装

2.class

3.new

4.delete

5.==

6.static

7.constructor

8.finalize

(二)计算题

1.classA{

private:

intx;

public:

intf(){

returnx;

}

};

2.classB{

public:

inty;

voidg(){

y++;

}

};

四、综合题

classPerson{

private:

stringname;

intage;

public:

stringgetName(){

returnname;

}

intgetAge(){

returnage;

}

voidsetName(stringn){

name=n;

}

voidsetAge(inta){

age=a;

}

voidprint(){

cout<<"Name:"<<name<<",Age:"<<age<<endl;

}

};

五、材料分析题

1.Student对象s使用成员函数获取studentID和grade的值:

stringid=s.getStudentID();

floatgrade=s.getGr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论