当前位置:文档之家› 通讯录管理系统

通讯录管理系统

通讯录管理系统
通讯录管理系统

实验课程名称

专业班级

学生姓名

学号

指导教师

至学年第学期第至周

目录

1概述 (3)

1.1现状分析 (3)

1.2存在的问题 (3)

1.3实现意义 (3)

2系统分析 (4)

2.1 用户需求分析 (4)

2.2 管理者需求分析 (4)

3概要设计 (4)

3.1程序设计中的数据设计 (4)

3.2算法流程图 (6)

4详细设计 (11)

4.1 通讯录建立模块设计 (11)

4.2 通讯录插入模块设计 (11)

4.3 通讯录查找模块设计 (12)

4.4 通讯录删除模块设计 (12)

4.5 通讯录输出模块设计 (13)

4.6 通讯录数据保存模块设计 (13)

5运行与测试 (14)

5.1 执行过程中出现错误 (14)

5.2功能模块的调试 (14)

6总结和心得 (21)

参考文献 (21)

1概述

1.1现状分析

通讯录管理系统是一个非常通用的管理系统。很多地方都需要拥有自己的通讯录管理系统,以便对自己的同学、同事、朋友等信息资料的管理及使用。通讯录管理系统具有很强的实用性,使用者只要根据具体情况稍加修改,就可以把它应用到实际需求中。随着社会的发展及知识经济的到来,管理信息系统在各行各业发挥着越来越重要的作用。通讯录管理系统是典型的信息管理系统。通讯录管理系统工作繁琐,包含了大量的信息数据,因此需要一个完整的信息管理系统来实现对这些数据的管理,满足管理者的需求。通讯录管理系统的设计能推动机关单位信息管理走向科学化、规范化。通讯录管理系统易于开发、维护、使用方便。各行各业使用越来越广泛。常用于日常办公,提高办事效率。

1.2存在的问题

通讯录管理系统存在很多不足,由于自身编程能力的不足,这个系统实现的功能有限,只能实现管理系统最基本的功能,简单的添加、查询、删除、退出功能。每个模块设计也存在不足,还需要努力学习,进一步完善所学知识。编译过程中,由于自己的粗心造成输入错误,使程序不能运行,需要自己认真仔细对待。还有没有读懂某些模块函数的设计思想,理解困难,能力有限,某些功能自己不能设计完成,还需要进一步努力提升编程能力。不能完全满足用户的需求。

1.3实现意义

通讯录管理系统的设计使得对信息的管理更加方便,能够实现动态管理。检索迅速、查找方便、可靠性高、存储量大、保密性好。管理者工作起来效率高,可以不用再做大量的数据记录,从而减少了机关机关单位职员的工作量。运用数据结构中的算法思想做数据结构,结合C语言知识,编写一个通讯录管理系统。通过完成本课程,进一步熟悉C语言的基本知识,并掌握数据结构的一些基本算法思想,进一步熟悉指针的用法,数组的建立运用和函数的调用。加深对数据结构的理解,提高算法设计能力,锻炼编程能力。用C语言编写一个通讯录管理系统软件,要求能实现通讯录管理系统中增加新记录、按名字或编号删除记录、显示通讯录的所有信息、按名字或编号查询信息、保存通讯录、退出系统。

2系统分析

2.1 用户需求分析

通讯录管理系统要求能实现用户需要的功能有:增加新记录、按名字或编号删除记录、显示通讯录的所有信息、按名字或编号查询信息、保存通讯录、退出系统。

2.2 管理者需求分析

根据实际情况,使用原型法,即以少量少量代价快速地构造一个可执行的软件系统模型,使用户和开发人员可以较快的确定需求,然后采用循环进化的开发方式,对系统模型作连续化的精化,将系统需具备的性质逐渐加上去,直到所有的性质全部满足。设计为管理者提供方便的管理方式,能实现动态管理,减少管理者的工作量,提高办事效率。能够实现添加记录,删除记录,查找记录,退出管理系统等功能。

3概要设计

3.1程序设计中的数据设计

软件中使用结构体和结构体数组,分别对编码、姓名、性别、电话号码、地址进行储存,在子函数中还使用了结构体数组。还运用了头文件:

#include

#include

#include

结构体:

typedef struct{//通讯录结点类型

char num[5];

char name[9];

char sex[3];

char phone[13];

char addr[31];

}DataType;

