通信录管理系、夏佳兴10组

通信录管理系、夏佳兴10组

ID:18335396

大小:115.50 KB

页数:13页

时间:2018-09-16

通信录管理系、夏佳兴10组_第1页
通信录管理系、夏佳兴10组_第2页
通信录管理系、夏佳兴10组_第3页
通信录管理系、夏佳兴10组_第4页
通信录管理系、夏佳兴10组_第5页
资源描述:

《通信录管理系、夏佳兴10组》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、西安欧亚学院《C语言程序设计实验》实验报告项目名称:用VC++实现的通讯录管理系统专业班级:统本土木1104项目成员:夏佳星(组长)张再万吕柯金安王成指导老师:姚向荣完成时间:2012/5/22欧亚学院一、实验目的和要求1.1功能需求分析简易通信录管理系统主要有4大模块:联系人信息从文件中读入和写出,联系人信息的添加和删除,联系人信息的查询和联系人信息的显示。1.11通信录的读入和写出模块主要功能是读出要管理的通信录文档,保存修改后的通信录文档。实际生活中通信录的文件主要以word或excel保存,为了方便操作我在调式本系统中成绩文件采用了txt的文档格式保存,当然以word文档形式保存也是可

2、以的。1.12通信录的添加和删除模块主要功能是输入、添加、删除人员信息的操作。添加操作是根据用户的要求实现的。例如用户可以输入要删除人员的姓名删除人员的信息。此程序输入人员信息时就保存到数据结构中相应的变量中。1.13通信录的查询模块主要功能是按照用户的要求查询人员的信息。其中用户可以选择查询单独或特定一组联系人的信息,还可以修改联系人的信息。1.14通信录的显示模块此项功能运用使得用户可以浏览所有联系人的信息。1.2环境需求分析开发软件:VisualC++6.01.3方法需求分析由于数组存放数据的时候要先确定数组的规模,不能动态的分配内存空间,而单链表是非连续存放的,可以对内存空间进行动态分

3、配,此系统是用单链表完成的。然后定义链表的结点类型为结构就可以实现对联系人姓名和电话的保存。每次只要返回头指针,就可以对整个链表进行操作,因此选链表来存放学生信息。2概要设计2.1系统功能模块图示欧亚学院2.2设计思想通信录管理系统是用面向对象的方法设计,由于数组的存放是连续的,而单链表是非连续存放的,是动态分配内存空间,因此此系统采用单链表来完成。各个功能模块的实现主要转变到对单链表的遍历,添加和删除结点。3详细设计3.1设计原理通信录管理系统以菜单选择,通过调用各个函数,对单链表的遍历,实现不同的功能,不同函数处理后返回的只是一个头结点,但是通过头结点可以找到所有链表中的信息,只要有函数,

4、找到头指针就能进行相应的操作,所以模块化的程序方便以后添加或者删除某些功能,程序中通过system(“cls”)清屏函数实现界面的转换,主函数中的循环保证程序不会退出,一个循环和一个清屏函数实现了主菜单和各子画面的切换(子函数)。这样的话各个子函数都可以调用一开始输入的数据,这样就实现了各个不同函数调用时都能使用整个系统连续起来了。作为一个通信录管理系统,增加了文件的读入和写出功能,增加了程序的实用性。#include"stdio.h"#include"string.h"#include"stdlib.h"#include"conio.h"#definePT"序号:%s姓名:%s性别:%s手机

5、号:%sQQ:%s生日:%s",p->num,p->name,p->sex,p->phone,p->QQ,p->birthday#defineNsizeof(structstud)structstud{charnum[10];charname[15];charsex[15];charphone[15];charQQ[15];charbirthday[15];structstud*next;};structstud*creat(void){structstud*p1,*p2,*head;inti=1;charchoice;head=p2=(structstud*)malloc(N);prin

6、tf("★**************************************************************★");printf("★*******************欢迎使用通讯录管理系统*****************★");printf("★**************************************************************★");printf("");printf("");printf("▲输入信息时请以空格间隔输入,一组通讯信息输入完后请按回车键结束▲");prin

7、tf("※请输入序号姓名性别手机号QQ生日※");head->next=NULL;choice='y';for(i=1;choice=='y'

8、

9、choice=='Y';i++){p1=(structstud*)malloc(N);scanf("%s%s%s%s%s%s",p1->num,p1->name,p1->sex,p1->phone,p1->QQ,p1->birthday);p2->n

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。