版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、上海大学20212021学年度秋季学期试卷A卷绩课程名:面向对象程序设计课程号:08305121学分:5应试人声明:我保证遵守?上海大学学生手册?中的?上海大学考场规那么?,如有考试违纪、作弊 行为,愿意接受?上海大学学生考试违纪、作弊行为界定及处分规定?的纪律处分。应试人 应试人学号 应试人所在院系题号一(20)二(30)三(25)四(25)得分了 一、判断题每题2分,共20分1.引用在声明时必须对其初始化,以绑定某个已经存在的变量或对象,在该引用的生命期内,该绑定不能被更改。V2.指针变量在定义时必须对其初始化,以锁定某个已经存在的目标变量或对象,在该指针变量的生命期内,该指向不能被更改。
2、X 3.值返回的函数如:double sqrt double ;的调用表达式如:sqrt 代表一个无名的临时变量或对象,一般不将其用作左值。V4.引用返回的函数,可以返回该函数中值传递的形参变量或对象。X5.任何类都有构造函数、复制构造函数、析构函数、赋值运算符函数。V6.有静态数据成员的类,一般地应该考虑为其设计复制构造函数、析构函数。V7.将用丁输出的插入运算符函数operator 设计成友元函数的 根本原因是因为进行输出操作时需要访问对象的内部数据成员。x8.在C+玳序中,操作符new的功能与calloc函数的功能完全一样。x9.创立一个C+廿符申对象如:string str; ,贝U
3、sizeof str的值等丁的值。其中成员函数length为返回字符申的长度。x10.基类的私有数据成员在派生类中是存在的,但不可直接访问,需要用从基类继承下来的函数访问。V得二、填空题每空2分,共30分如下设计了结点类Node、链表类玄LinkList,并将链表类作为结点类的友类,请根据运行结果,完成程序。#include using namespace std;Test( int a=0, int b=0): x(a), y(b) ( Test() (if (x=y)cout 数据成员的值相同,都等丁 x endl;elsecout 数据成员的值不同,分别为 x , y endl; 2.以
4、下两小题所涉及的类设计,头文件如下/#include #include using namespace std;class BASE(public :LinkList ;using namespace std;class Test( public :clOls#ifltelude运行结果(7(7 分)有关构造与析构的顺序head - 3 - 7 - 2 - 1 - NULL head - 3 - 7- 2 - 1 - NULL head - NULLhead3 - 7 - 2 - 1 - NULLfriend ostream & operator(out ( , );return ou
5、t;private :int x, y;int main()(Test *p, t1;p = new Test(10);Test t2(2, 3);cout *p n t1 n t2 endl;delete p;cout 退出程序,返回操作系统return 0;(ostream &out, const Test &t)运行结果(1)(10, 0)(0, 0)(2, 3)数据成员的值不同,分别为10, 0退出程序,返回操作系统数据成员的值不同,分别为2, 3数据成员的值相同,都等丁0 endl;BASE( doublex=0, doubley=0): _x(x), _y(y) v
6、irtual void Show(ostream &out) const = 0;protected :double _x, _y;ostream & operator (ostream &out, const BASE &x)(out);return out;class Complex :public( public :Complex( double x=0, ( voidShow(ostream &out) (if (_x!=0)(out 0)else if (_y0) else (if (_y!=0)cout _y i elsecout _x; f
7、riend Complex operator (Complex c;=+ ;=+ ;return c;friend Complex operator (Complex c;* *BASEdouble y=0): BASE(x, y)constout + _y i;out - -_y i;+( const Complex &a,*( const Complex &a,constconstComplex &b)Complex &b)=* + *;Jreturn c;double abs()(return sqrt(_x*_x + _y*_y);;class Poin
8、t :public BASE(public :Point( double x=0, double y=0): BASE(x, y)(void Show(ostream &out) const(out ( _x , _y );friend Point operator +( const Point &a,(Point c;=+ ;=+ ;return c;(10分)测试程序#include int main()(Complex x(1,2), y(3,4), z1(0,1), z2(10);cout x n y n z1 n z2 endl;cout (): () endl;z1
9、 = x+y;z2 = x*y;cout z1 n z2 endl;Point a(1,2), b(3, 4);cout a n b endl;cout a+b endl;return 0;(8分)测试程序#include int main()(Complex x(1,2), y, z;y = 5+x;z = 5*x;cout x n y n z endl;2+4i(1.2)const Point &b)运行结果1+2i3+4i1i10():5_4+6i-5+10i(1,2)(3, 4)(4,6)运行结果1+2i-6+2i5+10icout x+x endl;Point a(1,2),
10、 b, c;b = a + 1;c = 1 + a;cout a n b n c endl;a = a + a;cout a+a endl;return 0;得分I四、完成如下类的设计25分在GCC编译系统中,unsigned long long数据类型使整型数的取值范围得到扩展0 0 2 2641 1,即018 446 744 073 709 551 615为了进一步扩展非负整数的取值范围设计了如下的类。理3637位非负十进制整数。请在类的声明体外实现数。最后写出程序的运行结果每个函数定义4分,运行结果5分/头文件#ifndef LLINT_H#define LLINT_H#include
11、using namespace std;class LLINTpublic :LLINT( unsigned long long x0=0, unsignedlonglong x1=0);LLINT( LLINT &LLINTfriend/第一参数为低位const char *str);operator +();operator +(int);LLINToperator +( const LLINT &x1,constLLINT &x2);LLINT &friendoperator +=( const LLINT &x); ostream & o
12、perator(istream &in, LLINT &x);friendbool operator ( const LLINT &x1,constLLINT &x2);friendbool operator =( const LLINT &x1,constLLINT &x2);friendbool operator ( const LLINT &x1,constLLINT &x2);friendbool operator =( const LLINT &x1,constLLINT &x2);friendbool
13、operator =( const LLINT &x1,constLLINT &x2);friendbool operator !=( const LLINT &x1,constLLINT &x2);protected :static const unsigned long long BBILLION;unsigned long long a1, a0;/a1*1 000 000 000 000 000 000 + a0可表示3637位十进制非负整数;#endif/源程序文件#include 该类数据可精确计算至2123,可处5个尚未定义的成员函数或友元函#in
14、clude const unsigned long long/静态常量数据成员的定义及初始化(1018)LLINT:LLINT( unsigned long long x0, unsigned long long x1)/构造函数unsigned long long x = X0/BBILLION;ostream & operator (ostream &out,if !=0)out setfill(0)setw(18) setfill();elseout (istream &in, LLINT &x)char str200;in str;x = atoLLIN
15、T(str);return in;bool operator ( const LLINT &x1, const LLINT &x2)if return true ;else if =a0 = x0 % BBILLION;al = x1 + x;LLINT:LLINT( const char *str)*this = atoLLINT(str);LLINT LLINT: operator +( int )LLINT temp(* this );+(* this );return temp;LLINT operator +( const LLINT &x1, LLINT s
16、;unsigned long long c = + ;=c % LLINT:BBILLION;=+ + c/LLINT:BBILLION;return s;/转换构造函数从C-字符申转换/直接利用成员函数实现转换构造/后增量运算符函数const LLINT &x2const LLINT &x)if return true;else if =return ;elsereturn false ;bool operator =( const LLINT &x1,(if return true;else if =return =0; i-)(if (0=stri & s
17、tri=9)(if (j18)(+= p0*(stri-0);p0 *= 10;else if (j ;elsereturnfalse ;bool operator(const LLINT &x1,(const LLINT &x2)const LLINT &x2)intmain()(LLINT x(888 777 666 555 444 333 234 567 890 987 654 321 ), y(100), z;cout x n y n z endl;z = 999 999 999 999 999 999;cout z+ endl;cout z =( const LLINT &x1, const LLINT &x2) (if returntrueelse if =return=;elsereturnfalse/(4分)关系运算符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年定州市妇幼保健院(定州市第二医院)招聘备考题库及参考答案详解
- 2026年国家电投集团内蒙古白音华煤电有限公司露天矿招聘备考题库及一套答案详解
- 2026年伊通满族自治县事业单位引进人才备考题库及一套参考答案详解
- 2026年东北林业大学野生动物与自然保护地学院姚允龙学科组招聘科研助理备考题库完整参考答案详解
- 2026年建科公共设施运营管理有限公司招聘备考题库及参考答案详解
- 2026年中材水泥海外发展(天津)有限公司招聘备考题库及一套完整答案详解
- 2026年仓山区村(社区)专职人民调解员选聘备考题库及参考答案详解1套
- 2026年中南大学湘雅基础医学院非事业编制人员招聘备考题库及完整答案详解1套
- 格林巴利病护理质量控制与安全管理
- 2026年嫦娥奔月航天科技(北京)有限责任公司招聘备考题库含答案详解
- GB/T 44143-2024科技人才评价规范
- HJ 873-2017 土壤 水溶性氟化物和总氟化物的测定 离子选择电极法(正式版)(正式版)
- 森林经营投资概算与效益分析
- 河南省洛阳市2023-2024学年高二上学期期末考试英语试题(解析版)
- 三个办法一个指引
- JGT124-2017 建筑门窗五金件 传动机构用执手
- 外科学-急性阑尾炎
- 湖南省常德市石门一中2024年高二物理第一学期期末质量检测试题含解析
- 科创板股票投资知识测试题目
- GB 6529-1986纺织品的调湿和试验用标准大气
- CSR社会责任管理手册
评论
0/150
提交评论