typedef struct node{//结点类型定义DataType data;//结点数据域

struct node *next;//结点指针域}ListNode;

typedef ListNode * LinkList; LinkList head;

ListNode *p;

3.2算法流程图

菜单函数流程图

系统功能模块图

建立通讯录记录流程图

添加通讯录记录流程图

查询通讯录记录流程图

删除通讯录记录流程图

通讯录信息输出流程图

退出管理系统流程图

4详细设计

4.1 通讯录建立模块设计

LinkList CreateList(void)

{

LinkList head=(ListNode *)malloc(sizeof(ListNode));

ListNode *p,*rear;

int flag=0;

rear=head;//尾指针初始指向头结点

while(flag==0)

{

p=(ListNode *)malloc(sizeof(ListNode));

printf("编号(4) 姓名(8) 性别电话(11) 地址(31) \n");

printf("----------------------------------------\n");

scanf("%s%s%s%s%s",p->data.num,p->https://www.doczj.com/doc/4f10643149.html,,

p->data.sex,p->data.phone,p->data.addr);

rear->next=p;//新结点连接到尾结点之后

rear=p;//尾指针指向新结点

printf("结束建表吗?(1/0):");

scanf("%d",&flag);//读入一个标志数据

}

rear->next=NULL;

return head;

}

4.2 通讯录插入模块设计

void InsertNode(LinkList head,ListNode *p)

{

ListNode *p1,*p2;

p1=head;

p2=p1->next;

while(p2!=NULL && strcmp(p2->data.num,p->data.num)<0) {

p1=p2;

p2=p2->next;

}

p1->next=p;

p->next=p2;

}

4.3 通讯录查找模块设计

ListNode * ListFind(LinkList head)

{

ListNode *p;

char num[5];

char name[9];

int xz;

printf("============\n");

printf(" 1. 按编号查询\n");

printf(" 2. 按姓名查询\n");

printf("============\n");

printf(" 请选择: ");

p=head->next;

scanf("%d",&xz);

if(xz==1) {

printf("请输入要查找者的编号:");

scanf("%s",num);

while(p && strcmp(p->data.num,num)<0)

p=p->next;

if(p==NULL || strcmp(p->data.num,num)>0)

p=NULL;

}

else

if(xz==2) {

printf("请输入要查找者的姓名:");

scanf("%s",name);

while(p && strcmp(p->https://www.doczj.com/doc/4f10643149.html,,name)!=0)

p=p->next;

}

return p;

}

4.4 通讯录删除模块设计

void DelNode(LinkList head)

{

char jx;

ListNode *p,*q;

p=ListFind(head);

if(p==NULL) {

printf("没有查到要删除的通讯者!\n");

return;

}

printf("真要删除该结点吗?(y/n): ");

scanf("%s",&jx);

if(jx=='y' || jx=='Y') {

q=head;

while(q!=NULL && q->next!=p)

q=q->next;

q->next=p->next;

free(p);

printf("通讯者已被删除!\n");

}

}

4.5 通讯录输出模块设计

void PrintList(LinkList head)

{

ListNode *p;

p=head->next;

printf("编号姓名性别联系电话地址\n");

printf("----------------------------------------\n");

while(p!=NULL)

{

printf("%s,%s,%s,%s,%s\n",p->data.num,p->https://www.doczj.com/doc/4f10643149.html,,

p->data.sex,p->data.phone,p->data.addr);

printf("----------------------------------------\n");

p=p->next;//后移一个结点

}

}

4.6 通讯录数据保存模块设计

5运行与测试

5.1 执行过程中出现错误

原因:代码输入有误。

处理措施:根据编译提示改正错误。

5.2功能模块的调试

运行进入程序主菜单

建立链表模块:选择1 结束建表输入1 继续建表输入0

显示模块:选择5

添加模块:选择2

查找模块:1按编号查询2按姓名查询

删除模块:1按编号删除2按姓名删除

进入退出界面:选择0

C语言-通讯录管理系统

#include #include #include struct record{ charnum[12]; char name[10]; char birthday[10]; char post[10]; char phone[15]; }data[100]; intmenu_select( ); intcreate_record(); intadd_record(int flag); int flag=0; intfind_record(int flag); intdelete_record(int flag); voidpaixu_record(int flag); intsave_record(int flag); void main() { for( ; ; ){ switch(menu_select()) { case 1: printf(" ***********************************************\n"); printf(" ************** 通讯录的建立***************\n"); printf(" ***********************************************\n"); flag=create_record(); break; case 2: printf(" ***********************************************\n"); printf(" ************** 通讯录信息的添加*****************\n"); printf(" ***********************************************\n"); flag=add_record(flag); break; case 3: printf(" ******************************\n"); printf(" ******* 通讯录信息查询*******\n"); printf(" ******************************\n"); find_record(flag); break; case 4:

通讯录管理系统

课程设计任务书 题目C语言课程设计 系(部) 信息科学与电气工程学院 专业计算机科学与技术 班级计职141 学生姓名王雪 学号140819139 06 月21 日至07 月04 日共 2 周 指导教师 院长 2015 年6月23日

一、课程设计目的 将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、数据结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。通过课程设计,学生在下述各方面的能力应该得到锻炼: (1)进一步巩固、加深学生所学专业课程《C++程序设计语言》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。 (2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。 (3)利用所学知识,开发小型应用系统,掌握运用C++语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。 (4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。 (5)掌握结构化程序设计方法,熟悉面向对象程序设计方法。 (6)熟练掌握C++语言的基本语法,灵活运用各种数据类型。 (7)进一步掌握在集成环境下如何调试程序和修改程序。 设计功能 录入联系人信息(包括姓名、电话号码、地址等信息);通讯录管理系统要求实现以下功能: 1、输入每一位联系人记录,将其信息存入文件中。 2、查询所有联系人的信息,并按可选的自定义规则进行排序; 3、记录修改,将修改的记录信息保存于文件中。 设计要求 1、设一个通信录由以下几项数据信息构成: 数据项类型 姓名字符串 地址字符串 邮政编码字符串 电话号码字符串 试为通信录数据定义类型和定义通信录变量,实现功能:存取、显示、删除记录、查询记录等功能。 2、要求:界面友好,易于操作 总体设计 系统功能模块图:

个人通讯录管理系统c语言源程序优秀版)

#include /*头文件*/ #include //包含最常用的系统函数 #include //关于字符数组的函数定义的头文件#include //控制台输入输出 //定义结构体 struct tongxunlu /*定义通讯录结构体变量*/ { char xingming[20]; /*定义输入名字的数组*/ char dianhua[20]; /*定义输入电话号码的数组*/ char dizhi[40]; /*定义输入地址的数组*/ } txl[100]; //默认100个数据 int n=0;//记录数据联系人数量 FILE *fp; /*定义文件*/ //程序用到的所有函数 void zhucaidan(); /*主菜单函数*/ void zengjia(); /*增加联系人函数*/ void readfile(); /*文件中读入函数*/ void writefile(); /*文件中写入函数*/ void xiugai(); /*修改联系人函数*/ void xiugai_xingming(); /*姓名修改*/ void xiugai_dianhua(); /*电话号码修改*/ void chazhao(); /*查找联系人函数*/

void chazhao_xingming(); /*按姓名查找*/ void chazhao_dianhua(); /*按号码查找*/ void shanchu(); /*删除联系人函数*/ void shanchu_quanbu(); /*全部删除*/ void shanchu_dange(); /*单个删除*/ void xianshi(); /*号码显示*/ //程序主函数模块六 void main() /*主函数main*/ { readfile(); /*读入文件*/ while(1) /* 循环(永远进行)*/ { zhucaidan(); /*调用主菜单函数*/ } } //读取文件函数部分开始模块七 void readfile() { if((fp=fopen("c:\\通讯录.txt","r"))==NULL) /*以只读方式打开判定文件是否为空*/ { printf("\n\t\t\t 通讯录文件不存在"); /*判断结论*/ if ((fp=fopen("同通讯录.txt","w"))==NULL) /*只写方式判断*/

通讯录管理系统的设计与实现

课程设计报告 通讯录管理系的设计与实现 姓名:钟婷英 班级:计122 学号:1213023039 时间:2014年1月10日 1,问题描述 通讯录是用来记载和查询联系人通讯信息的工具,电子通讯录已经为手机,电子词典等设备中不可缺少的工具软件,请设计一个能够满足这种需求的软件,基本功能模块如下图所示。 输入:记录的录入。 显示:通讯录的显示。 查找:按指定方式,输入关键字,查找指定记录。 插入:实现记录的添加或在指定位置插入记录。 保存:将内存中正在被操作的通讯录以文件形式保存到磁盘。 读入:保存的逆操作,讲存在磁盘中的通讯录文件读到内存中。 排序:按指定关键字对通讯录数据进行排序。 修改:提供修改某条记录的功能。 移动:移动记录在通讯录中的存储位子,使其被查找或显示时的位序前移或后移。 退出:结束程序运行。 2,设计要求 (1)设计通讯录数据的逻辑结构和物理结构。 (2)通讯录至少包括下列数据信息:姓名,电话,单位等。 (3)完成图示基本功能。 (4)软件易用,操作简单。 (5)根据自己使用通讯录体会扩充其他功能,如按姓名查找,按号码查找,按序号删除等。 (6)设计足够多的测试用例 主程序 输 入 显示 查找 插入 删除 保存 读入 排序 修改 移动 退出

(7)数据输入有效性检验:如姓名不能为空,号码中不能有非法字符等。(8)提供分组管理的相关功能,如:分组显示,加入组,组创建,组查询等。(9)可视化的界面设计。 3,概要设计 1,使用struct data struct addressList定义结构体类型,struct data结构体中包括年月日的定义,strcut addressList中包括联系人ID账号,名字,性别,名族,生日,手机号码,QQ号码和家庭地址等。 struct date { int year; int month; int day; }; struct addressList { char ID[10]; char name[10]; char gender[4]; char minzu[2]; date birthday; char shoujihao[14]; char QQ[11]; char address[40]; }; 2,程序设计过程中用到的函数有: int zhujiemian( ); void tianjia(fstream & ); void xiugai(fstream & ); void shanchu(fstream & ); void chazhao(fstream & ); void liulan(fstream & ); int findRecord(fstream &, const char *); int getAmount(fstream & ); 3,整个程序用的是面向对象的方法,在主函数中调用各种函数,来实现通讯录的功能。在主函数中,使用的是c++语言中的开关语句(switch)用来选择通讯录的各种功能。

C语言课程设计报告—手机通讯录管理系统

C程序课程设计报告 --手机通讯录管理系统 姓名:谢骏 学院:珠宝学院 学号:649 班级:141082

一课程设计目的和内容概述 1.目的:加深对《C语言》课程所学知识的理解,进一步巩固C语言编程方法。学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而具备解决综合性实际问题的能力,加强动手能力。 2.内容:设计一个简易的手机通讯录管理系统。该题目要求在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握各种函数的应用,包括时间函数、、绘图函数,以及文件的读写操作等。 其中结构体,函数的调用,算法的设计是尤为重要的。 二题目 手机通讯录管理系统。 [问题描述] 该系统模拟手机通讯录管理系统,实现对手机中的通讯录进行管理 [基本要求] 要能提供以下几种功能: (1)查看功能:选择此功能时,列出下列三类选择:

A:办公类B:个人类C:商务类 (2)当选中某类时,显示出此类所有数据中的姓名和电话号码 (3)添加数据功能:能录入新数据,每个结点包括:姓名,电话号码,分类(可能选项有:w为办公类p为个人类b为商务类),电子邮件。例如:杨春商务类 当录入重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通讯录中超过15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。(4)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改。 (5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。 三程序设计 1.总体设计 首先,因为每个个体有多种信息,所以要建立结构体来储存和整合各个信息。然后利用模块来分别实现程序的各个功能。各个模块用函数来实现。在通过通过主函数来判断输入字母,从而调动函数,实现所需功能。最后将输入的文件保存在文件里,以便重复使用。 2.详细设计

题目通讯录管理系统

题目 2 通讯录管理系统 一.设计要求 1、问题描述 设有一通讯录,记录联系人的联系信息,包括联系人姓名、联系人多个联系电话、邮箱、联系地址以及所属群组。联系人按姓氏序列升序排列并按顺序编号。使用者能根据姓名或编号对联系人信息进行增删改查。请编制一程序模拟该通讯录的管理。 2、设计要求 1)基本要求 (1) 新建联系人。输入联系人的姓名、电话、email、地址和分组等信息, 并插入通讯录的正确位置。 (2) 编辑联系人。可修改、新增或删除联系人的电话、设置首个默认电话号 码、修改或删除email、地址和分组等信息。 (3) 删除联系人。可按姓名或序号删除联系人的信息。 (4) 查询联系人。可按姓名或序号查询联系人的信息并输出。 (5) 群组管理。可根据实际情况删除或新增分组,可为联系人分配群组或移 除群组,并可按群组查询联系人信息。 (6) 输出通讯录。按顺序输出通讯录的全部信息。 2)以下为选做: (7) 按姓名查询联系人时可进行模糊查询。 (8) 通过文件读写实现通讯录信息的读取和记录。 二.概要设计 1.主界面设计 为了实现通讯录管理系统,设计一个含有多个菜单项的主控菜单子程序以链接系统的各项子功能,方便用户使用本系统。本系统主菜单运行界面如下图

所示。 2.存储结构设计 本系统主要采用链表结构类型存储联系人信息。 3.系统功能设计 本系统分为以下7个功能模块。 (1)添加联系人:添加联系人子模块可完成添加联系人姓名、电话、email、地址和分组等信息,并插入通讯录的正确位置。 (2) 编辑联系人。可修改、新增或删除联系人的电话、设置首个默认电话号码、修改或删除email、地址和分组等信息。 (3) 删除联系人。可按姓名或序号删除联系人的信息。 (4) 查询联系人。可按姓名或序号查询联系人的信息并输出。 (5) 群组管理。可根据实际情况删除或新增分组,可为联系人分配群组或移除群组,并可按群组查询联系人信息。 (6) 输出通讯录。按顺序输出通讯录的全部信息。 (7)可选择是否保存并退出系统。 三.模块设计

学生通讯录管理系统的设计与实现

学生通讯录管理系统的设计与实现

学生通讯录管理系统的设计与实现 问题描述: 纸质的通讯录已经不能满足实际需求,容易丢失,查找困难等问题是纸质通讯录所不能克服的缺点。“学生通讯录管理系统”是为了帮助老师、同学,或者其它一些需要使用的通讯录的人员进行管理和应用的一种应用程序。 需求分析: 1)输入数据建立通讯录。 2)查询通讯录中满足要求的信息。 3)插入新的通讯录信息。 4)删除不需要的通讯录信息。 5)查看所有的通讯录信息。 主界面设计要求: 1)通讯录的建立 2)插入通讯录记录 3)查询通讯录记录 4)删除通讯录记录 5)显示通讯录记录 6)退出系统 设计要求: A.建立通讯录时,每个学生的信息包括:学号,姓名,电话。

