《面向对象程序设计》过程考试试题第三次精选课件

合集下载

聊城大学计算机学院面向对象的程序设计(c++)练习题(第三周)(构造函数和析构函数)

聊城大学计算机学院面向对象的程序设计(c++)练习题(第三周)(构造函数和析构函数)

聊城大学计算机学院面向对象的程序设计第三次作业一、单选题(本大题共17小题,每题3分,共51分):1、在下列函数原型中,可以作为类AA构造函数的是()。

A void AA(int);B int AA( );C AA(int) const;D AA(int);2、下列选项中,哪一项功能是对对象进行初始化()。

A 析构函数B 数据成员C 构造函数D 静态成员函数3、假定A为类名,执行A x;语句时将自动调用该类的()。

A 有参构造函数B 无参构造函数C 拷贝构造函数D 赋值构造函数4、下列关于构造函数的说法,错误的是()。

A 系统可以提供默认的构造函数B 构造函数可以有参数,所以可以有返回值C 构造函数可以重载D 构造函数可以设置默认参数5、有如下类定义:class Point{int x, y;public:Point__________:x_(0), y_(0){}Point(int x, int y = 0):x_(x), y_(y){}};若执行语句:Point a(2), b[3], *c[4];则Point类的构造函数被调用的次数是()。

A 2次B 3次C 4次D 5次6、在下面的类定义中class sample{public:sample(int val); //①~sample( ); //②private:int a=2.5; //③public:sample( ); //④};其中错误的语句是()。

A ①B ②C ③D ④7、假定一个类的构造函数为A(int i = 4, int j = 0) { a = i; b = j;}则执行A x(1)语句后,x.a和x.b的值分别为()。

A 1和0B 1和4C 4和0D 4和18、下列关于构造函数的描述中,错误的是()。

A 构造函数可以设置默认参数B 构造函数在定义类对象时自动执行C 构造函数可以是内联函数D 构造函数不可重载9、下列选项中,哪一项不是构造函数的特征()。

最新国家开放大学电大本科《面向对象程序设计》期末题库及答案

最新国家开放大学电大本科《面向对象程序设计》期末题库及答案

最新国家开放大学电大本科《面向对象程序设计》期末题库及答案考试说明:本人针对该科精心汇总了历年题库及答案,形成一个完整的题库,并且每年都在更新。

该题库对考生的复习、作业和考试起着非常重要的作用,会给您节省大量的时间。

做考题时,利用本文档中的查找工具,把考题中的关键字输到查找工具的查找内容框内,就可迅速查找到该题答案。

本文库还有其他网核及教学考一体化答案,敬请查看。

《面向对象程序设计》题库及答案一一、单项选择题(每小题2分,共20分)1.设x和y均为bool量,则x||y为假的条件是( )。

A.它们均为真 B.其中一个为真C.它们均为假 D.其中一个为假2.假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}}”,则元素a[1][2]的值为( )。

A.2 B.4 C.6 D.83.假定P是具有int* *类型的指针变量,则给P赋值的正确语句为( )。

A.p=new int B.p=new int*C.p=new int** D.p=new int[10]4.软件产品在需求发生变化、运行环境发生变化或发现软件产品本身的错误或不足时进行相应的软件更新的难易程度叫做软件的( )。

A.可维护性 B.可复用性C.兼容性 D.正确性5.若需要把一个类外定义的成员函数指明为内联函数,则必须把关键字( )放在函数原型或函数头的前面。

‘A.in B.inlineC.inLine D.InLiner .6.在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队尾的后一个位置为( )。

A.1ength+1 B first+lengthC.(first+1ength—1)%MS D.(first+length)%MS7.假定一个类的构造函数为“A(int aa,int bb){a=aa;b=aa*bb;)”,则执行“A x(4,5);”语句后,X.a和x.b的值分别为( )。

《Java面向对象程序设计》考试卷及答案带注释

《Java面向对象程序设计》考试卷及答案带注释

一、单选题(每小题1分,共30分)1.在MyEclipse中,()视图可以将项目中包含的文件及层次结构展示出来。

