《数据结构课程设计》
课程题目 |
个人通讯录管理系统 |
课程编号 |
j1620102 |
学生姓名 |
陈斯怡 |
所在专业 |
信息管理与信息系统 |
所在班级 |
信管1132班 |
学号 |
201311671202 |
任课老师 |
易学明老师 |
实习时间 |
2015.1.5.-1.12. |
设计成绩 |
|
老师评语 |
|
-
题目及问题描述
1、李刚是一爱折腾的人,当然爱折腾的人均有梦想,他想当中国的盖次呢。可不,现在个人好友信息多了,复杂了,他想制作一个个人通讯录的制作管理软件。 刚好这个学期学了数据结构课,所以他准备使用数据结构知识来实现了。并考虑使用双向链表作数据结构。并制定了初步要求:
(1)每个好友信息包含姓名、性别、住址、邮编、几岁、电话、QQ、微信帐号、生日等。
(2)作为一个完整的系统,应具有友好的界面和较强的容错能力。
2、编程完成通讯录的一般性管理工作,如通讯录中记录录入、修改、查找、删除等功能。每个记录包含姓名、性别、电话号码、住址等基本呢信息。用数据结构中的双链表,结合C++语言基本知识,编写一个通讯录管理系统,以把所学知识应用到实际软件开发中去。了解并掌握数据结构和算法的设计方法,具备初步的独立分析和设计功能,初步掌握软件开发过程的问题分析,系统设计,程序编码,测试等基本方法和技能。
-
问题分析及功能
个人通讯录管理系统的主要任务是通过大量的资料获得管理所需要的信息,这就需要存储和管理个人的姓名、性别、住址、邮编、年龄、电话、QQ、微信、生日等信息了。因此利用数据结构的双链表建立一个良好的资料组织结构,使整个系统可以进行以下操作:
-
添加:能通过相应操作录入新数据。
-
查询:按姓名查询,显示此人全部信息。
-
删除:按姓名删除,删除此人全部信息。
-
修改:按姓名修改,修改此人某项信息。
-
-
逻辑结构和存储结构设计分析
-
逻辑结构:利用数据结构所学的双链表知识,开辟新节点存放通讯录的信息,修改。
-
存储结构:开辟4个链表指针,指向链表的第一个节点,输入内容记录在一个新的节点里。
-
四、源代码
#include<iostream>
#include<string>
#include"string.h"
#include"jilei.h"
using namespacestd;
int main()
{
jilu jilu1;
stringnames="a";//存放所打开的文件名
int state=1;//保存状态变量
int i;//存放功能号
cout<<"----———-------------------------- 欢迎使用通讯录系统-----------------------"<<endl;
while(1)//保持循环直到用户退出
{
cout<<endl;
cout<<" ************请输入功能号:"<<endl;
cout<<" ************添加新信息******** 1"<<endl;
cout<<" ************查找信息********** 2"<<endl;
cout<<" ************删除信息********** 3"<<endl;
cout<<" ************显示所有信息****** 4"<<endl;
cout<<" ************打开文件**********