B.查找时,学号、姓名、电话均能够作为查询字段。 C.查看所有的通讯录信息时,所有记录需要时有序的(按学号排序,按姓名排序(字典序),按电话号码排序)。 D.存储结构:要求使用顺序存储结构。 E.数据使用:使用本班级的具体信息。 需求分析: 本次设计目的是学生信息管理系统,可存入每个学生的基本信息,所有学生信息都可根据名字、学号、电话、邮箱进行查询,也都能够根据这四个基本信息检索到一个学生并删除其数据。输入形式:student.txt,以文件形式进行输入。 输出形式:根据不同的输入进行不同的操作。 达到功能:能插入一个学生的信息,能删除一个学生的信息,能查询一个学生的信息。 测试数据:班上70个同学的基本数据。 概要设计: 数据类型:顺序链表 ArrayList类 学生数据结构:StuData类包含name、id、phone、email四个String基本类型。 所有操作写在Structure中,包含insert、remove、query、printAll。 Main函数用Java标准输入,循环输入,用switch判断输入进行

通讯录管理系统

通讯录管理系统说明书 一、使用的技术和开发平台: 基于https://www.doczj.com/doc/4f10643149.html,技术开发的数据库应用程序。开发平台为windows,使用的语言为C#2008,数据库为:MSSQL SERVER2008 二、系统功能模块 本系统是使用c#2008和MSSQL SERVER2008开发的一个数据库应用程序,其主要功能是实现对不同组别的联系人信息进行管理,具体来说分如下几个功能模块: 1、后台管理模块 对系统管理员账户的添加、删除、修改等操作 2、登录验证系统 系统启动时,将出现登录窗口,要求用户输入正确的用户名和密码,否则无法进入系统。 2、联系人管理系统 登录成功后将进入系统的主窗口(FormMain.cs),如下图所示: 其中组别是对联系人分的类,根据添加到数据库中的所有联系人的组别确定,是可以更改的。主窗口第一次显示时,默认显示第一个组别的所有联系人。可以在左边树形列表中选择不同的组别,同时右边的ListView自动显示不同组别的所有联系人。在联系人菜单下可以实现新增联系人、删除联系人、修改或查看联系人以及搜索,不论是新增、删除还是修改联系人完毕后,下面的ListView会同时更新显示联系人及组别。状态栏显示登录账户名和选中组别包含的联系人个数。 当用户单击新增联系人菜单项时,弹出如下窗体(FrmAdd.cs),以实现新增:

