第一范文网 - 专业文章范例文档资料分享平台

数据结构通讯录管理系统报告

来源:用户分享 时间:2025/7/4 19:46:37 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

数据结构与算法 课程设计报告

题目:

通讯录管理系统 学生姓名 沈佳萍 学 号 0403100123 专业班级 计算机1001 指导教师 何 跃 日 期 2012/4/19

元培学院教务处

课 程 设 计 任 务 书

班 级 计算机1001 姓 名 沈佳萍 成 绩 题目 通讯录管理系统 已知技术参数、设计要求、测试数据等 一、问题描述 主要涉及的知识与技能有:线性表的使用,要求使用通讯录链表的有关操作(建立、插入、删除、查询、输出)来实现通讯录信息系统的管理。 二、基本要求 建立通讯录信息,信息包括编号、姓名、性别、电话、地址等 能够提供插入、删除、查询通讯录信息等功能 能够输出该通讯录的功能 三、测试数据 请输入您要进行的操作序号: 1 请输入编号/姓名/性别/电话号码/地址: 01 沈佳萍 女 694002 浙江省杭州市 结束输入按0,其他键继续 0 !!!退出程序请选择0 其他键继续!!! 0 Press any key to continue 设计04月12日:明确设计任务及其要求 进 作度04月14日:确定设计的数据结构、需求分析和概要设计。 计 安04月16日:详细设计、编写程序、调试分析、测试等 划排 或04月22日:上机演示、答辩、完成课程设计报告 工

2

一、需求分析【课程设计要求】 【问题的描述】

由于通讯录涉及到多个类型不同的数据组合成一个有机的整体,链表

又是能够动态地进行存储分配的一种结构,根据需要开辟新的内存空间,不会浪费内存资源,所以利用链表实现通讯录的。由于系统需要实现的功能较多,所以采用模块化方式减少工作量及编译时的困难,分别实现建立、插入、查询、输出通讯录的功能。

【基本要求】

建立通讯录信息,信息包括编号、姓名、性别、电话、地址等 能够提供插入、删除、查询通讯录信息等功能 能够输出该通讯录的功能

【测试数据】

请输入您要进行的操作序号: 1

请输入编号/姓名/性别/电话号码/地址: 01 沈佳萍 女 694002 浙江省杭州市 结束输入按0,其他键继续

二 、【整体算法思想】

(1)、首先要定义结构体、结构体指针,初始化链表,以便于在后面的查

找、插入、删除、输出操作的实现。

(2)、插入操作:List Insert(ListL)利用该函数进行插入操作,可以用后插节点:s->next=p->next;p->next=s;前插节点:q=L;while(q=q->next!=p)q=q->next;s->next=q->next;q->next=s;该函数被主函数调用。

(3)、查找操作,可以按编号查找:void search num(Llist L,int i)或是按姓名查找:void search name(Llist L,char n[10])该函数被主函数调用。

3

(4)、删除操作:Del LinkList(L,i)利用该函数进行删除操作,按姓名删除void del name(Llist L,char [10]),该函数被主函数调用。 (5)、主函数中依次调用相关函数即可。

三、【概要设计】 1、数据类型的声明:

数据结构定义: 建立单链表:LinkList Creat LinkListl() Llist creat(Llist L)//初始化单链表 {//尾插法 lnode *s,*r; //定义工作指针 r为尾指针 s为头指针 int a; //设置元素的类型为int r=new lnode;//生成头结点 L=new lnode; L->next=NULL;//将链表置空 L=r; while(a!=0) { s=new lnode;//生成新的节点 cout<<\请输入编号/姓名/性别/电话号码/地址:\ cin>>s->num>>s->name>>s->sex>>s->pho>>s->add; r->next=s;//新节点的处理 r=s;//r指向新的尾节点 cout<<\结束输入按0,其他键继续\ cin>>a; } r->next=NULL;//对于非空表,最后节点的指针域放空指针 return L; }

查找操作:Get LinkList(L,i)

void search_num(Llist L,int i)//通过编号进行检索 { lnode *s; s=L->next;//指向链表的头节点 while(s&&i!=s->num) { s=s->next;//s指向链表的第一个数据节点,s沿着next指针向后移动

4

搜索更多关于: 数据结构通讯录管理系统报告 的文档
数据结构通讯录管理系统报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c7ah2p1ml0a6gjog0oagr_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top