CA) Package B)Declaration C)Navigator D) Console2.下列标识符中,正确的是()。

CA)class B) 123_rr C) _lei D) test&123.下列的()选项可以正确用以表示八进制值8。

0x代表16进制,0代表8进制 D A)0x8 B)0x10 C)08 D)0104.以下哪个不是Java的原始数据类型()DA) int B) boolean C) float D) Char引用数据类型5.下列有关Java布尔类型的描述中,正确的是()AA)一种基本的数据类型,它的类型名称为booleanB)用int表示类型C)其值可以赋给int类型的变量D)有两个值,1代表真,0代表假6.在Java中,不属于整数类型变量的是( ) AA) double 浮点型B) long C) int D) byte7.以下do-while语句构成的循环执行次数是()。

Bint k=0;do { ++k ;}while(k<1);A) 一次也不执行B) 执行1次C) 无限次D) 有语法错误,不能执行8.表达式(1/0<1)&& (12==0) 的值为()。

逻辑运算结果只有true和false两种 BA) true B) false C) 0 D) 运行时抛出异常9.以下()表达式不可以作为循环条件 AA) i=5 B )i<3 C) count==i D) bEqual=str.equals("q") 10.下列数组初始化正确的是() DA) int score[5] = {90,12,34,77,56};B) int[5] score = new int[];C) int[] score = new int[5]{90,12,34,77,56};D) int score[] = new int[]{90,12,34,77,56};11.若有定义:byte[] x={11,22,33,-66};其中0≤k≤3,则对x数组元素错误的引用是() CA) x[5-3] B) x[k] C) x[k+5] D) x[0]12.以下代码的输出结果是()。

《面向对象程序设计》模拟试卷1

《面向对象程序设计》模拟试卷1

《⾯向对象程序设计》模拟试卷1浙江警官职业学院2013—2014学年第⼀学期期末考试《⾯向对象程序设计》模拟试卷⼀、判断题。

(共10分,每题1分,对的打“√”,错的打“メ”)1、C#程序必须包含⼀个Main⽅法作为程序的⼊⼝点。

(√)2、String类型是引⽤类型。

(√)3、只有Get访问器的属性称为只写属性。

(メ)4、构造函数可以被重载。

(√)5、属性占⽤存储空间。

(メ)6、类中的静态构造函数不能带参数,不能具有可访问性修饰符。

(√)7、⼀个类可以有多个不同名的构造函数。

(メ)8、⼦类将继承⽗类所有的成员。

(√)9、变量在可以作为ref引⽤参数传递之前,可以不赋值。

(メ)10、⼀个类可以实现多个接⼝。

(√)⼆、选择题。

(共20分,每题1分)1、以下C#注释代码,不正确的是( D )。

A、//C#注释代码B、//C#注释代码1//C#注释代码2C、////C#注释代码D、/*C#注释代码*/2、下⾯属于合法的字符串常量的是( B )。

A、@XYZB、"XYZ"C、’XYZ’D、XYZ3、在窗体中,改变label标签的显⽰结果,需修改的属性是(A )。

A、TextB、NameC、TitleD、Index4、当没有定义访问修饰符时,类的成员的默认访问修饰符为( D )。

A、privateB、publicC、protectedD、internal5、执⾏下列语句将产⽣的结果是( B )。

int i=1;if ( i ) Console.WriteLine(true);else Console.WriteLine(false);A、输出1B、输出trueC、输出falseD、编译错误6、以下关于静态⽅法的说法,不正确的是(D )。

A、静态⽅法不对特定实例进⾏操作B、静态⽅法只能直接访问静态成员C、在静态⽅法中引⽤this会导致编译时错误D、静态⽅法通过类的实例来访问7、定义⼀个数组string[] role={“赵灵⼉”,“李逍遥”,“林⽉如”,“杨过”,“⼩龙⼥”},数据中的role[5]指的是( D )。

通信06 面向对象程序设计 考试参考答案(A卷)

