- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《空间数据结构基础》
课程实习报告
(测绘08级)
姓名
班级
学号
环境与测绘学院
1 通讯簿管理【问题描述】通讯簿是一个线性表,可以存储一定数量的联系人记录,提供查找、插入、删除和修改等操作。通讯簿的特点是以查找为主要操作,要求快速查找到指定对象的位置,故宜采用具有随机访问功能的顺序表。
【数据结构】使用顺序表SeqList建立通讯簿。作为表项的联系人记录,至少应包括以下属性:
{ 序号,姓名,与本人关系,电话号码}
其中序号具有唯一性。序号和姓名可作为查找的主要关键字。与本人关系可枚举为“亲人”、“朋友”和“同事”,主要作用是为联系人分组,并作为次要关键字。
将上述联系人记录定义为一个结构(struct),在主程序中建立模板类顺序表SeqList的对象时用该结构实例化表结点的类型。
【主要功能】程序应为用户提供操作选择界面,必要的操作包括:查找某人电话号码,添加新记录,修改记录,删除记录,打印亲人清单、朋友清单或同事清单以及退出等。另外,为初始化方便,原始数据可存储在磁盘文件中。
ContactInfo.h
#ifndef CONTACTINFO_H
#define CONTACTINFO_H
#include iostream.h
#include stdlib.h
#include string.h
#include iomanip.h
#include conio.h
#include stdio.h
/*enum RelationShip{
Relative=1,
Friend=2,
Colleague=3,
};*/
//定义联系人记录
struct ContactInfo{
int No; //序号
char *Name;//姓名
char *Number;//电话号码
int Relation;//与本人关系
ContactInfo operator = (ContactInfo r){
No=r.No;
Name=r.Name;
Number=r.Number;
Relation=r.Relation;
return *this;
}
void set(int no=0,char *name=,
char *number=,int relation=0 );
};
void ContactInfo::set(int no,char *name,char *number,int relation ) {
No=no;Name=name;Number=number;
Relation=relation;
}
void showRelation(int i) {
switch(i)
{
case 1: cout亲人; break;
case 2: cout朋友; break;
case 3: cout同事; break;
default: break;
}
}
//比较两个元素是否相等
bool operator ==(ContactInfo r1,ContactInfo r2) {
if(r1.No==r2.No)
return true;
else return false;
}
//输出一个元素
ostream operator (ostream ostr,ContactInfo r) {
cout 姓名\t电话\t与本人关系endl;
ostr r.Name\t
r.Number\t;showRelation(r.Relation);
coutendl;
return ostr;
}
//输入一个元素
istream operator (istream istr,ContactInfo r) {
printf(%s,名字:);
r.Name=new char[20];
scanf(%s,r.Name);
printf(%s,电话号码:);
r.Number=new char[20];
scanf(%s,r.Number);
printf(%s,与本人关系(1、亲人 2、朋友 3、同事):);
cinr.Relation;
return istr;
}
#endif
SeqList.h
#ifndef SEQLIST_H
#define SEQLIST_H
#include iostream.h
#include stdlib.h
#include string.h
#include iomanip.h
#include iomanip.h
#include ContactInfo.h
//定义顺序表
文档评论(0)