2022年面向对象设计试卷 .pdf
《2022年面向对象设计试卷 .pdf》由会员分享,可在线阅读,更多相关《2022年面向对象设计试卷 .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 面向对象程序设计试题 (8) 题 号一二三四五六七总 分12 18 18 18 12 6 16 100 得 分一,单项选择题(每小题1分,共12分) 1. 在函数的引用调用时,实参和形参应该是使用() 。A变量值和变量 B地址值和指针C地址值和引用 D变量值和引用2以下关于文件操作的叙述中,不正确的是() 。A打开文件的目的是使文件对象与磁盘文件建立联系B 关闭文件的目的之一是释放内存中的文件对象C关闭文件的目的之一是保证将输出的数据写入硬盘文件D文件读写过程中,程序将直接与磁盘文件进行数据交换3. 若有语句int a10=0,1,2,3,4,5,6,7,8,9,*p=a;则 ( )不是对
2、 a 数组元素的正确引用(其中0i10 ) 。Api B*(*(a+i) Cap-a D*(&ai) 4. 下列是构造函数的特点,()是错误的。A构造函数是一种成员函数,它具有一般成员函数的特点B构造函数的名称与其类名相同C构造函数必须指明其类型D一个类中可定义一个或多个构造函数5. 关于友元函数的描述中,()是错的。A 友元函数是成员函数,它被说明在类体内B 友元函数可直接访问类中的私有成员C 友元函数破坏封装性,使用时尽量少用D 友元类中的所有成员函数都是友元函数6. 下列对派生类的描述中,()是错误的。A 一个派生类可以作为另一个派生类的基类B 派生类至少应有一个基类C 基类中成员访问权
3、限继承到派生类中都保持不变D 派生类的成员除了自已定义的成员外,还包含了它的基类成员7. C+ 类体系中,能被派生类继承的有() 。A构造函数 B虚函数 C友元函数 D析构函数8关于下列虚函数的描述中,()是正确的。A基类中说明了虚函数后,派生类中将其对应的函数可不必说明为虚函数B虚函数是一个static存储类的成员函数C虚函数是一个非成员函数D派生类的虚函数与基类的虚函数应具有不同的类型或个数9. 以下有关静态数据成员函数的叙述不正确的是() 。A静态成员函数属于整个类B对静态成员函数的引用不允许使用对象名名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - -
4、- - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - 2 C在静态成员函数中不能直接引用类的非静态成员D使用类名可以直接调用其静态成员函数10. 下列有关运算符重载的描述中,()是正确的。A运算符重载可改变其优先级 B运算符重载不改变其语法结构C运算符重载可改变其结合性 D运算符重载可改变其操作数的个数11. 对 new 运算符的下列描述中,( )是错误的。A. 用它创建对象数组时必须指定初始值B. 它可以动态创建对象和对象数组C. 用它创建对象时要调用构造函数D. 用它创建的对象可以使用运算符delete来释放12.
5、下列有关类的说法不正确的是( )。A 对象是类的一个实例B 任何一个对象只能属于一个具体的类C 类与对象的关系和数据类型与变量的关系相似D 一个类只能有一个对象二填空题 ( 每空 1 分,共 18 分) 1若有函数调用语句 fun(a+b,(y=9,x),37),则其实参的个数是。2已知字母a 的 ASCII 码为十进制数97,ch 为字符变量,则ch=a+ 8- 5的值为。3. 设: int a5=10,20,30,40,50;int *p=&a0;表达式 +*p+*(a+3) 的值是。4若有宏定义: #define T(x,y,z) x*y*z/4 coutT(3+4,2*4,4+4)en
6、dl; 上述程序段运行结果为。5 “判断整数a 是否在闭区间 -10 ,10 之中”的C+语言表达式是。6设有代码“ static int a34=1,2, 0, 4,6,8,10;”则 a12值为。7假定所有变量均已正确定义,下列程序段运行后x 的值是。 a = b = c = 14; x = 35; if(!a)x-;else if(b);if(c)x = 3;else x = 4; 8类的成员函数可以在定义,也可以在定义。9如类中没有明确定义析构函数,清除对象的工作来完成,原因是。10生成一个派生类对象时,先调用的构造函数,然后调用的构造函数。11在继承关系中,称为多重继承,称为单继承。
7、12 若 在I/O流 的输 出 中使 用 控 制符setfill( ) 设 置 填充 字 符, 应 包含 的 头文 件是。13在私有继承关系下,基类的公有成员和保护成员将成为派生类中的成员, 它们只能由来访问。三、程序填充。对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - 3 程序下面相应标号的后面(每小题6 分, 3 小题,共18 分)1有一个一维数组,存放 10
8、 个职工的年龄, 别写两个函数求职工的最大年龄和最小年龄。#include void max_age(int arr ); (1)int max , min; void main( ) int i; int array10; coutinput 10 data:; for(i=0;iarrayi; max_age(array); min_age(array); coutmax_age is :maxendl; /使用全局变量max coutmin_age is :minendl; /使用全局变量min void max_age(int arr ) int j; max=arr0; /使用全局变
9、量max for(j=1;j10;j+) if ( (2) max=arrj; /使用全局变量max void min_age(int arr ) int k; min=arr0; /使用全局变量min for(k=1;karrk) (3); /使用全局变量min (1) (2) (3) 2. class A int a,b; public: _(1)_ /定义构造函数,使参数aa 和 bb 的默认值为0, /在函数体中用aa 初始化 a,用 bb 初始化 b ; main() A *p1, *p2; _(2)_ ; /调用无参构造函数生成由p1 指向的动态对象 _(3)_ ; /调用带参构造
10、函数生成由p2 指向的动态对象,名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - 4 /使 a 和 b 成员分别被初始化为4 和 5 (1) (2) (3) 3下列程序将结构体变量tt中的内容写入D盘上的 date.txt文件。#include #include struct date int year,month,day; void main() date tt=2002,2,12; ofstream ; outdate.ope
11、n(d:date.txt,ios:binary); if ( (1) ) cerr n D:write1.dat not open endl ; exit (-1) ; outdate.write( (2) ,sizeof(tt); (3) ; (1) (2) (3) 四、写出程序运行结果(每小题6 分, 3 小题,共 18 分)1. #include void main() int i,a=1,2,3,4,5,6,7,8,*p=a; for (i=1;i5;i+) pi=ai-1+ai+1; couta3endl; 2. class mystr char string81;int len;
12、public: mystr(char *s)strcpy(string,s); void getvalue(char *s,int &n) strcpy(s,string); n=len; friend mystr operator+(mystr a,mystr b) mystr c( ); strcpy(c.string,a.string); strcat(c.string,b.string); c.len=strlen(c.string); return c; ; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年面向对象设计试卷 2022 面向 对象 设计 试卷
限制150内