其中组别是根据数据库中已有的组别自动加载到组合框中的。当用户在ListView中选择某个联系人后再单击删除联系人菜单项,可将该联系人删除。当用户在ListView中双击某个联系人或单击修改或查看联系人菜单项,会弹出如下窗体(FrmMod.cs),以实现修改或查看联系人:不论是添加还是修改联系人时,组别都是可以修改的,注意姓名和组别不能为空。

通讯录管理系统课程设计报告书C语言

二〇〇八~ 二〇〇九学年第二学期 信息科学与工程学院 课程设计报告书 课程名称: C语言课程设计 班级:

学号: 姓名: 指导老师: 月九年二〇〇九 通讯录管理系统 一.需求分析 设计题目及要求: ◆建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子邮箱等; ◆能够提供添加、删除和修改通讯录信息的功能; ◆能够提供安不同方式查询的功能;如按姓名或年龄、电话等查询; ◆将通讯录保存在文件中; ◆能够按表格方式输出通讯录信息。 系统功能需求分析: 主要包含一下多种功能: 添加:添加通讯录记录 显示:显示通讯录记录 删除:删除通讯录记录 查询:查询通讯录记录 修改:修改通讯录记录 保存:将信息保存到文件 二.概要设计 系统功能模块图:

添加:可以添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱后,会提示是否继续添加。. 显示:可以以表格形式输出所有通讯录里的记录 删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容 查询:可以选择用姓名、电话、地址三种方式查询 修改:输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改 保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件 三.详细设计 (1).通讯录: typedef struct { char score; /*编号*/ char name[10]; /*姓名*/ char num[15]; /*号码*/ char email[20]; /*邮箱*/ char age[8]; /*年龄*/ char adds[20]; /*住址*/ }Person; void main() /*主函数*/ { int n=0; for(;;) { switch(menu_select())

通讯录管理系统需求分析

通讯录管理系统需求分析 项目编号:S1-BS-HTML-001 l项目概述 1.引言 1.1编写目的 在完成了针对通讯录管理系统的前期调查,同时与多位软件使用者进行了全面深入地探讨和分析的基础上,提出了这份软件需求规格说明书。 此需求规格说明书对《通讯录管理系统》软件做了通讯录管理系统的用户需求分析,明确所要开发的软件应具有的功能、性能与界面,使系统分析人员及软件开发人员能清楚地了解用户的需求,并在此基础上进一步提出概要设计说明书和完成后续设计与开发工作。本说明书的预期读者为客户、业务或需求分析人员、测试人员、用户文档编写者、项目管理人员。 本说明书是整个软件开发的依据,它对以后阶段的工作起指导作用。本文也是项目完成后系统验收的依据。

1.2项目背景 本通讯录信息管理系统用计算机管理电子通讯录的一种计算机应用技术的创新,在计算机还未普及之前通讯管理都是由联系人采用名片,笔录手工记帐的方式来操作的.现在一般的通讯录管理都是采用计算机作为工具的实用的计算机通讯录管理程序来帮助人们进行更有效的通讯录信息管理。通讯录管理系统是典型的信息管理系统(mis),要求应用程序功能完备,易使用等特点。 1.3定义 需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。 2.任务概述 2.1目标 实现通讯录管理系统的基本功能,可以实现电话用户的查询、电话号码的查询、电话号码所在地的查询、电话号码的添加及删除等功能,以方便人们的记录和通讯。 2.2运行环境 2.2.2.1服务端 A. 操作系统:Windows 2003 Server 2.2.2.2客户端 A. Windows 95/98/me/Xp/2000/2003, Unix, Linux,Vista,Mac OS各版 2.3条件与限制 本通讯录信息管理系统用计算机管理电子通讯录的一种计算机应用技术的创新,在计算机还未普及之前通讯管理都是由联系人采用名片,笔录手工记帐的方式来操作的.现在一般的通讯录管理都是采用计算机作为工具的实用的计算机通讯录管理程序来帮助人们进行更有效的通讯录信息管理。通讯录管理系统是典型的信息管理系统(mis),要求应用程序功能完备,易使用等特点。 3.数据描述 开始 3.1数据流图 以可读写的方式打开一个数据文件 将此文件的内容读出,并存入一个新的结构体类型的数组中。 调用menu()菜单函数

个人通讯录管理系统

C语言程序设计 课程设计报告 个人通讯录管理系统设计 专业__网络工程___ _____ 班级___(3)班___________ 学号__3148119322 姓名__吴道金 _ 学号_ 3148119319 _姓名_ 林东垚 ___ 学号_ 3148119359 _姓名__ 林家勇 __ 学号__3149119349__________姓名___上官景铨_____ ______ 福建工程学院软件学院 2015年月日 (正文部分)

一、需求分析 建立一通讯录,输入姓名、电话号码、住址等信息,然后对通信簿进行显示、查找、添加、修改及删除。功能要求(1) 通讯录的每一条信息包括姓名、单位、固定电话、移动手机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ等。 (2) 输入功能:可以一次完成若干条信息的输入。 (3) 显示功能:完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示) (4) 查找功能:可以按姓名等多种方式查找通讯信息 (5) 增加、删除、修改功能:完成通讯录信息的多种更新 二、总体设计

三、详细设计 void menu(); /*菜单*/ void Add(); /*添加记录*/ void print(); /*输出记录*/ void Find(); /*查找记录(按姓名)*/

void Delete(); /*删除记录*/ void SaveFree(); /*保存到文件*/ void Creat(); /*打开文件*/

四、程序源代码 #include #include #include

通讯录管理系统课程设计报告..

设计课题题目 一、课程设计目的与要求 1.课程设计目的 (1)综合运用之前所学知识(选择控制,循环控制,数组,函数,指针,结构体和文件等)来完成一个简单的信息管理程序的设计。 (2)充分体现和体会函数在程序设计中的必要性和实用性,并反映主函数main()在程序设计中的实现思路和方法。 2. 课程设计要求 制作一个通讯录系统。 (1)该程序具有查找、添加、修改、删除功能。 (2)通讯录包括:姓名、电话、街道、城市、省、邮编等。 二、总体设计 根据系统的要求,系统总体设计如图1所示。

三、详细设计 1、数据结构设计 #include /*标准输入输出函数库*/ #include /*标准函数库*/ #include /*字符串函数库*/ #define FILENAME "phone.dat" struct date //定义一个结构体类型数组 { char name[10]; /*姓名*/ char phone[12]; /*电话*/ char email[20]; /*邮箱*/ char QQ[20]; /*QQ*/ } per[10]; int menu() //主菜单选择函数 2.函数说明 (1) 主函数 main()允许用户通过菜单进行功能选择,使用相应的功能代码来调用对应的函数功能。 (2)

四、程序清单 1、头文件 #include /*标准输入输出函数库*/ #include /*标准函数库*/ #include /*字符串函数库*/ #define FILENAME "phone.dat" 2、主函数 void main() //主函数 { int n=0,i; while(1) { switch (menu()) { case 1: { printf("\n\t 通讯信息录入\n"); //信息录入 n=Input(per, n); } break; case 2: printf("\n\t\t\t 通讯录记录表\n"); //显示记录 Display(per,n); break; case 3: printf("\n\t保存功能\n"); WritetoText(per,n); //保存数据 printf("\t"); system("pause"); //操作完成后进行暂停 break; case 4: printf("\n\t从通讯录中删除记录\n"); n=Delete_a_record(per,n); //删除记录 printf("\t"); system("pause"); break; case 5: printf("\n\t修改通讯录中的记录\n"); Change(per,n); //修改数据

管理信息系统-通讯录管理系统

昆明理工大学管理信息系统课程设计通讯录管理系统 学院计算机科学与技术学院 姓名黄亚军 学号200910405229 指导教师姓名王剑 2012年05月27日

昆明理工大学管理信息系统课程设计 (1) 摘要 参考文献 (25)

摘要: 通讯录管理系统是每一个用户管理通讯录的不可缺少的一个管理信息系统,它的内容对于用户的管理者来说是至关重要的,所以通讯录管理系统应该能够为每一个用户的管理者提供充足的信息和快捷的查询手段,大大的方便用户合理的管理通讯录。 随着科学技术的不断提高,计算机科学日渐成熟,网上通讯工具的迅速发展,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对通讯录进行管理,具有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高通讯录管理的效率,也是用户理财的科学化、正规化管理,与先进科学技术接轨的重要条件。 因此,开发这样一套管理软件成为很有必要的事情,对于我们即将计算机专业毕业的学员来说,也是一次将计算机应用于现实管理的一次很有意义的实践活动。 关键词:通讯录管理信息系统计算机科学用户 一、前瞻 1.开发背景简介 随着信息活动在国民经济中主导地位的确立和信息产业的崛起信息资源管 理(Informetion Resouces Management,简称IRM)作为一个专有名词和独立的学科逐渐发展起来。如何积极开发、合理配置和有效利用信息资源,日益成为社会生活中亟待解决的问题。由于计算机和通信技术的高速发展,推广应用计算

个人通讯录管理(c语言课程设计)

安徽工业大学 《C语言课程设计》实习综合报告课题名称:个人通讯录管理系统 实习成员:王刚 学号: 109074372 专业班级: 网络工程103班 指导教师: 郑啸老师

目录 一.问题描述 (2) 二. 各功能流程图与设计思路 (3) 2.1显示模块 (3) 2.2查找模块……………………………………………4.. 2.3添加模块 (6) 2.4删除模块 (8) 2.5修改模块 (9) 三、文件的读取与保存 (11) 四、程序源代码 (12) 五、调试与运行结果 (18) 六、计算机学院课程设计评定意见 (24) 一.问题描述

设计通讯录包含以下功能: (1)通讯录的每一条信息包括姓名、单位、固定电话、移动手 机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ 等。 (2)输入功能:可以一次完成若干条信息的输入。 (3)显示功能:完成全部通讯录信息的显示。 (4)查找功能:可以按姓名等多种方式查找通讯信息。 (5)增加、删除、修改功能:完成通讯录信息的多种更新。 二.各功能流程图与设计思路 Menu菜单:

运用switch()进行操作: case'1': 显示功能,list()函数 说明:利用for循环,逐个输出已保存的内容 代码如下: //*****************显示通讯录中的内容************* void list() { printf("编号姓名电话 \t手机 \t工作单位\tEMAIL \t\tQQ\n"); for(i=0;i

c语言通讯录管理系统

C语言课程设计:通讯录管理系统

目录 一、需求分析 (2) 二、概要设计 (2) 三、详细设计 (3) 四、上机操作 (14) 五、实习心得 (19) 六、源程序 (20)

一、需求分析 具有数据的插入、修改、删除、显示和查询功能的电话簿管理程序。 (1)数据包括:人名、工作单位、电话号码和E-MAIL地址。 (2)可对记录中的姓名和电话号码进行修改。 (3)可增加和删除记录。 (4)可显示所有的保存记录。 (5)可按人名或电话号码进行查询。 [提示] 建议采用结构体数组和文件系统实现。结构体成员包括人名、工作单位、电话号码和E-MAIL地址。 根据题目的要求程序应该采用结构体数组和文件系统实现。应该有文件的操作功能;在程序中应该包括输入、显示、删除、查询、添加、修改、保存、加载和退出的功能。 二、概要设计 根据上面的分析,可以将程序系统的设计分为如下几个模块:插入、显示、删除、查询、修改、保存和退出。 通讯录管理系统 修改退出 插入显示删除查询保存

三、详细设计 1、 主函数; 主函数一般设计得比较简洁,只提供输入,处理和输出部分的函数调用。其中各功能模块用菜单方式选择。 流程图 N Y 【程序】 int main() //主函数 { Man man[500],*pman=man;; char control; int size; printf("\t\t**********************************************\n"); //窗口初始化 printf("\t\t********** 欢迎使用通讯录管理系统! ***********\n"); printf("\t\t*--------------------------------------------*\n"); printf("\t\t* 请按回车键继续! *\n"); printf("\t\t**********************************************\n"); 开始 显示一系列功能选项 输入n ,判断是否是0~6 根据n 的值调用各功能模块函数 结束

C语言通讯录管理系统程序代码

一、课程设计题目及要求 题目通讯录管理系统 任务:自学C语言中相关知识,设计出通讯录管理系统。要求如下所述: ◆建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子 邮箱等;; ◆能够提供添加、删除和修改通讯录信息的功能; ◆能够提供按姓名或电话等查询; ◆将通讯录保存在文件中; ◆能够按表格方式输出通讯录信息。 二、系统设计方案 (一)总体框架图: 通讯录管理系统:1、录入通讯录信息 2、修改通讯录信息 3、查询通讯录信息 4、浏览通讯录信息 5、增加通讯录信息 6、推出系通讯录统 (二)模块设计 模块一:头文件,变量定义,函数的声明 对系统所使用的变量进行定义,对函数进行声明 模块二:录入通讯录信息 声明函数void readfile(),说明一个文件指针FILE *fp 打开文件"student.txt" 模块三:通讯录信息的查找 声明void seek()为查找函数,通过switch(item)设定用学号查找,用姓名查找两个分支 模块四:通讯录信息的修改

声明void modify()为学生信息修改函数,通过switch(item)设定所要修改的项目模块五:通讯录信息按学号排序 声明void sort()将录入通讯录信息系按升序排列,用的是“冒泡排序法”实现排序模块六:加通讯录信息 声明void insert()插入通讯录信息,先通过判断通讯录是否存在,若否则继续输入,若是跳出,重新循环 模块七:通讯录信息 声明void del()实现通讯录信息删除,通过学号对比确定要删除的信息,然后用后一个替换掉。 模块八:示学生信息 通过display()函数输出通讯录信息 模块九;存信息 通过fp=fopen("student.txt","w");写入信息 模块十:界面菜单 通过switch(num)调用,以上各函数,实现功能 三、设计详情 1.主函数 主函数设计要求简洁,只提供部分提示语和函数的调用 【程序】

个人通讯录管理系统C语言源程序优秀版

个人通讯录管理系统C语言源程序优秀版 Last revision date: 13 December 2020.

#i n c l u d e/*头文件*/ #include //包含最常用的系统函数 #include //关于字符数组的函数定义的头文件 #include //控制台输入输出 //定义结构体 struct tongxunlu /*定义通讯录结构体变量*/ { char xingming[20]; /*定义输入名字的数组*/ char dianhua[20]; /*定义输入电话号码的数组*/ char dizhi[40]; /*定义输入地址的数组*/ } txl[100]; //默认100个数据 int n=0;//记录数据联系人数量 FILE *fp; /*定义文件*/ //程序用到的所有函数 void zhucaidan(); /*主菜单函数*/ void zengjia(); /*增加联系人函数*/ void readfile(); /*文件中读入函数*/ void writefile(); /*文件中写入函数*/ void xiugai(); /*修改联系人函数*/ void xiugai_xingming(); /*姓名修改*/ void xiugai_dianhua(); /*电话号码修改*/ void chazhao(); /*查找联系人函数*/ void chazhao_xingming(); /*按姓名查找*/ void chazhao_dianhua(); /*按号码查找*/ void shanchu(); /*删除联系人函数*/ void shanchu_quanbu(); /*全部删除*/ void shanchu_dange(); /*单个删除*/ void xianshi(); /*号码显示*/ //程序主函数模块六 void main() /*主函数main*/ { readfile(); /*读入文件*/ while(1) /* 循环(永远进行)*/ { zhucaidan(); /*调用主菜单函数*/ } } //读取文件函数部分开始模块七 void readfile() { if((fp=fopen("c:\\通讯录.txt","r"))==NULL) /*以只读方式打开判定文件是否为空*/ { printf("\n\t\t\t 通讯录文件不存在"); /*判断结论*/

通讯录管理系统

测试与光电工程学院 课程设计任务书 测控技术与仪器系 100814 班学号 100814415 姓名邓志扬 课题名称:通讯录管理系统的设计 课题要求: 使用C语言设计一个班级通讯录,通迅录数据信息构成内容可自行设计(如:姓名、邮政编码、电话号码等等),通信录数据类型定义为结构体类型或用数组实现。要求实现存取、显示、删除记录、查询记录等功能。 (1)查看功能,选择此功能是列出下列三类选择 A、办公类 B、个人类 C、商务类当选中某类时,显示出此类中所有数据中的姓名和电话号码 (2)增加功能能录入新数据(一个节点包括姓名,电话号码,分类(可选项有:A、办公类,B、个人类,C、商务类)、电子邮件) 例如:杨春商务类 当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入,当通讯录中超过15条信息时,存储空间已满,不能自录入新数据了。 (3)拨号功能能显示出通讯录中所有人的姓名,当选中某个人的姓名时,屏幕中模拟打字机的效果依次显示出此人的电话号码中的各个数字,并伴随相应的拨号声音 (4)修改功能选中某个人的姓名时,可对此人的数据进行相应修改 (5)删除功能选中某个人的姓名时可对此人的相应数据进行删除并自动调整后续条目的编号 课题进程: 1)回顾C语言设计及数据结构设计的相关知识。2周 2)设计基本架构。4周 3)调试、完善、撰写报告。3周 主要参考资料: [1] 谭浩强主编. C语言程序设计(第二版).清华大学出版社, 2005. [2] 谭浩强.C程序设计题解与上机指导(第三版)[M]北京:清华大学出版社,2005年7月 指导教师:付跃文

