当前位置:首页 > 数据结构课程设计报告 城市链表 学生通讯录管理系统
数据结构课程设计报告
数据结构课程设计报告
( 2012——2013年度第一学期)
课程名称: 数据结构课程设计 题 目 一: 2.2 学生通讯录管理系统 题 目 二: 2.4.3 城市链表 院 系: 计算机科学系 班 级: 10级软件本(一) 姓 名: 学 号: 指导教师: 成 绩:
2012 年 月 日
1
数据结构课程设计报告
成 绩 评 定
一、 指导教师评语
二、 成绩
成绩 备注
指导教师: 日 期: 年 月 日
2
数据结构课程设计报告
设计题目<一>: 2.2 学生通讯录管理系统 一、设计要求 1.问题描述
纸质的通讯录系统已经不能满足大家的要求,容易丢失、查找困难等问题是纸质通讯录所不能克服的缺点。“学生通讯管理系统”是为了帮助老师、同学,或者其他一些需要使用通讯录的人员进行管理和分析的一种应用程序。 2.需求分析
(1) 输入数据建立通讯录
(2) 查询通讯录系统中满足要求的信息 (3) 插入新的通讯录信息 (4) 删除不需要的通讯录信息 (5) 查看所有通讯录信息 二、概要设计
为了实现需求分析的功能,可以从三个方面着手设计。 1.主界面设计
为了实现学生通讯录管理系统各功能的管理,设计一个含有多个菜单项的主控菜单子程序以链接系统的各项子功能,方便用户使用本系统。本系统主控菜单运行界面如图2-3所示。
图2-3 “学生通讯录管理系统”主菜单 2.存储结构设计
本系统主要采用链表结构类型来表示存储在“学生通讯录管理系统”中的信息。其中,链表结点由四个分量构成:通讯录成员学号、通讯录成员姓名、通讯录成员电话号码、指向该结构体的指针。此外,本系统还设置了一个全局变量seat,表示通讯录中成员的序号。
3
数据结构课程设计报告
3.系统功能设计
本系统设置了5个子功能菜单,5个子功能的设计描述如下。
(1)建立通讯录系统 。可以一次输入多个成员通讯录的信息,建立通讯录。该功能由creatIncreLink( )函数实现。
(2)插入通讯记录。每次可以插入一个成员通讯录的信息。如果要连续插入多个成员通讯录信息必须多次选择该功能。该功能有insertYouXu( )函数实现。
(3)查询通讯记录。可以按两种方式查询所需要的通讯录成员记录,一是按学号查询,二是按姓名查询。分别由seartNum( )和seartName( )函数实现。
(4)删除通讯记录。可以对通讯录中不再需要的信息进行删除。有三种删除方式:按序号进行删除,按学号进行删除和按姓名进行删除。分别由deleteElem( )函数,delNum( )函数和delName( )函数实现。
(5)显示通讯录系统。可以查看通讯录中所有的通讯录成员记录。该功能由printList( )函数实现。
三、模块设计 1.模块设计
本程序包含两个模块:主程序模块和链表操作模块。其调用关系如图2-4所示。
主程序模块
链表操作模块
图2-4 模块调用示意图 2.系统子程序及功能设计
本系统共设置10个子程序,各程序的函数名及功能说明如下,其中大部分函数都是链表的基本操作函数。
(1) LinkList creatIncreLink( ) //链表的创建
(2)deleteElem( LinkList L,int i) //从通讯录中按序号删除第i个元素 (3)delName(LinkList L,char n[ ]) //按姓名删除通讯录记录 (4)delNum( LinkList L,int n) //按学号删除通讯录记录
(5)void insertYouXu(LinkList L,LinkList Elem ) //插入一条通讯录 (6)printList( LinkList L) //打印指针地址为 L的通讯录
(7)prior ( LinkList L,LinkList p) // 查找位于当前地址元素的前一元素的地址
4
共分享92篇相关文档