通信06 面向对象程序设计 考试参考答案(A卷)
char Sex;
public:
int GetNum() { return Num;};
int GetAge() { return Age;};
Student(int Num0=1001, string Name0="张三", int Age0=20,char Sex0='1')
{
Num = Num0;
五、理解问答题(8分)
1.(3分,评分标准:前一份为1分,后一份为2分)
称为:虚函数。
作用:可以通过基类指针或引用来访问基类和派生类中的同名函数。
2.写出程序运行的结果。(3分,评分标准:正确给3分,格式不对扣1分)
25
10
3.(2分,评分标准:前一份为1分,后一份结果为1分)
程序能运行,其运行结果为:
}
int main()
{
Student s1,s2(1002,"李四",21,'1');
if (s1.GetAge()>s2.GetAge())
{
s1.display();
s2.display();
}
else
{
s2.display();
s1.display();
}
return 0;
}
2.答:三种继承的差异为:
(a)公用继承:基类的公用成员和保护成员在派生类中保持原有访问属性,其私有成员仍为基类私有。(2分)
(b)私有继承:基类的公用成员和保护成员在派生类中成了私有成员。其私有成员仍为基类私有。(3分)
(c)受保护的继承:基类的公用成员和保护成员在派生类中成了保护成员,其私有成员仍为基类私有。(3分)

面向对象的程序设计_第三阶段练习

面向对象的程序设计_第三阶段练习

江南大学网络教育第三阶段练习题考试科目:《面向对象的程序设计》第章至第章(总分100分)__________学习中心(教学点)批次:层次:专业:学号:身份证号:姓名:得分:一单选题 (共8题,总分值8分,下列选项中有且仅有一个选项符合题目要求,请在答题卡上正确填涂。

)1. 在打开磁盘文件的访问方式常量中,(C )是以追加方式打开文件的。

(1 分)A. inB. outC. appD. ate2. catch(···)一般放在其他catch子句的后面,该子句的作用是(B )。

(1 分)A. 抛掷异常B. 捕获所有类型的异常C. 检测并处理异常D. 有语法错误3. 建立类模板对象的实例化过程为(C )。

(1 分)A. 基类-->派生类B. 构造函数-->对象C. 模板类-->对象D. 模板类-->模板函数4. 下列输出字符'A’的方法中,(B )是错误的。

(1 分)A. cout<<'A';B. cout<<put('A');C. cout. put('A');D. char= 'A' ;cout<<a;5. 使用控制符进行格式输出时,应包含(C )文件。

(1 分)A. iostream.hB. math.hC. iomanip.hD. fstream.h6. 下列选项中,用于清除基数格式位设置以八进制输出的语句是(C )。

(1 分)A. cout<<setf(ios :: dec ,ios :: basefield) ;B. cout<<setf(ios :: hex ,ios :: basefield) ;C. cout<<setf(ios :: oct ,ios :: basefield);D. cin>>setf(ios :: hex ,ios :: basefield);7. 假定已定义整型变量data,以二进制方式把data的值写人输出文件流对象outfile中去,正确的语句是(C )。

《Java面向对象程序设计》考试卷及答案带注释

《Java面向对象程序设计》考试卷及答案带注释

一、单选题(每小题1分,共30分)1.在MyEclipse中,()视图可以将项目中包含的文件及层次结构展示出来。

CA) Package B)Declaration C)Navigator D) Console2.下列标识符中,正确的是()。

CA)class B) 123_rr C) _lei D) test&123.下列的()选项可以正确用以表示八进制值8。

0x代表16进制,0代表8进制 D A)0x8 B)0x10 C)08 D)0104.以下哪个不是Java的原始数据类型()DA) int B) boolean C) float D) Char引用数据类型5.下列有关Java布尔类型的描述中,正确的是()AA)一种基本的数据类型,它的类型名称为booleanB)用int表示类型C)其值可以赋给int类型的变量D)有两个值,1代表真,0代表假6.在Java中,不属于整数类型变量的是( ) AA) double 浮点型B) long C) int D) byte7.以下do-while语句构成的循环执行次数是()。