目录 一、设计目的 (4) 二、设计要求与功能描述 (4) 1.设计要求 (4) 2.功能描述 (5) 三、系统分析与设计 (6) 1、功能模块的设计分析 (6) 2、数据结构设计分析 (9) 3、函数功能描述 (9) 四、系统调试与运行 (11) 五、总结 (18) 六、源程序清单: (19)

联系人管理系统

联系人管理系统设计报告 程珠 200907260203 信管0901 一、实验目地 通过本课程设计,要求熟悉管理信息系统开发的原理,掌握系统分析、系统设计、系统编程与调试等方法。能够完成一个中小型信息系统的规划与分析设计工作,或者能够开发一个小型的管理信息系统,提高分析问题与解决问题的能力。 二、实验内容 1.业务简介 (1)公司联系人 A.公司联系人类型构成:公司联系人类型标识,公司联系人类型 B.公司联系人构成:公司联系人标识,公司联系人名称,地址,出生日期,公司联系 人类型标识 C.查询构成:公司联系人标识,公司联系人类型标识 (2)客户 A 客户构成:客户标识,客户名称,客户地址,客户电话 (3)客户联系人 客户联系人构成:客户联系人标识,客户联系人姓名,客户联系人地址,客户联系人电话 2.系统功能 A 查看和修改公司联系人、客户、客户联系人 B添加和删除公司联系 人、客户、客户联系人 C退出系统 通过联系人管理系统,可以查询和修改公司联系人、客户、客户联系人。添加和删除公司联系人、客户、客户联系人,给企业或学校提供一个良好的人力资源管理环境。 也可以清晰地了解到三者的关系。除了可以查看公司联系人名称,地址,出生日期,公

