ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:423.02KB ,
资源ID:22515998      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22515998.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据结构通讯录管理系统课程设计报告Word格式文档下载.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据结构通讯录管理系统课程设计报告Word格式文档下载.docx

1、工作计划及安排: 4小时 复习相关的课程设计所需的内容,提出要求、提供选题并检索资料、确定设计项目 8小时 数据类型定义、确定存储结构、算法设计 10小时 算法实现 4小 时 编写课程设计报告指导教师签字 年 月 日 课程设计(大作业)成绩学号:201211010214 姓名:* 指导教师:SSSSS总结:这个课题是设计一个通讯录系统,该通讯系统能够较好的管理好我们的通讯录记录,也拥有比较完善的功能,但是该系统依旧有漏洞,此程序必须按照系统提示的操作来执行,不然的话就会使程序进入死循环,比如,如果我输入字符串的长度过长的话,程序就会终止运行了,并且还没有提示;后面的删除模块所用的方法是用空格替

2、代,虽然可以删除,但达不到理想的效果。在编写过程中,我逐步的了解了程序模块化设计的思想含义。在整个程序设计的过程中语法的错误还是比较容易检查的,但是对于那些逻辑思维的问题方面的缺陷不易查出,因此常常出现系统提示没有错误但是仍然不能够正常运行的境况,尽管有很多不足之处,但我在整个系统程序设计的过程中,我可以感受到自己对C语言有了一定的掌握,对整体的把握度也提高了很多。此外编程是一项高精度的工作,所以我们要有规范化,标准化的代码编写习惯,良好的编写习惯,不但有助于代码的纠错,也有助于不同人员之间的协作。 我们还要有模块化思维能力,模块化思维就是编程任何一个功能模块或函数的时候,要多想一些,不要局限

3、在完成当前任务的简单思路上,想想看该模块是否可以脱离这个系统存在,是否可以通过简单的修改参数的方式在其他系统和应用环境下直接引用,这样就能极大的避免重复性的工作。另外我们要重视程序的算法,在程序中,算法是灵魂,我们要努力学习各种先进的算法,提高自己的编程能力。指导教师评语:成绩:填表时间: 指导教师签名:一、数据结构及算法描述1. 数据类型定义2. 说明主要变量含义3. 说明数据输入的要求和格式-即输入数据的类型、值的范围及输入的形式4. 输出数据的类型、值的范围及输出的形式5. 确定存储结构6. 编写算法并实现二、程序测试并运行通过1. 测试与分析、记录调试过程及结果1 添加通讯录记录显示通

4、讯录记录2 按姓名方式查找按电话方式查找插入通讯录记录按姓名方式排序删除通讯录记录按记录保存文件2. 出现的问题、解决的方法、最终运行结果三、源程序#include stdio.h#include stdlib.hstring.hconio.h#define null 0struct recordchar name20;char phone20;char adress40;char postcode10;char e_mail30;student500;struct LinkList struct record US; struct LinkList *next;a; struct LinkL

5、ist *head=null;int num=0;FILE *fp;int menu_select();int adduser();int list();int search();int display();int add();int listbyname();int dele();int save();int exit();void main() system(cls); for(;) switch(menu_select() case 0:adduser();break; case 1:list(); case 2:search(); case 3:display(); case 4:ad

6、d(); case 5:listbyname(); case 6:dele(); case 7:save(); case 8:exit(0); menu_select() char s80; int a;color 2f printf(*_* press any key enter menu! *_* n getch();t*MENU*nt* | 0. 添加通讯录记录 | *nt* | 1. 显示通讯录记录 | *nt* | 2. 按姓名方式查找 | *nt* | 3. 按电话方式查找 | *nt* | 4. 插入通讯录记录 | *nt* | 5. 按姓名方式排序 | *nt* | 6. 删除

7、通讯录记录 | *nt* | 7. 按记录保存文件 | *nt* | 8. Quit | *nt*n don Enter you choice(08): scanf(%s,s); a=atoi(s); while (a8); return a;adduser()ntt* 请输入用户信息 *nntt输入姓名:,&studentnum.name);ntt输入电话号码:studentnum.phone);ntt输入地址:studentnum.adress);ntt输入邮编:studentnum.postcode);ntt输入e-mail:studentnum.e_mail); num+;ntt是否继

8、续添加?(Y/N):if (getch()=y adduser();return(0); list() int i; if(num!=0)ntt* 以下为通讯录所有信息* for (i=0;inum;i+) ntt姓名: %s,studenti.name);ntt电话:,studenti.phone);ntt地址:,studenti.adress);ntt邮编:,studenti.postcode);ntte-mail:,studenti.e_mail);tt if (i+1num)ntt_pausentt* elsentt通讯录中无任何纪录ntt按任意键返回主菜单: return(0);se

9、arch() int mark=0; int a=0;ntt* 按姓名查找 * char name20;ntt请输入姓名:,name); for(i=a; if (strcmp(studenti.name,name)=0)ntt* 以下是您查找的用户信息 * mark+; if (i+1)ntt是否继续查找相同名字的用户信息:(y/n) if (getch()= a=i; continue;ntt按任意键返回主菜单 if(mark!ntt没有相同姓名的用户纪录display()int mark=0;int i;int a=0;printf(ntt* 按电话查找 *char phone10;nt

10、t请输入电话号码:scanf(,phone);for(i=0; if (strcmp(studenti.phone,phone)=0)ntt* 以下是您查找的用户信息 *if (mark=0)ntt没有改用户的信息add() if (fp=fopen(student.bin,wb)=NULL)ntt文件打开失败 if (fwrite(&studenti,sizeof(struct record),1,fp)!=1)ntt写入文件错误!n fclose(fp);ntt通讯录文件已保存ntt按任意键退出程序ntt exit(0);void deletebyphone()int i,j;int de

11、letemark=0;ntt请输入要删除用户电话号码: if(num=0)ntt对不起,文件中无任何纪录 return; if (strcmp(studenti.phone,phone)=NULL)ntt以下是您要删除的用户纪录:ntt是否删除? for (j=i;jnum-1;j+) studentj=studentj+1; num-; deletemark+;ntt删除成功ntt是否继续删除? deletebyphone(); if (deletemark=0)ntt没有该用户的纪录void deletebyname()int findmark=0;int j;ntt请输入要删除用户姓名:

12、for (i=a; if (strcmp(studenti.name,name)=NULL) findmark+;ntt_j+) if(i+1)ntt是否继续删除相同姓名的用户信息? deletebyname();elsecontinue;if (deletemark=0)&(findmark=0)else if (findmark!ntt没有重名信息dele()char choic;ntt1-按电话号码删除 2-按姓名删除ntt请选择: choic=getch();switch (choic) case 1:deletebyphone();2deletebyname();listbyname

13、() int i,j; struct record tmp; for (i=1; if(strcmp(studenti.name,studenti-1.name)0) tmp=studenti; j=i-1; do studentj+1=studentj; j-; while (strcmp(tmp.name,studentj.name)=0); studentj+1=tmp;ntt排序成功,是否显示? list();save() int j; FILE*fp; fp=fopen(student.txtw if (fp=NULL)cant open the file. for(j=0; fwrite(student,sizeof(student),1,fp);保存成功! 四、参考文献 选择是难,更何况是心灵选择。高渐离为了荆轲,他选择了死;马本斋母亲为了革命,她选择了牺牲;祝英台为了真挚爱情,她选择了化蝶。在这友情、亲情与爱情之间选择,他们是这样做

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

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