整理个人通讯录管理系统课程设计报告.docx

上传人:b****8 文档编号:10659169 上传时间:2023-02-22 格式:DOCX 页数:41 大小:221.30KB
下载 相关 举报
整理个人通讯录管理系统课程设计报告.docx_第1页
第1页 / 共41页
整理个人通讯录管理系统课程设计报告.docx_第2页
第2页 / 共41页
整理个人通讯录管理系统课程设计报告.docx_第3页
第3页 / 共41页
整理个人通讯录管理系统课程设计报告.docx_第4页
第4页 / 共41页
整理个人通讯录管理系统课程设计报告.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

整理个人通讯录管理系统课程设计报告.docx

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

整理个人通讯录管理系统课程设计报告.docx

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

C语言程序设计

课程设计报告

 

个人通讯录管理系统设计

 

专业__网络工程________班级___(3)班___________

学号__3148119322姓名__吴道金_

学号_3148119319_姓名_林东垚___

学号_3148119359_姓名__林家勇__

学号__3149119349__________姓名___上官景铨___________

 

福建工程学院软件学院

2015年月日

(正文部分)

一、需求分析

建立一通讯录,输入姓名、电话号码、住址等信息,然后对通信簿进行显示、查找、添加、修改及删除。

功能要求

(1)通讯录的每一条信息包括姓名、单位、固定电话、移动手机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ等。

(2)输入功能:

可以一次完成若干条信息的输入。

(3)显示功能:

完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示)

(4)查找功能:

可以按姓名等多种方式查找通讯信息

(5)增加、删除、修改功能:

完成通讯录信息的多种更新

二、总体设计

 

 

 

三、详细设计

voidmenu();/*菜单*/

voidAdd();/*添加记录*/

voidprint();/*输出记录*/

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

voidDelete();/*删除记录*/

voidSaveFree();/*保存到文件*/

voidCreat();/*打开文件*/

 

四、程序源代码

#include

#include

#include

structlist

{

charname[20];

charaddr[20];

charnum[20];

charqq[10];

charphnum[20];

charemail[30];

structlist*next;

};

typedefstructlistLIST;

LIST*head=NULL;

voidmenu();/*菜单*/

voidAdd();/*添加记录*/

voidprint();/*输出记录*/

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

voidDelete();/*删除记录*/

voidSaveFree();/*保存到文件*/

voidCreat();/*打开文件*/

voidmain()