司联系人类型还可以查看联系人的公司信息和家庭信息,如联系人的上级和下级信息,父母信息等等。以及联系人的毕业信息和在学校、公司的突出表现。方便企业对公司联系人更好的了解和统计。通过客户信息可以查找与公司有业务来往的客户信息。 三、实验过程 1. 系统分析(以公司联系人为例)

ER图 2.系统设计(以公司联系人为例) 模块结构设计 数据库设计

个人通讯录管理系统课程设计报告示例

个人股权转让协议书 转让方: 受让方: ____________________________________ 公司(以下简称合营公司),于______年____月_____日成立,由甲方与________________合资经营,注册资金为_____币_________万元,投资总额_______币_________万元,实际已投资_____币________万元。甲方愿将其占合营公司____ %的股权转让给乙方;经公司董事会通过,并征得他方股东的同意,现甲乙双方协商,就转让股权一事,达成协议如下: 一、股权转让的价格、期限及方式 1、甲方占有公司____%的股权,根据原合营公司合同书规定,甲方应投资____币______万元。现甲方将其占公司____%的股权以____币______万元转让给乙方。 2、乙方应于本协议生效之日起____天内按第一条第一款规定的货币和金额以银行转帐方式分____次付清给甲方。 二、甲方保证对其拟转让给乙方的股权拥有完全、有效的处分权,保证该股权没有质押,并免遭第三人追索,否则应由甲方承担由此引起的一切经济和法律责任。 三、有关公司盈亏(含债权债务)的分担(任选一款)。 1、本协议生效后,乙方按股份比例分享利润和分担风险及亏损(含转让前该股份应享有和分担公司的债权债务)。