Bint k=0;do { ++k ;}while(k<1);A) 一次也不执行B) 执行1次C) 无限次D) 有语法错误,不能执行8.表达式(1/0<1)&& (12==0) 的值为()。

逻辑运算结果只有true和false两种 BA) true B) false C) 0 D) 运行时抛出异常9.以下()表达式不可以作为循环条件 AA) i=5 B )i<3 C) count==i D) bEqual=str.equals("q") 10.下列数组初始化正确的是() DA) int score[5] = {90,12,34,77,56};B) int[5] score = new int[];C) int[] score = new int[5]{90,12,34,77,56};D) int score[] = new int[]{90,12,34,77,56};11.若有定义:byte[] x={11,22,33,-66};其中0≤k≤3,则对x数组元素错误的引用是() CA) x[5-3] B) x[k] C) x[k+5] D) x[0]12.以下代码的输出结果是()。

面向对象程序设计习题三答案

面向对象程序设计习题三答案

《面向对象程序设计》习题三答案一、单项选择题(本大题共25小题,每小题2分,共50分)1、用“>>”运算符从键盘输入多于一个数据时,各数据之间应使用( D )符号作为分隔符。

A、空格或逗号B、逗号或回车C、逗号或分号D、空格或回车2、C++中声明常量的关键字是( A )。

A、constB、externC、publicD、enum3、以下叙述中正确的是( B )A、使用#define可以为常量定义一个名字,该名字在程序中可以再赋另外的值B、使用const定义的常量名有类型之分,其值在程序运行时是不可改变的C、在程序中使用内置函数使程序的可读性变差D、在定义函数时可以在形参表的任何位置给出缺省形参值4、下列的符号常变量定义中,错误的定义是( C )。

A、const M=10;B、const int M=20;C、const char ch;D、const bool mark=true;5、函数原型语句正确的是( B )。

A、int Function(void a)B、void Function (int);C、int Function(a);D、void int(double a);6、在关键字private后面定义的成员为类的( A )成员。

A、私有B、公用C、保护D、任何7、在一个类的定义中,包含有( C )成员的定义。

A、数据B、函数C、数据和函数D、数据或函数8、在类作用域中能够通过直接使用该类的( D )成员名进行访问。

A、私有B、公用C、保护D、任何9、在关键字public后面定义的成员为类的( B )成员。

A、私有B、公用C、保护D、任何10、类中定义的成员默认为( B )访问属性。

A、publicB、privateC、protectedD、friend11、每个类( C )构造函数。

A、只能有一个B、可以有公用的C、可以有多个D、只可有缺省的12、对类对象成员的初始化是通过构造函数中给出的( B )实现的。

南开16秋学期《面向对象程序设计》在线作业

南开16秋学期《面向对象程序设计》在线作业

南开16秋学期《面向对象程序设计》在线作业一、单选题(共35道试题,共70分。

)1.将一个tring类对象赋予新值,应该使用tring类的()函数。

A.aignB.inertC.wapD.find正确答案:2.在派生类中重新定义虚函数时,除了(),其他方面都应与基类中相应的虚函数保持一致。

A.函数名B.参数C.函数体D.返回值类型正确答案:3.交换两个tring类对象所表示的字符串的内容,应该使用tring类的()函数。

A.aignB.inertC.wapD.find正确答案:4.单目运算符作为类成员函数重载时()。

A.有形参B.没有形参C.有实参D.以上都不正确正确答案:5.有如下类声明:claSample{int某;};则Sample类成员某是Sample 类的()。

A.公有数据成员B.保护数据成员C.私有数据成员D.以上选项都不正确正确答案:6.一个类的友元函数或友元类能够通过成员操作符访问该类的()。

A.私有成员B.保护成员C.公有成员D.所有成员正确答案:7.下列关于动态联编的描述中,错误的是()。

A.动态联编是以虚函数为基础的B.动态联编是在运行时确定所调用的函数代码的C.动态联编调用函数操作是通过指向对象的指针或对象D.动态联编是在编译时确定操作函数的正确答案:8.类的默认的无参构造函数()。

