清华大学课程讲义-数据结构答案1

清华大学课程讲义-数据结构答案1

ID:5850966

大小:42.00 KB

页数:4页

时间:2017-12-26

清华大学课程讲义-数据结构答案1_第1页
清华大学课程讲义-数据结构答案1_第2页
清华大学课程讲义-数据结构答案1_第3页
清华大学课程讲义-数据结构答案1_第4页
资源描述:

《清华大学课程讲义-数据结构答案1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1-4.什么是抽象数据类型?试用C++的类声明定义“复数”的抽象数据类型。要求(1)在复数内部用浮点数定义它的实部和虚部。(2)实现3个构造函数:缺省的构造函数没有参数;第二个构造函数将双精度浮点数赋给复数的实部,虚部置为0;第三个构造函数将两个双精度浮点数分别赋给复数的实部和虚部。(3)定义获取和修改复数的实部和虚部,以及+、-、*、/等运算的成员函数。(4)定义重载的流函数来输出一个复数。【解答】抽象数据类型通常是指由用户定义,用以表示应用问题的数据模型。抽象数据类型由基本的数据类型构成,并包括一组相关的服务。//在头文件complex.h中定义的复

2、数类#ifndef_complex_h_#define_complex_h_#includeclasscomlex{public:complex(){Re=Im=0;}//不带参数的构造函数complex(doubler){Re=r;Im=0;}//只置实部的构造函数complex(doubler,doublei){Re=r;Im=i;}//分别置实部、虚部的构造函数doublegetReal(){returnRe;}//取复数实部doublegetImag(){returnIm;}//取复数虚部voidsetReal(doubl

3、er){Re=r;}//修改复数实部voidsetImag(doublei){Im=i;}//修改复数虚部complex&operator=(complex&ob){Re=ob.Re;Im=ob.Im;}//复数赋值complex&operator+(complex&ob);//重载函数:复数四则运算complex&operator–(complex&ob);complex&operator*(complex&ob);complex&operator/(complex&ob);friendostream&operator<<(ostream&os,com

4、plex&c);//友元函数:重载<#include#include“complex.h”complex&complex::operator+(complex&ob){//重载函数:复数加法运算。complex*result=newcomplex(Re+ob.Re,Im+ob.Im);return*result;}complex&complex

5、::operator–(complex&ob){//重载函数:复数减法运算complex*result=newcomplex(Re–ob.Re,Im–ob.Im);return*result;}complex&complex::operator*(complex&ob){//重载函数:复数乘法运算complex*result=newcomplex(Re*ob.Re–Im*ob.Im,Im*ob.Re+Re*ob.Im);return*result;}complex&complex::operator/(complex&){//重载函数:复数除法运算dou

6、bled=ob.Re*ob.Re+ob.Im*ob.Im;complex*result=newcomplex((Re*ob.Re+Im*ob.Im)/d,(Im*ob.Re–Re*ob.Im)/d);return*result;}friendostream&operator<<(ostream&os,complex&ob){//友元函数:重载<<,将复数ob输出到输出流对象os中。returnos<=0.0)?“+”:“-”<

7、raySize]的第n个数组元素中,0£n£arraySize。若设计算机中允许的整数的最大值为maxInt,则当n>arraySize或者对于某一个k(0£k£n),使得k!*2k>maxInt时,应按出错处理。可有如下三种不同的出错处理方式:(1)用cerr<<及exit(1)语句来终止执行并报告错误;(2)用返回整数函数值0,1来实现算法,以区别是正常返回还是错误返回;(3)在函数的参数表设置一个引用型的整型变量来区别是正常返回还是某种错误返回。试讨论这三种方法各自的优缺点,并以你认为是最好的方式实现它。【解答】#include"iostream.

8、h" #definearraySize100 #defineMaxInt0x7f

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。