空间数据结构基础

空间数据结构基础

ID:25757914

大小:95.00 KB

页数:11页

时间:2018-11-22

空间数据结构基础_第1页
空间数据结构基础_第2页
空间数据结构基础_第3页
空间数据结构基础_第4页
空间数据结构基础_第5页
资源描述:

《空间数据结构基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《空间数据结构基础》上机实验报告(2010级)  姓名詹雷班级测绘10-3班学号07103122    环境与测绘学院   11             C++面向对象程序设计基础【实验简介】学会用算法语言C++描述抽象数据类型,使用模板建立数据结构。理解数据结构的组成分为两部分,第一部分是数据集(数据元素),第二部分是在此数据集上的操作。从面向对象的观点看,这两部分代表了对象的属性和方法。掌握用C++描述数据结构的基本方法,即通过建立类来描述抽象数据类型。类的数据成员提供对象属性,成员函数提供操作方法,方法是公共接口,用户通过调用方法实现对属性的访问。【实验内容

2、】1.定义三维空间的坐标点Tpoint。2.用面向对象的方法定义一个简单的抽象数据结构,本例实验内容为坐标点的数据结构。学会如何用C++语言描述数据结构和算法,理解将数据集和在此数据集上的操作分开描述的方法。3.使用模板建立坐标点point的数据结构,直接表示抽象数据类型。将程序1.1数据结构的类型参数化(模板),实现更高层次的数据抽象。【主要代码】程序1.1:#include#include"point.h"classPoint{private:doublex;doubley;public:Point(){x=0;y=0;}Point(d

3、oublepx,doublepy){x=px;y=py;}voidmove(doublemx,doublemy){x=mx;y=my;}voidShow(){cout<<"x="<#include"point1.h"t

4、emplateclassPoint{private:ptTypex;ptTypey;public:Point(){x=0;y=0;}Point(ptTypepx,ptTypepy){x=px;y=py;}voidmove(ptTypemx,ptTypemy){x=mx;y=my;}voidShow(){cout<<"x="<a(24,36);Pointb(12.5,34.8);cout<<"点a的位置:";a.Show();co

5、ut<<"点b的位置:";b.Show();a.move(25,18);cout<<"点a移动后的位置:";a.Show();b.move(45.6,57.8);cout<<"点b移动后的位置:";b.Show();}【实验过程】1.将坐标点数据结构定义为一个C++类Point,在其内部分别定义数据成员和成员函数。1.数据成员:一个平面直角坐标系中的点有两个属性,它们是x轴上的水平坐标值和y轴上的垂直坐标值。在Point类中,这两个属性分别由数据成员x和y来表示,定义为double类型的私有数据成员。2.操作方法:定义成员函数,为类的使用者提供服务接口。先设计允许

6、对点对象进行的操作,再用C++描述实现操作的算法,并定义为类Point的成员函数。在本例中提供了两个操作:move()函数将一个Point对象移至另一位置,Show()函数输出Point对象的数据成员值。两个构造函数,分别用于建立缺省参数的对象和带参数的对象。(算法提示)缺省构造函数Point()将新建立的坐标点对象初始化为原点位置(0,0)。带参数的构造函数Point(doublepx,doublepy)允许用户建立对象时指定初始坐标位置。点对象的移动操作move()函数需要在调用时给出新位置参数。输出坐标值为无参函数。3.point的数据成员不使用固定的类型定

7、义,而是用typename说明的虚拟类型名ptType作为变量的类型,在定义Point类的对象时,再用C++的基本类型将对象的数据成员的类型实例化。这样做的好处是可以使用同一个类来定义不同数据类型的对象,提高代码的利用率。【实验体会】 通过这次上机实践,基本了解了用算法语言描述抽象数据类型和如何使用模板建立数据结构。最重要的是通过这次实验我知道了怎样去调试一个程序和如何正常使用。  12n阶二项式系数(用队列实现)【实验简介】队列是另外一种限定存取位置的线性表。将n阶二项式展开,其系数构成杨辉三角形。设定一个数组,将n行的数据全部处理并打印完,第n+1行的数据也全

8、都计算出来

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

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

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