1 / 11
文档名称:

通讯录管理系统c 源代码.doc

格式:doc   大小:44KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

通讯录管理系统c 源代码.doc

上传人:mkjafow 2020/5/19 文件大小:44 KB

下载得到文件列表

通讯录管理系统c 源代码.doc

相关文档

文档介绍

文档介绍:课程设计报告学院、系:吉林大学珠海学院计算机科学与技术系专业名称:计算机科学与技术课程设计科目VC++程序课程设计学生姓名:毛乾宇指导教师:关键完成时间:2011年10月-18月题目通讯录管理系统设计任务与目标通讯录管理系统编写一个简单的通讯录管理程序。通讯录记录有姓名,地址(省、市(县)、街道),电话号码,邮政编码等四项。基本要求程序应提供的基本基本管理功能有:添加:即增加一个人的记录到通信录中显示:即在屏幕上显示所有通信录中的人员信息,应能分屏显示。存储:即将通讯录信息保存在一个文件中。装入:即将文件中的信息读入程序。查询:可根据姓名查找某人的相关信息,若找到显示其姓名、地址、电话号码和邮政编码。修改:可修改一个人的除姓名外其它信息。测试数据程序应输入不少于10个人员的通讯录信息,应考虑到人员可以同名的情况。二、方案设计与论证1、为存储通讯录信息,需定义一个结构体类型,成员包括编号、姓名、年龄、电话、通讯地址、电子邮箱等,并建立链表,定义该结构体类型的指针,用于指向各结点;2、分别建立具有添加、删除、修改、查询等功能的子函数,完成相应功能,对程序实现模块化。这其中要用到对链表的删除、插入等知识。删除时用一结构体指针指向链表的第一个结点,检查该节点的值是否等于输入的要删除的学号,若相等就删除,不相等则后移指针,直至表尾。插入时也要先找到相应结点,再添加。查询功能要设置姓名、编号、地址等多种方式。3、为实现存储功能,需用到文件的相关函数,打开文件,将添加、修改或删除的信息存入磁盘中。4、为以表格的形式输出文件,宏定义格式化输出语句,用横线和竖线构成表格。三、程序框图或流程图,程序清单与调用关系系统总体设计框架:对程序进行模块化,建立添加、修改、删除、查找和显示功能的子函数,各子函数中运用链表存储数据。从主函数开始执行,调用各个子函数,并运用文件相关知识将信息存入磁盘中。系统功能模块图:创建通讯录通讯录管理通讯录查询添加信息修改记录删除记录显示记录按姓名查询按编号查询按地址查询将信息存入文件全部源程序清单#include<iostream>#include<string>#include<fstream>#include<iomanip>usingnamespacestd;structStudent{stringnum;//学号stringname;//姓名intage;chartel;charaddr;charemal;Student*next;};longiCount=0;Student*head=NULL;Student*pEnd=NULL;voidLoadRecords(char*path)//从文本里面读取记录{fstreaminfile(path,ios::in);if(!infile){}else{  infile>>iCount;  intt=iCount;  if(iCount!=0)  {   for(;iCount>0;iCount--)    {     Student*p=newStudent;     infile>>p->num>>p->name>>p->Maths;     if(head==NULL)     {      head=p;pEnd=p;pEnd->next=NULL;     }     else     {      pEnd->next=p;      pEnd=pEnd->next;      pEnd->next=NULL;     }    }  }  iCount=t;}();}voidPrint(Student*h)//打印记录{if(h==NULL){  cout<<"\n****************************************\n\n";  cout<<"没有学生记录!\n";  cout<<"\n****************************************\n";  return;}cout<<"\n********************************************************************************\n\n";cout<<"所有的学生:\n\n";cout<<"------------------------------------------\n";cout<<"|"<<setw(10)<<"学号"  <<"|"<<setw(10)<<"姓名"  <<"|"<<setw(10)<<"年龄"<<"|"<<setw(10)<<"电话""|"<<<<setw(10)<<"地址"<<"|"<<setw(10)<<"邮箱"<<"   |\n"