07级面向对象程序设计语言A期末考试试题A.docx

上传人:b****4 文档编号:6224421 上传时间:2023-05-09 格式:DOCX 页数:10 大小:67.97KB
下载 相关 举报
07级面向对象程序设计语言A期末考试试题A.docx_第1页
第1页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第2页
第2页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第3页
第3页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第4页
第4页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第5页
第5页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第6页
第6页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第7页
第7页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第8页
第8页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第9页
第9页 / 共10页
07级面向对象程序设计语言A期末考试试题A.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

07级面向对象程序设计语言A期末考试试题A.docx

《07级面向对象程序设计语言A期末考试试题A.docx》由会员分享,可在线阅读,更多相关《07级面向对象程序设计语言A期末考试试题A.docx(10页珍藏版)》请在冰点文库上搜索。

07级面向对象程序设计语言A期末考试试题A.docx

07级面向对象程序设计语言A期末考试试题A

07级面向对象程序设计语言A期末考试试题A

北京林业大学2007--2008学年第I学期试卷

试卷名称:

面向对象程序设计语言A(A卷)课程所在院系:

信息学院

考试班级学号姓名成绩

试卷说明:

1.本次考试为闭卷考试。

本试卷共计4页,共4大部分,请勿漏答;

2.考试时间为120分钟,请掌握好答题时间;

3.答题之前,请将试卷和答题纸上的考试班级、学号、姓名填写清楚;

4.本试卷所有试题答案写在答题纸上;(特殊要求请详细说明)

5.答题完毕,请将试卷和答题纸正面向外对叠交回,不得带出考场;

6.考试中心提示:

请你遵守考场纪律,参与公平竞争!

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

说明:

在每小题列出一组答案,分别标识为A~D,在四个选项中,只有一个是符合题目要求的,请将其代码填在表格题号对应的空白内。

错选或未选均无分。

(1)在每个C++程序中都必须包含有这样一个函数,该函数的函数名为()。

(A)main(B)MAIN(C)name(D)Main

(2)以下程序段的输出结果是()。

voidmain()