A.在任何情况下都存在B.仅当未定义无参构造函数时存在C.仅当未定义有参构造函数时存在D.仅当未定义任何构造函数时存在正确答案:9.类MyCla的定义如下:claMyCla{public:MyCla(){value=0;}SetVariable(inti){value=i;}priv ate:intvalue;}则对下列语句序列正确的描述是()。

MyCla某p,my;p=&my;A.语句p=&my;是把对象my赋值给指针变量pB.语句MyCla某p,my;会调用两次类MyCla的构造函数C.对语句某p.SetVariable(5)的调用是正确的D.语句p->SetVariable(5)与语句my.SetVariable(5)等价正确答案:10.静态数据成员初始化在()进行,而且前面不加tatic,以免与一般静态变量或对象相混淆。

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

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

《面向对象程序设计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. MicrosoftC. Microsoft VisualD. Microsoft Visual Studio 6.04、考虑下面的函数原型声明: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);B. int sum(int a, int b);C. float sum(float x, float y);D. double sum(int y, int x);6、下列表示引用的方法中,( A )是正确的。

(完整word版)《面向对象程序设计C》期末考试试卷

(完整word版)《面向对象程序设计C》期末考试试卷

《面向对象程序设计C++》期末考试试卷一、选择题(每小题3分,共48分.)01、下列关于C++函数的叙述中,正确的是( C )。

A)每个函数至少要具有一个参数B)每个函数都必须返回一个值C)函数在被调用之前必须先声明D)函数不能自己调用自己02、下列关于类和对象的叙述中,错误的是( A )。

A)一个类只能有一个对象B)对象是类的具体实例C)类是对某一类对象的抽象D)类和对象的关系是一种数据类型与变量的关系03、在C++中,用于实现运行时多态性的是( D )。

A)内联函数B)重载函数C)模板函数D)虚函数04、下列关于运算符重载的叙述中,正确的是( B ).A)通过运算符重载,可以定义新的运算符B)有的运算符只能作为成员函数重载C)若重载运算符+,则相应的运算符函数名是+ D)重载二元运算符时,必须声明两个形参05、对于语句cout〈〈x<<endl;错误的是描述是( D ).A)“cout”是一个输出流对象B)“endl”的作用是输出回车换行C)“x”是一个变量D)“〈<”称作提取运算符06、有如下类声明,则类MyDERIVED中保护的数据成员和成员函数的个数是()。

class MyBASE{ private: int k;public: void set(int n){ k=n;}int get()const{ return k;} };class MyDERIVED: protected MyBASE{protected: int j;public:void set(int m, int n){ MyBASE::set(m); j=n;}int get( )const { return MyBASE::get()+j;} };A)4 B)3 C)2 D)107、已知在一个类体中包含如下函数原型:Volume operator-(Volume)const;,下列关于这个函数的叙述中,错误的是( )。

《C++面向对象程序设计》期末考试试题

《C++面向对象程序设计》期末考试试题

《C++面向对象程序设计》考试试题本试卷满分 100 分; 请将答案写在答题纸上,写明题号,不必抄题,字迹工整、清晰; 请在答题纸和试题纸上都写上你的班级,学号和姓名,交卷时请将试题纸、答题纸和草纸 一并交上来。

