数据结构课程设计 - 通讯录管理系统

一、 问题描述及要求

设计并实现一个简单通讯录管理系统。要求:实现通讯录的建立、通讯者的删除、查询,以及通讯录的保存。

二、 需求分析

本系统为简单的通讯录管理系统,运行系统时,将从文件中读取已有的数据内容记录在内存中,使用者可以对通讯录进行添加、删除、修改、浏览、查找等操作,每进行一项操作后将内存中的数据写入到文件中,同时并记录操作者的操作内容和当地时间并记录到当前文件夹下的Log.dat文件中。

三、总体设计

1. 程序中用到的所有抽象数据类型定义

ADT User
{
    数据对象:
        D={name,number,add,email,remark|均为string类型}
    数据关系:
        R={ name,number,add,email,remark}
    基本运算:
        PeopleData(){}:构造函数
        ~PeopleData(){}:析构函数
        void SetData(string n, string num, string a, string e, string r):对对象的每项私有成员变量变量进行赋值
    void SetName(string n):对私有成员变量name变量赋值
    void SetNumber(string num):对私有成员变量number变量赋值
    void SetAdd(string a):对私有成员变量add变量赋值
    void SetEmail(string e):对私有成员变量email变量赋值
    void SetRemark(string r):对私有成员变量remark变量赋值
    string GetName():返回私有成员变量name值
    string GetNumber():返回私有成员变量numberstring GetAdd():返回私有成员变量addstring GetEmail():返回私有成员变量email值
    string GetRemark():返回私有成员变量remark值
}
ADT List
{
    数据对象:
        D={
  list | Data类}
    数据关系:
        R={
  list}
    基本运算:
        Function(){}:构造函数
        ~Function():析构函数
        void AddData(Data &):增加一个联系人数据
        void SearchData(Data &):查找联系人
        int LocateData(Data &, string, int):按姓名或电话号码定位联系人,返回数据的地址
        void DeleteData(Data &):删除一个联系人
        void SaveData(Data &):保存内存中的数据到文件中
        void SearchName(Data &):按姓名查找联系人
        void SearchNumber(Data &):按电话号码查找联系人
        void OpenFile(Data &):从文件输入数据,初始化
        void ShowData(Data &):显示所有联系人的数据
        void ShowInfo(Data &, int, int):显示指定联系人数据
        void ReviseData(Data &):更改联系人数据
        void ReviseConcreteData(Data &, int, int):更改联系人的指定数据
        bool Old2New(Data &, int, int, string):显示原联系人信息和新联系人信息,判断是否修改
        void About():关于界面
        void MenuShow(int):菜单显示
        void HomePage():CMD窗体控制
        string GetTime():获得系统时间,记录日志时使用
        string
  • 66
    点赞
  • 398
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值