{inta=1,b=2,m=0,n=0,k;

k=(n=b>a)||(m=a

cout<

}

(A)0,0(B)0,1(C)1,0(D)1,1

(D) 用函数模板定义的函数没有类型

(3)函数调用func((exp1,exp2),(exp3,exp4,exp5),(exp6,exp4,exp5))中所含实参的个数为()。

(A)1(B)2(C)3(D)4

(4)有如下程序:

#include

classBase

{charc;

public:

Base(charn):

c(n){}

virtual~Base(){cout<

};

classDerived:

publicBase

{charc;

public:

Derived(charn):

Base(n+1),c(n){}

~Derived(){cout<

};

intmain()

{Derivedd('X');

return0;

}

执行上面的程序将输出()。

(A)XY(B)YX(C)X(D)Y

(5)若inti=10;执行下列语句后,i的值是()。

switch(i)

{case9:

i+=1;

case10:

i+=1;

case11:

i+=1;

case12:

i+=1;

}

(A)10(B)11(C)12(D)13

(6)假定AB为一个类,则执行"ABx;"语句时将自动调用该类的()。

(A)无参构造函数(C)有参构造函数

(B)拷贝构造函数(D)赋值重载函数

(7)若需要使类中的一个指针成员指向一块动态存储空间,则通常在()函数中完成。

(A)析构(B)构造(C)任一成员(D)友元

(8)保护继承时,基类的()在派生类中成为保护成员,不能通过派生类的对象来直接访问该成员。

(A)任何成员(B)公有成员和保护成员

(C)保护成员和私有成员(D)私有成员

(9)声明或定义一个内联函数时,必须在函数开始使用关键字()。

(A)static(B)inline(C)const(D)extern

(10)下列对模板的声明中正确的是()。

(A)template(B)template

(C)template(D)template

(11)设x和y均为整型变量,则x||y为假的条件是()。

(A)它们均为真(B)其中一个为真

(C)它们均为假(D)其中一个为假

(12)下面的哪个关键字不能作为函数的返回类型?

()

(A)void(B)int(C)new(D)long

(13)假定要对类AB定义加号运算符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为()。

(A)ABoperator+(AB&a,AB&b)(B)ABoperator+(AB&a)

(C)operator+(ABa)(D)AB&operator+()

(14)对于类中定义的成员,其隐含的访问权限为()。

(A)public(B)protected(C)private(D)static

(15)程序设计所规定的三种基本控制结构是()。

(A)输入、处理、输出(B)树形、网形、环形

(C)顺序、选择、循环(D)主程序、子程序、函数

二.判断题(每小题1分,共12分)

说明:

请判断下列语句是否正确,如果正确请在表格题号对应的空白内用笔打上√;如果错误请在表格题号对应的空白内用笔打上×。

错打或未打均无分。

()1.创建派生类对象时,先调用派生类的构造函数,再调用基类的构造函数,当销毁这个对象时顺序正好相反,先调用基类的析构函数,再调用派生类的析构函数。

()2.变量分为全局和局部两种,动态局部变量没有赋初值时,其值是不确定的。

()3.模板类的成员函数若在类外实现,则必须是模板函数。

()4.类的静态成员函数可以不属于整个类。

()5.类的友元函数可以访问类的私有成员。

()6.常对象必须进行初始化,而且不能被更新。

()7.需要基类对象的有些地方不可以使用公有派生类的对象来替代。

()8.我们不能用抽象类定义对象,但可以定义抽象类的指针。

()9.虚函数的声明只能出现在类定义中的函数实现中。

()10.基类中某函数声明为纯虚函数之后,基类中就不能给出函数的实现部分。

()11.当一个类的对象离开它的作用域时,系统将自动调用该类的析构函数。

()12.关系表达式x+y>5的相反表达式为x+y<=5。

三.读程序写结果(每小题5分,共25分)

说明:

阅读以下程序,并写出程序运行结果。

1.#include

voidmain()

{ints=0;

for(inti=1;;i++)

{if(s>50)break;

if(i%2==0)s+=i;

}

cout<<"i,s="<

}

2.#include

#include

voidLE(int*a,int*b)

{intx=*a;

*a=*b;

*b=x;

cout<<*a<<''<<*b<

}

voidmain()

{intx=10,y=25;

LE(&x,&y);

cout<

}

3.#include

classSample

{

private:

intx;

staticinty;

public:

Sample(inta)

{x=a;

x++;

y++;

}

voidprint()

{cout<<"x="<

};

intSample:

:

y=10;

voidmain()

{Samples1(20);

Samples2(30);

s1.print();

s2.print();

}

4.#include

template

classFF

{TTa1,a2,a3;

public:

FF(TTb1,TTb2,TTb3)

{a1=b1;a2=b2;a3=b3;}

TTSum(){returna1+a2+a3;}

};

voidmain()

{FFx(2,3,4),y(5,7,9);

cout<

cout<

}

5.#include

classA

{

public:

A();

A(inti,intj);

voidprint();

private:

inta,b;

};

A:

:

A()

{a=b=0;

cout<<"Defaultconscalled.\n";

}

A:

:

A(inti,intj)

{a=i;

b=j;

cout<<"Constructorcalled.\n";

}

voidA:

:

print()

{cout<<"a="<

voidmain()

{Am,n(4,8);

m.print();

n.print();

}

四.编程题(共23分)

注意:

使用规范格式编程,并在适当位置添加注释。

1.(10分)已知6≤a≤30,15≤b≤36,编写程序求出满足方程2a+5b=126的全部整数组解。

如(13,20)就是其中的一组解。

2.(13分)已知点类Point的定义如下,该类包含两个double类型的私有数据成员x和y,分别表示点的横坐标和纵坐标。

定义类的构造函数,用于初始化x和y;定义类的公有成员函数distance,用来计算两点之间的距离;编写程序实现点类Point的成员函数,并在主函数中测试定义的点类Point。

classPoint

{

private:

doublex,y;//点的横、纵坐标

public:

Point(doublexx=0,intdouble=0);

//此处为计算两点之间距离的成员函数,并完成距离的输出

};

北京林业大学2007--2008学年第1学期考试答题纸

考试班级学号姓名考试科目面向对象程序设计语言A成绩

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

题号

1

2

3

4

5

6

7

8

9

10

答案

题号

11

12

13

14

15

16

17

18

19

20

答案

 二、判断题(每小题1分,共12分)

题号

1

2

3

4

5

6

7

8

9

10

11

12

答案

三、读程序写结果题(每小题5分,共25分)

题号

1

2

3

4

5

答案

四、编程题(共23分)

1.(10分)

 

2.(13分)

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2