个人通讯录管理系统课程研究与设计开发报告Word格式.docx

上传人:b****6 文档编号:18991009 上传时间:2023-01-02 格式:DOCX 页数:14 大小:181.64KB
下载 相关 举报
个人通讯录管理系统课程研究与设计开发报告Word格式.docx_第1页
第1页 / 共14页
个人通讯录管理系统课程研究与设计开发报告Word格式.docx_第2页
第2页 / 共14页
个人通讯录管理系统课程研究与设计开发报告Word格式.docx_第3页
第3页 / 共14页
个人通讯录管理系统课程研究与设计开发报告Word格式.docx_第4页
第4页 / 共14页
个人通讯录管理系统课程研究与设计开发报告Word格式.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

个人通讯录管理系统课程研究与设计开发报告Word格式.docx

《个人通讯录管理系统课程研究与设计开发报告Word格式.docx》由会员分享,可在线阅读,更多相关《个人通讯录管理系统课程研究与设计开发报告Word格式.docx(14页珍藏版)》请在冰豆网上搜索。

个人通讯录管理系统课程研究与设计开发报告Word格式.docx

voidAdd()。

/*添加记录*/

voidprint()。

/*输出记录*/

voidFind()。

/*查找记录(按姓名)*/

voidDelete()。

/*删除记录*/

voidSaveFree()。

/*保存到文件*/

voidCreat()。

/*打开文件*/

四、程序源代码

#include<

stdio.h>

string.h>

stdlib.h>

structlist

{

charname[20]。

charaddr[20]。

charnum[20]。

charqq[10]。

charphnum[20]。

charemail[30]。

structlist*next。

}。

typedefstructlistLIST。

LIST*head=NULL。

voidmain()

charc。

Creat()。

while

(1)

{

menu()。

/*显示菜单*/

scanf("

%c"

&

c)。

switch(c)

case'

1'

:

Add()。

break。

2'

print()。

break。

/*输出条目*/

3'

Find()。

/*查找条目1.按姓名*/

4'

Delete()。

/*删除信息*/

print()。

/*输出删除后的结果*/

0'

SaveFree()。

/*保存并释放内存*/

exit(0)。

/*退出*/

default:

printf("

选择错误!

"

)。

}

}

/*菜单*/

voidmenu()

\n*****************通讯录系统*********************\n"

***********\t1.添加记录*******************\n"

***********\t2.输出记录*******************\n"

***********\t3.查询记录*****************\n"

***********\t4.删除记录*******************\n"

***********\t0.保存并退出!

****************\n"

************************************************\n"

\t请选择将要进行的操作:

\n"

/*添加记录*/

voidAdd()

LIST*p1=NULL,*p2=NULL。

p1=(LIST*)malloc(sizeof(LIST))。

/*申请结点*/

输入姓名:

/*添加信息*/

%s"

p1->

name)。

输入地址:

addr)。

输入学号:

num)。

请输入qq号:

qq)。

输入电话:

phnum)。

请输入email:

email)。

p1->

next=NULL。

/*保存到链表*/

if(head==NULL)

head=(LIST*)malloc(sizeof(LIST))。

/*申请空间*/

head->

next=p1。

else

for(p2=head。

p2->

next!

=NULL。

p2=p2->

next)。

/*找到结点尾*/

p2->

此记录已添加!

/*输出学生信息*/

voidprint()

LIST*p=NULL。

这是一个新记录,请添加记录\n"

return。

**************通讯录系统*********************\n"

/*输出信息*/

姓名\t\t地址\t学号\t\tqq\t\t电话\t\temail\n"

for(p=head->

next。

p!

p=p->

next)

%s\t\t%s\t%s\t%s\t%s\t%s\n"

p->

name,p->

addr,p->

num,p->

qq,p->

phnum,p->

/*查找信息1.按姓名、2、按学号*/

voidFind()

LIST*p。

charname1[20],num1[20]。

inti。

请输入查找方式1、按姓名;

2、按学号"

%d"

i)。

if(i==1)

{

请输入要查找的姓名:

name1)。

姓名\t\t地址\t学号\tqq\t电话\t\temail\n"

if(strcmp(p->

name,name1)==0)

}

elseif(i==2)

请输入要查找人的学号:

num1)。

姓名\t\t地址\t学号\tqq\t电话\temail\n"

next)

num,num1)==0)

else

请选择1和2两哥数字\n"

}

/*删除信息*/

voidDelete()

charname1[20]。

/*先查找后删除*/

LIST*p=head->

next,*pr=head->

请输入要删除的姓名:

%s"

if(head->

next==NULL)

无此节点!

while((strcmp(p->

name,name1)!

=0)&

&

p->

next!

=NULL)

pr=p。

p=p->

if(strcmp(name1,p->

name)==0)/*输出删除信息*/

next->

addr,

if(p==head->

next=p->

pr->

free(p)。

此记录已删除!

/*保存链表信息到文件并释放内存空间*/

voidSaveFree()

FILE*fp。

char*Book="

list.txt"

\n记录为空!

p=head->

if((fp=fopen(Book,"

wb+"

))==NULL)

\n打不开文件!

while(p!

=NULL)/*保存信息*/

fwrite(p,sizeof(LIST),1,fp)。

p=p->

保存完毕!

fclose(fp)。

/*****释放链表空间*****/

for(。

head->

next=head->

free(head)。

/*文件信息输出到链表*/

voidCreat()

LIST*p1=NULL,*p2=NULL,*temp=NULL。

if((fp=fopen("

addresslist.txt"

"

rb+"

\n****************这是一个新的通讯录管理系统******************\n"

temp=p2=head。

while(!

feof(fp))/*循环读取*/

temp=p2。

p2=p1。

fread(p1,sizeof(LIST),1,fp)。

temp->

/*关闭文件*/

五、程序运行结果测试

六、结论与心得

通过为期一周的课程设计,我们对《C语言》这门课程有了更深一步的了解。

它是计算机程序设计的重要理论技术基础,在我们信息与计算科学专业的学习中占据着十分重要的地位。

同时也使我们知道,要学好这门课程,仅学习书本上的知识是不够的,还要有较强的实践能力。

因为我们学习知识就是为了实践。

而只有多实践,多编写程序,才能更好的理解与掌握书本上的东西。

运用《C语言》中的算法思想作数据结构,结合C语言基本知识,编写一个通讯录管理系统。

通过完成本课题,进一步熟悉C语言的基本知识,并掌握数据结构的一些基本算法思想,掌握C语言的文件操作(包括从磁盘读入和向磁盘写入内容),进一步熟悉指针的用法,数组的建立运用和函数的调用等

吴道金:

文本排版及构图

林家勇:

程序程序运行测试

林东垚:

程序分析

上官景铨:

程序注释

七、致谢

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 育儿知识

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1