一、单选题 (共 10 分,每题 1 分) 1. C++中解决命名冲突的机制是: D (A) 虚基类 (B) 虚函数 (C) 函数重载 2. 若类A 的一个对象所占的内存空间中包含虚函数表的入口地址 (A) 类 A 不能有静态数据成员 (C) 类 A 中至少有一个成员函数是虚的 3.任意一个类,析构函数的个数最多是: (A) 不限个数 (B) 1 (C) 4. 下列关于 this 指针的说法 ,哪个是正确的 (A) this 指针一定指向常量型数据 (C) 静态成员函数中也可以访问 (B) (D) (D) 名字空间 ,则: C 类 A 中公有的成员函数一定是虚的 类 A 的析构函数一定是虚的 (D) 3 5.在类定义中 , 为说明成员的访问权限 (A) 次数没有具体限定 (C) public 至少一次 面哪种定义方式是正确的,并且使得 (A) A * p = new A; (C) const A* p = new A;obj 是类 A 的一个对象,执行语句 (A) 类 A 的拷贝构造函数会被调用 (C) &aA 的值就是 &obj 6.7. (B) this 指向的数据不可更改 (D) this 指针本身可直接作为成员函数的返回值 A this 指针 , private, protected, public 可以出现次数为: (B) 每种至多一次 (D) 每种至少一次p 可以作为函数 void f( A* const pp); 的实参: A(B) A a; A* p = a; (D) A a; const A* p = a; const A& aA= obj; ,则下列说法正确的是: C (B) 类 A 的赋值函数会被调用(D) 语句 obj.f( ) ;等价于语句 aA.f( ) ; 面关于访问类 A 的私有数据成员的说法,错误的是: (A) (B) (C) (D) 9.类A 8. 类A 类A 类A 类A 的友元函数可以访问类 A 的私有成员。

面向对象的程序设计第3阶段XXX练习题答案。共三个阶段,这是其中一个阶段,答案在最后。

面向对象的程序设计第3阶段XXX练习题答案。共三个阶段,这是其中一个阶段,答案在最后。

面向对象的程序设计第3阶段XXX练习题答案。

共三个阶段,这是其中一个阶段,答案在最后。

XXX网络教育第三阶段练题答案考试科目:《面向对象的程序设计》第1章至第10章(总分100分)研究中心(教学点)批次:______ 层次:______ 专业:______学号:______ 身份证号:______ 姓名:______ 得分:______一、单选题(共8题,总分值8分,下列选项中有且仅有一个选项符合题目要求,请在答题卡上正确填涂。

)1.关于函数模板,描述错误的是()。

(1分)A。

函数模板必须由程序员实例化为可执行的函数模板。

B。

函数模板的实例化由编辑器实现。

C。

一个类定义中,只要有一个函数模板,则这个类是类模板。

D。

类模板的成员函数都是函数模板,类模板实例化后,成员函数也随之实例化。

2.关于read()函数的下列描述中,()是正确的。

(1分)A。

该函数只能从键盘输入中获取字符串。

B。

该函数只能用于文本文件的操作。

C。

该函数只能按规定读取指定数目的字符。

D。

从输入流中读取一行字符。

3.s类中提供的控制格式标志字中,()是转换为十六进制形式的标志常量。

(1分)A。

hexB。

octC。

decD。

right4.进行文件输入操作时应包含()文件。

(1分)A。

ifstream.hB。

fstream.hC。

ofstream.hD。

iostream.h5.关于异常的描述中,错误的是()。

(1分)A。

异常既可以被硬件引发,又可以被软件引发。

B。

运行异常可以预料,但不能避免,它是由系统运行环境造成的。

C。

异常是指从发生问题的代码区域传递到处理问题的代码区域的一个对象。

D。

在程序运行中,一旦发生异常,程序立即中断运行。

6.假设有函数模板定义如下:template<typename T>Max(T a。

T b。

T &c)c = a + b;}下列选项正确的是()。

(1分)A。

float x。

y。

float z。

