- 16
- 0
- 约1.2万字
- 约 14页
- 2016-10-20 发布于贵州
- 举报
电话簿管理程序计报告
南京理工大学
Vc++课程设计报告
姓名
学号
日期
电话簿管理
一.程序功能简介
一个电话簿管理小程序。利用文本文件存储电话簿数据,具有添加、删除、显示、查询等的功能。
课程设计要求
1)、将电话簿数据和相应的函数封装在类中,改写程序使之结构化。
2)、增加修改记录的功能,能选择修改用户的姓名、号码。
3)、增加录入时间的显示及存储。
4)、增加缺省的查询方式,即查询时只输入姓名的首字母,所有符合该项条件的电话资料,均会被显示。
二、程序结构分析
1、程序结构
(程序结构图见上)
正如程序结构图所显示的,本电话簿程序采用菜单选项的形式,由用户输入功能项,系统由选择调用相关的函数,从而实现不同的应用。
按照程序要求进行的添加或修改。
将电话簿数据封装在类中,使之结构化 。本程序定义了CNode类和CList类,分别用做结点和链表的数据存储。具体说明见下面。
增加修改功能。在修改这一功能中,程序要求添加修改功能:可以对姓名或号码进行修改操作。因此,加入了两个子菜单:修改姓名或号码,分别由不同的语句来执行
增加录入时间的显示及存储。这个功能由localtime()函数在结点的构造函数中执行,实现了添加数据时把系统时间也一并存储。
新增了智能查找功能,使具姓名有相同首字母的人的名字、号码等信息全部输出。这项功能与按照姓名查找方式类似,在查找时比较的是姓氏的首字母。
二 程序设计。
CNode结点类和CList链表类。
1)、CNode类
class CNode
{
char lastname[20];
char firstname[20];
char number[20];
int year,month,day,hour,minute;
CNode *next;
public:
CNode(char lname[20],char fname[20],char num[20]);
void Show();
friend class CList;
};
其中的姓氏,名字,号码由用户在添加时输入,而时间则是由系统调用函数localtime()自行添加。(关于时间的获得程序,将在下面进行说明。)
Cnode类中的next成员是该类的一个指针,存放下一个节点的地址,用来指向下一个节点系统因此而可以访问整个链表。
2)CList类
class CList
{
CNode *phead;
public:
CList()
{
phead=0;
};
~CList() {};
void load_record_from_file();//从文件中读取记录
void add_record_to_file();//从文件中写入记录
CNode *position_insertion_point(char lname[20]);//根据姓氏找到其在链表中的位置,并返回其指针
void insert_node(CNode *);//插入新的记录
void add_record();//增加记录
void display_list();//显示所有的记录
void delete_record();//删除指定记录
void search_by_name();//按名字查找
void change_record();//修改记录
void search_by_lastname();//按姓氏查找
void search_by_first_character();
void help_me();//帮助系统
void handle_choise(int);//处理选择项
void deletelist();//删除所有记录
};
CList类中有大量的成员函数,由该类的对象调用,实现不同的操作。(函数的说明将在下面展现。)
链表
1)、本电话簿管理程序的数据顺序存放,是通过链表来实现的。
链表的每一个结点都由new运算符在程序的运行过程中动态生成,这样就避免类了内存的浪费。但要注意的是,用new运算符申请的空间,系统不能进行自动释放,需要用delete运算符,其格式是:
Delete 指针名;
在clist类的析构函数中,就使用了该运算符:
void CList ::deletelist()
{
CNode *ptr1,*ptr2;
ptr1=phead;
ptr2=ptr1;
while(ptr1)
{
ptr2=ptr1;
delete ptr1;
您可能关注的文档
最近下载
- Ф90橡胶冷喂料挤出机毕业设计说明书.docx VIP
- 《行测》《行测》题库型介绍(基础题).docx VIP
- 北师大五年级下册全册数学教案.docx VIP
- 石蜡制备高碳醇工艺条件研究.pdf VIP
- 2025届宁夏回族自治区吴忠市盐池县高三下学期第一次模拟考试物理试卷.pdf VIP
- 浙江省中小学正高级教师职称评审表2017.pdf VIP
- 80辛集互联网搜索引擎在成功抓获漂白身份潜逃十二年绑架逃犯中的具体应用3542.pdf VIP
- 《故宫IP联名文创产品开发与销售总结》_国潮文创产品经理.docx
- 人教版(2019)必修第一册 Unit 3 Sports and Fitness Reading and thinking Living Legends 教学设计.pdf VIP
- 专题01+完形填空之综合解题技巧(复习课件)(全国通用)2026年高考英语二轮复习讲练测.pptx VIP
原创力文档

文档评论(0)