2、股权转让前,聘请在中国注册的会计师(或其他方式)对公司进行审计,乙方按双方认可的审计报告表的范围承担甲方应分担的风险、亏损和享有权益。股权转让生效后,若发现属转让前,审计报告表以外的合营公司的债务,由乙方按股权比例代为承担,但应由甲方负责偿还。股权转让生效后,乙方取得股东地位,并按股份比例享有其股东权利和承担义务。 3、股权转让前,聘请在中国注册的会计师(或公司董事会组织)对公司进行审计,甲方按审计报告表的范围承担应分担的风险、亏损和享有权益,甲方应分担的债权债务,应在其股权款中扣除。本协议生效后,尚未清结的以及审计报告以外属甲方应分担的债权债务,均由乙方按股权比例享有和承担(或由乙方先行承担,然后由乙方向甲方追偿)。 四、违约责任 如乙方不能按期支付股权价款,每逾期一天,应支付逾期部分总价款千分之______的逾期违约金。如因违约给甲方造成经济损失,违约金不能补偿的部分,还应支付赔偿金。 五、纠纷的解决(任选一款) 凡因履行本协议所发生的争议,甲乙双方应友好协商解决如协商不成: 1、向_______人民法院起诉; 2、提请仲裁委员会仲裁; 六、有关费用负担

相关主题
文本预览
相关文档 最新文档