Max(x。

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

《面向对象程序设计》过程考核大纲
第三单元运算符重载多态模板
一、考核目标
主要考察类、对象、友元、运算符重载、多态、模板、文件等概念和使用方法,通过考试,使学生掌握类和对象的概念和设计方法;掌握运算符重载作用和语法。

掌握类的继承和多态的作用,掌握模板的语法和作用,掌握对文件的基本操作。

二、考核内容
1.运算符重载的实现。

2.模板函数的实现。

3.多态的实现。

4.对文件的基本操作。

三、考试要求
1.不允许携带U盘和教材等进入考场。

2.考试过程中保持安静,独立按要求完成考试题目。

3.考试结束后,请坐在座位上,等待监考老师确认你的考题之后方可签字离开。

4.在桌面上新建一个文件夹,以“学号+姓名”形式命名,如:20130102张三。

该文件夹中应该包含两个子文件夹(文件夹名分别为:第一题第二题),分别存放两道题的相关工程文件以及测试结果等。

《面向对象程序设计》第一次过程考核A卷
(学号尾号为单数的学生完成A卷)
1.(60分)
已知一个名为Complex的复数类,这个类包含:
(1)私有成员:实部、虚部,且均为int 型
(2)公有的带默认形参值的构造函数
(3)以类的成员函数方式重载+运算符和*运算符
(4)以友元函数方式重载<<运算符
(5)使得以下主函数正确运行并得到以下结果
int main() {
Complex c1(1, 2);
Complex c2(3, 4);
cout << c1 + c2;
cout << c1 * c2;
}
输出结果如下:
4+6i
-5+10i
2.(20分)
定义一个抽象类Shape, 为该类定义虚函数getArea(),从Shape分别派生出圆形Circle和正方形Squre,在这两个类中实现getArea()函数,使得以下主函数的代码可以正确运行并得到如下的结果。

int main() {
Circle c(1); // 用1初始化圆形的半径
Squre s(1); // 用1初始化正方形的边长
Shape * p[2] = {&c,&s};
for(int i=0;i<2;i++){
cout<<p[i]->getArea()<<endl;
}
}
输出结果如下:
3.14
1
3. (20分)
定义一个学生类,有学号和成绩数据成员,均为整型数据,为其定义构造函数。

定义一个模板函数,该函数的功能是从两个数据中选择较大的数据(参考主函数代码及输出结果),对于学生数据,返回成绩最高的学生。

使得以下主函数的代码可以正确运行。

同时将成绩最高的学生的信息以文本文件的方式写入名称为stu.txt 的一个文本文件中。

int main(){
int c = myMax(5,6);
cout<<c<<endl;
Stu s1(101,90);
Stu s2(102,80);
Stu s3 = myMax(s1,s2);
cout<<s3<<endl;
// 以下补充将s3的信息写入文本文件的代码
}
运行结果
6
101 90
《面向对象程序设计》第一次过程考核B卷
(学号尾号为双数的学生完成B卷)
1.(60分)已知一个名为Complex的复数类,这个类包含:
(1)私有成员:实部、虚部,且均为int 型
(2)公有的带默认形参值的构造函数
(3)以类的成员函数方式重载-运算符和*运算符
(4)以友元函数方式重载<<运算符
(5)使得以下主函数正确运行并得到以下结果
int main() {
Complex c1(1, 2);
Complex c2(3, 4);
cout << c1 - c2;
cout << c1 * c2;
}
输出结果如下:
-2-2i
-5+10i
2.(20分)
定义一个抽象类Shape, 为该类定义虚函数getArea(),从Shape分别派生出圆形Circle和正方形Squre,在这两个类中实现getArea()函数,使得以下主函数的代码可以正确运行并得到如下的结果。

int main() {
Circle c(2); // 用2初始化圆形的半径
Squre s(2); // 用2初始化正方形的边长
Shape * p[2] = {&c,&s};
for(int i=0;i<2;i++){
cout<<p[i]->getArea()<<endl;
}
}
输出结果如下:
12.56
4
3. (20分)
定义一个学生类,有学号和成绩数据成员,均为整型数据,为其定义构造函数。

定义一个模板函数,该函数的功能是从两个数据中选择较小的数据(参考主函数代码及输出结果),对于学生数据,返回成绩最低的学生。

使得以下主函数的代码可以正确运行。

同时将成绩最高的学生的信息以文本文件的方式写入名称为stu.txt 的一个文本文件中。

int main(){
int c = myMin(5,6);
cout<<c<<endl;
Stu s1(101,90);
Stu s2(102,80);
Stu s3 = myMin(s1,s2);
cout<<s3<<endl;
// 以下补充将s3的信息写入文本文件的代码
}
结果
5
102 80。

相关文档
最新文档