{

charc;

Creat();/*打开文件*/

while

(1)

{

menu();/*显示菜单*/

scanf("%c",&c);

switch(c)

{

case'1':

Add();break;/*添加记录*/

case'2':

print();break;/*输出条目*/

case'3':

Find();break;/*查找条目1.按姓名*/

case'4':

Delete();/*删除信息*/

print();break;/*输出删除后的结果*/

case'0':

SaveFree();/*保存并释放内存*/

exit(0);/*退出*/

break;

default:

printf("选择错误!

");

break;

}

}

}

/*菜单*/

voidmenu()

{

printf("\n*****************通讯录系统*********************\n");

printf("***********\t1.添加记录*******************\n");

printf("***********\t2.输出记录*******************\n");

printf("***********\t3.查询记录*****************\n");

printf("***********\t4.删除记录*******************\n");

printf("***********\t0.保存并退出!

****************\n");

printf("************************************************\n");

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

\n");

}

/*添加记录*/

voidAdd()

{

LIST*p1=NULL,*p2=NULL;

p1=(LIST*)malloc(sizeof(LIST));/*申请结点*/

printf("输入姓名:

\n");/*添加信息*/

scanf("%s",p1->name);

printf("输入地址:

\n");

scanf("%s",p1->addr);

printf("输入学号:

\n");

scanf("%s",p1->num);

printf("请输入qq号:

\n");

scanf("%s",p1->qq);

printf("输入电话:

\n");

scanf("%s",p1->phnum);

printf("请输入email:

\n");

scanf("%s",p1->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->next=p1;

}

printf("此记录已添加!

");

}

/*输出学生信息*/

voidprint()

{

LIST*p=NULL;

if(head==NULL)

{

printf("这是一个新记录,请添加记录\n");

return;

}

printf("**************通讯录系统*********************\n");/*输出信息*/

printf("姓名\t\t地址\t学号\t\tqq\t\t电话\t\temail\n");

for(p=head->next;p!

=NULL;p=p->next)

printf("%s\t\t%s\t%s\t%s\t%s\t%s\n",p->name,p->addr,p->num,p->qq,p->phnum,p->email);

}

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

voidFind()

{

LIST*p;

charname1[20],num1[20];

inti;

printf("请输入查找方式1、按姓名;2、按学号");

scanf("%d",&i);

if(i==1)

{

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

\n");

scanf("%s",name1);

printf("**************通讯录系统*********************\n");

printf("姓名\t\t地址\t学号\tqq\t电话\t\temail\n");

for(p=head->next;p!

=NULL;p=p->next)

{

if(strcmp(p->name,name1)==0)

printf("%s\t\t%s\t%s\t%s\t%s\t%s\n",p->name,p->addr,p->num,p->qq,p->phnum,p->email);

}

}

elseif(i==2)

{

printf("请输入要查找人的学号:

\n");

scanf("%s",num1);

printf("**************通讯录系统*********************\n");

printf("姓名\t\t地址\t学号\tqq\t电话\temail\n");

for(p=head->next;p!

=NULL;p=p->next)

{

if(strcmp(p->num,num1)==0)

printf("%s\t\t%s\t%s\t%s\t%s\t%s\n",p->name,p->addr,p->num,p->qq,p->phnum,p->email);

}

}

else

printf("请选择1和2两哥数字\n");

}

/*删除信息*/

voidDelete()

{

charname1[20];/*先查找后删除*/

LIST*p=head->next,*pr=head->next;

printf("请输入要删除的姓名:

\n");

scanf("%s",name1);

if(head->next==NULL)

{

printf("无此节点!

\n");

return;

}

while((strcmp(p->name,name1)!

=0)&&p->next!

=NULL)

{

pr=p;

p=p->next;

}

if(strcmp(name1,p->name)==0)/*输出删除信息*/

{

printf("%s\t\t%s\t%s\t%s\t%s\t%s\n",p->next->name,p->next->addr,

p->next->num,p->next->qq,p->next->phnum,p->next->email);

if(p==head->next)

head->next=p->next;

else

pr->next=p->next;

free(p);

}

printf("此记录已删除!

");

}

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

voidSaveFree()

{

LIST*p=NULL;

FILE*fp;

char*Book="list.txt";

if(head==NULL)

{

printf("\n记录为空!

\n");

return;

}

else

p=head->next;

if((fp=fopen(Book,"wb+"))==NULL)

{

printf("\n打不开文件!

\n");

return;

}

while(p!

=NULL)/*保存信息*/

{

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

p=p->next;

}

printf("保存完毕!

");

fclose(fp);

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

for(;head->next!

=NULL;)

{

p=head->next;

head->next=head->next->next;

free(p);

}

free(head);

}

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

voidCreat()

{

FILE*fp;

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

if((fp=fopen("addresslist.txt","rb+"))==NULL)

{

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

return;

}

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

head->next=NULL;

temp=p2=head;

while(!

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

{

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

temp=p2;

p2->next=p1;

p2=p1;

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

}

temp->next=NULL;

fclose(fp);/*关闭文件*/

}

 

五、程序运行结果测试

 

 

 

 

 

 

六、结论与心得

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

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

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

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

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

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

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

吴道金:

文本排版及构图

林家勇:

程序程序运行测试

林东垚:

程序分析

上官景铨:

程序注释

 

这本被一个叫“慧”的女孩珍藏十多年的书,是“我”相当熟悉和喜欢的,因为一个偶然的机会,成了“我”枕边的读本,给“我”带来了许多美好的感13.受。

以此来凸现阅读的愉悦和充实,从而表现“邂逅”的,来表现阅读内容的丰富)或多方面的呈现(以精练的语言,的语言来表现阅读环境的优美)或生动(以形象14.美丽。

)因对“慧”弃书原因的猜测,产生忧虑(遗憾、惋惜)的感情。

2()因对“慧”爱书形象的猜想,产生了欣赏(喜爱、赞美)的感情;1(15.,静心读书。

)希望人们能爱书(珍惜书)1(16.)希望人们能守住自己的精神家园,通过读书来提升个人的思想境界和修养。

2()希望我们的社会形成全民读书的良好风气,以振兴我们的国家和民族。

3()分(13题。

17-21阅读下面的文章,完成文后第)四(湖北黄石:

葱青青小白的雪,青的葱,红红的是她的小手。

她总是这么静静地站着,低着头,眼睛朝下看,扎两条小辫,穿一身红底儿蓝花的棉袄棉裤,一双黑布棉鞋羞涩地卧在白雪中,脸蛋儿红红的,那双小手也是红红的。

看不到那双眼,那眼睛一定很美,很清澈?

?

白白的雪轻轻地盖在小街和屋顶上,只有那小葱是青青的。

说不清从什么时候起,这个小集市上有了她。

她的小葱总是那么嫩,那么青,像她自己一样。

她从不吆喝,从不抬价。

换了别人,这样好的葱,一定会“几毛几“几斤几两”“要多少”放声叫好,定会编出许多诸如“小葱拌豆腐——一青(清)二白”等诱人的词句。

她极少说话。

说,也是奶声奶气的几个字:

只有她说话的时候,才偶尔看对方一眼。

啊,这眼睛真美!

它不光清澈,还蕴涵着一丝忧伤,但忧伤中分明显露出善良和期望。

分”小镇上的人都吃她的小葱。

没有人跟她讨价还价,连老太太都如此。

姑娘太小,那双手太小。

她是集市上的小妹妹,大家都爱护她。

菜主们对镇上的人“我的葱不如小妹妹的,买她的吧。

镇子上哪来恁好的葱?

”没有人一个子买好多的葱。

大家都知道,她的小葱天天有,一年四季都不断,价格也好,便说:

宜。

啊,天真冷。

她把两只小手放在嘴边,用热气哈一哈,然后,给一位大姐姐称葱,帮大姐姐放在篮子里。

她依然不说话,朝下看。

地上的雪真白,只是没有太阳,要不,它会耀眼的。

”大姐姐把钱递给她。

她轻轻地摇摇头。

“小妹妹,给你钱。

左胸那枚“吉阳镇中学”的校徽上,声音有些激动,“大姐姐,俺?

?

”她抬起头来,目光在大姐姐的脸上扫了一下,迅速落在“为啥?

”大姐姐一怔。

”“俺娘说,等过两年,弟弟初中毕业了,就让俺继续上学。

也带着几分憧憬。

“?

?

””说着,她迅速地从菜篓底下取出两个用塑料“大姐姐,俺不要钱。

俺知道你是老师,常来买葱,俺想求你帮俺看看这个。

这是俺看弟弟的书做的作业。

ZXXK]学科网:

来源[袋包着的小本子,递给女老师。

子,一下子惊呆了,本子上工工整整写着初中作业。

她不知说什么才好。

女老师接过本“小妹妹,多大啦,你是哪村的?

”“俺今年十五啦,住杏树湾。

俺还有一个弟弟、一个妹妹,弟弟正上初中呢。

”“爹娘呢?

””天黑路滑,跌到沟里腿断了,不能动了,娘在家服侍爹,还管园子。

爹好的时候,俺也上学哩!

“爹病了。

两年前,爹从城里卖菜回去老师嘴唇动了几下,想说什么,但没有说出来,只是眼圈发红、发潮,她一下子将小妹妹搂在怀里,紧紧地握住那两只小手。

冰凉的小手,她想把它女暖热,永远地热下去。

“好妹妹,你来我班里上学吧?

”“不?

?

俺不上。

俺还要卖菜呢,俺上了,弟弟就上不成了。

俺娘说?

?

”女老师把小妹妹搂得更紧了。

太阳出来了,那雪更白了,那葱更青了。

两年后,小妹妹考上了县师范。

临走时,她给女老师送去一篮子小葱。

那葱洗得真干净,扎得整整齐齐。

多嫩的小葱呀!

她俩没有说话,都哭了?

?

啊,小葱青青?

?

)分?

(2“小葱”在文章中多次出现,请简要说说它在刻画人物和结构上的作用本文人物形象鲜明,结构浑然一体。

17.刻画人物上:

结构上:

(3.作者在描写人物时非常注重写人物的眼睛,阅读文中划线句子“看不到那双眼,那眼睛一定很美、很清澈?

?

”结合文意,谈谈你对这句话的理解。

18)分)分(2请摘录原句回答。

?

你能试着找出两处吗文章已有多处铺垫。

其实在她向女教师讲述前,例如关于小妹妹辍学的事,善于铺垫,这篇小说构思精巧,19..小说倒数第三段说:

“两年后,小20)分(3妹妹考上了县师范。

”请你根据上下文,简单说说这两年间发生了哪些事。

.这篇小说展示了自然景物美、人物心灵美、社会环境美,富有艺术感染力,读完全文,令人回味思索。

作品结尾的省略号包含了作者丰富的思想感情,21分)3(请你结合全文说说其中有哪些内容。

(三)2分,共1(每点,结构上:

小说的线索。

、刻画人物:

衬托人物(是小妹妹形象的化身)17分)、眼睛是心灵的窗户,眼睛很美,很清澈,其实说的是心灵美好纯真:

做买卖诚信,辍学承担家务,期盼早日上学。

18)她的小葱总是那么嫩,那么青,像她自己一样。

1(、19)姑娘太小,那双手太小。

2()它不光清澈,还带着一丝忧伤,但忧伤中分明显露出善良和期盼。

3()她抬起头,目光在大姐姐的脸上扫视了一下,迅速地落在左胸那枚“吉阳镇中学”的校徽上,声音有些激动,也带有几多憧憬。

4()她依然不说话,朝下看。

5(分,答出任意两句得满分)1分,每点2(共小妹妹边承担家庭重担边学习,女教师热情无偿辅导,弟弟毕业。

、答案提示:

应准确全面把握相关内容,突出重点,应包含如下方面内容20)对小妹妹纯真善良心灵和不懈追求精神的赞美;1(、21)对小妹妹心愿终于实现的喜悦;2()“对女教师奉献爱心的赞颂”亦可,因为女教师是社会环境的代表。

(。

)对充满阳光的社会环境的期望(欣慰)3(分)1分,每点3(共湖北荆州分)散文阅读(12五、荡里莲花]学科网:

来源[当马家荡千亩莲塘倏然跃入眼帘时,那一刻洋溢于心底的喜悦,只化作低低的倾诉:

原来你在这里!

莲塘的上面,天,蔚蓝的,像刚出水的芙蓉,清新怡人。

偶尔一两只小鸟,在这蔚蓝的天空下,扑腾着翅膀,随风而去。

我站立的地方,是一弯碧水萦绕的莲塘,莲塘很宽,水面上布满了荷叶,举目望去,绿浪一层一层的直向对岸压去,诗人笔下“接天莲叶无穷碧”的壮观画面,此时就在我的眼前慢慢展开。

莲叶似少女打着皱摺的裙裾,在微风中轻轻摇曳;又似一柄柄张开的绿伞,在艳阳下欢快地舞蹈。

莲叶上的晨露,似顽皮的孩子在打着滚儿。

而点缀在这万顷碧涛之上的朵朵白莲花,便是这大片风景画中当仁不让的主角了。

这洁白如玉,大如团扇的莲花纤尘不染,大汤匙般的花瓣三片一层,一朵莲花一般由四层花瓣错落有致组合而成。

被花瓣层层包围的莲心羞答答不肯露面,流苏般的黄色花蕊众星捧月般将她呵护,这嫩黄的莲蓬等到花瓣凋零时,便会披上深绿色的外衣脱颖而出,吟唱属于她的主题曲等侯前来收获的主人。

凑上前去,莲花的香气让我顿觉神清气爽,暑气尽消。

这清新中带着淡淡药香的气味,不张扬,不媚惑,让人遐想,令人沉静。

最妙的要数那些即将盛开的莲花了,一枝枝从绿伞之中挺身而出,像一支支花剑直指长空,对着这神秘的大地凝望。

这些花苞的表层如少女,娇面含春,呈现一派羞色。

微风过处,到处是芳香弥漫。

白色的莲花掩映于莲叶之间,粉红的朵儿,则探着脑袋,露于莲叶之外。

无数洁白粉红的花儿朵儿,在水面上漫卷开来,像晚霞,像云彩,像少女那一抹不经意飘起的红晕。

掐一茎莲叶,茎儿竟丝丝缕缕牵扯着不愿分开。

不由得联想起莲藕,不也是人们常说的藕断丝连么?

莲真的恍若一位美丽多情的绝世佳人,是那么的重、莲茎、莲藕的气味都那么的相似。

兴起,淡的甘甜。

莲茎笔直,中有通孔,将莲上下相连。

难怪莲叶情重意。

轻嗅,莲叶和花茎都有着淡淡的香味,还有淡将硕大的莲叶挑一枝扣在头上,顿觉一片清凉,绿意弥漫眼底心间。

]学科网:

来源[?

你不愿我在莲的身旁驻足留连,轻轻的靠近一朵刚探出头的花蕾,柔柔地告诉她:

在你最美丽的时候,我来看你了,你眼中的我,也是同样的美丽吗做肤浅的美人,植根于淤泥,却摒弃一切尘念,借清水滋养得一身净骨,头顶烈日骄阳傲然盛开。

你通身是宝,将一生无私地奉献给了人类。

莲心、莲房、莲须、莲叶、莲梗、莲花、莲藕、藕节都有极高的药用价值,莲子和莲藕更是餐桌上备受欢迎的美味佳肴。

页39第

二、给孩子刚刚洗完澡,怀抱婴儿面带微笑的母亲:

三、在海滩上筑起了一座沙堡的顽童,望着自己的劳动成果。

备选的答案是:

写完了小说最后一个字的作家。

不是什么人闲来无事,编造出来博人一笑的恶作?

⒊消息入眼,我的第一个反应仿佛被人在眼皮上涂了辣椒油,然而十分怀疑它的真实性。

这可能吗还有几分惶惑和恼怒,在心扉最深处,是震惊和不知所措。

?

剧吧是的是的,我都明白,可心!

再说,这正是大多数人对幸福的理解,不是别有用心或是哗众取宠啊?

⒋也许有人说,我没看出这消息有什么不对头的啊中还是惶惶不安。

当我静下心来,细细梳理思绪,才明白自己当时的反应,是一种深入骨髓的悲哀。

原来我是一个幸福盲。

说来惭愧,答案中的四种情况,在某种程度上,我都一定程度地拥有了。

我是一个母亲,给婴儿洗澡的事几乎是早年间每日的必修。

我曾?

⒌为什么呢是一名医生,手起刀落,给很多病人做过手术,目送着治愈了的病人走出医院的大门的情形,也经历过无数次了。

儿时调皮,虽然没在海滩上筑过繁复的沙贝?

之类的工程,肯定是经手过了。

另外,在看到上述消息的时候,我,但在附近建筑工地的沙堆上挖个洞穴藏个?

宝)这大概和那个国家四面环水有关(堡已发表过几篇作品,因此那个在备选答案中占据一席之地的?

作家完成最后一字?

之感,也有幸体验过了。

⒍我集这几种公众认为幸福的状态于一身,可我不曾感到幸福,这真是莫名其妙而又痛彻的事情。

我发觉自己出了问题,不是小问题,是大问题。

这个问题如果不解决,我所有的努力和奋斗,犹如沙上建塔。

从最乐观的角度来说,即使是对别人

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

当前位置:首页 > 求职职场 > 简历

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

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