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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

完整word版C语言课程设计通讯录.docx

1、完整word版C语言课程设计通讯录C语言程序设计课程设计任务书设计时间:第2周学时周数:每班/周一、设计目的课程设计是C语言程序设计课程教学的最后一个环节,是对学生进行全面的系统的训练,让学生全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数和C语言基本图形编程等方法,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计

2、等学习环节打下较扎实的基础。二、设计内容及要求个人通讯录管理系统 (难度系数)主要内容:该系统实现了对个人通讯录批量录入、浏览、修改、删除、添加和查询功能。具体要求如下:个人通讯录信息包括:姓名、单位、固定电话、移动手机、类别(如同事、朋友、同学、家人)、住址、E-mail,试设计个人通讯录信息管理系统,使之能提供以下功能:系统以菜单方式工作:提供一个字符主菜单使用户可以选择不同的字符来实现系统的各个功能,各个功能实现后又能够返回到主菜单。批量录入功能:在录入的过程中,通过询问用户是否继续录入的方法来录入多个通讯录的信息。浏览功能:按一定的格式显示所有通讯录的信息。修改功能:输入要修改的姓名,

3、先对该姓名进行查询,如果查询成功,则可以根据提示对该通讯录每项信息进行修改,如果查询不成功,则显示相应的提示信息。删除功能:输入要删除的姓名,先对该姓名进行查询,如果查询成功,则删除该通讯录的所有信息,如果查询不成功,则显示相应的提示信息。增加功能:输入要添加的姓名,先对该姓名进行查询,如果查询成功,则提示输入的姓名已存在的信息,并要求能够重新输入,如果查询不成功,则输入该通讯录的其他信息,从而完成一个通讯录信息的录入。查询功能:能够分别按输入的姓名和电话号码查询通讯录的信息,如果查询成功,则按一定的格式显示查询结果,如果查询不成功,则显示相应的提示信息。分类浏览功能:输入要浏览的类别(同事、

4、朋友、同学、家人),按一定的格显示属于该类别的所有通讯录的信息。内容提要个人通讯录管理系统,该系统主要实现了对个人通讯录批量录入、浏览、修改、删除、添加、查询、加密和解密功能。编程软件采用Microdoft Visual C+6.0。所使用的知识点有函数,数组,指针等。一、课程的意义与项目简介简介本系统采用C语言建立通讯录,输入姓名、电话号码、住址等信息,然后对通讯录进行显示、查找、添加、修改及删除。并且通过文本方式对用户所录入的信息进行保存,能够对录入的个人信息进行保存和读取。并且在原要求的基础上,新增了登陆密码,利用system系统函数增加系统时钟,文件的加密和解密功能。意义掌握利用C语言

5、进行程序设计的能力。理解和运用结构化程序设计的思想和方法。初步掌握开发一个小型实用系统的基本方法。学会调试一个较长程序的基本方法。学会利用流程图表示算法。根据题目要求,运用所学知识,完成设计和实现工作。二、需求分析随着计算机的普及,人们的生活摆脱了传统式的记事本、电话簿,越来越多的靠计算机来帮助人们记住这些事情,极其简便。这就需要有一个实用的个人通讯录管理系统,用户可以方便的通过自己电脑的通讯录管理系统,来随时查阅自己所需要的信息,而不必再大费周折去翻开那繁琐的记事本。目标:本软件的目的是为了实现手机通讯录的管理功能,给用户呈现出简单,美观的界面,是用户能够更加容易与快捷的实现自己想要完成的操

6、作。三、功能分析1.系统以菜单方式工作:提供一个字符主菜单使用户可以选择不同的字符来实现系统的各个功能,各个功能实现后又能够返回到主菜单。2.通讯录管理:增加删除联系人,修改联系人数据。3.通讯录查询:可以实现按姓名和电话号码分别查询。4.浏览功能:按一定的格式显示所有通讯录的信息。5.文件加密解密:并且在保存时可以对文件进行加密处理,通过计算秘钥长度,读取文件的每一个字节,异或后写入另一个文件来实现文件的加密功能。异或的特点是原始值经过两次异或某一个数后会变成原来的值,所以有时利用这个特性来进行加密,加密端把数据与一个密钥进行异或操作,生成密文。接收方收到密文后利用加密方提供的密钥进行再次异

7、6.或操作就能得到明文。7.用户管理:密码修改,增加删除用户。8.安全性:系统设置访问用户需要输入密码,才能进入主菜单,保证信息安全。四、设计流程及描述建立13个子函数,分别用来添加、浏览、删除、查询、修改、保存,读取加密,解密通讯录信息,完成通讯录的功能。 主函数采用密码,保护了通讯录数据,可以调用13个子函数,分别完成添加记录、显示记录、删除记录、查询记录、修改记录、保存记录、读取记录、加密文件、解密文件等功能。在主函数中可以以1、2、3、4、5、6、7、8、9、0数字键分别可以执行某个功能模块。创建文件用fopen()建立一个文本文件,然后向其中输入数据(例如,向文件中输入“姓名”,“地

8、址”,“号码”等),并对文件进行命名。添加联系人通过键盘输入通讯录人员的姓名、电话号码、地址信息便可实现将信息添加到通讯录文件内,添加完毕后,系统会自动询问你是否继续添加,如你想继续添加,再通过键盘输入通讯录人员的姓名、电话号码、地址信息即可实现继续添加。显示和查询联系人通过前面第一个模块打得录入我们便可以执行第二个模块,通过第二个模块我们可以进行对联系人进行显示和查找。我通过调用Display ()函数来进行显示所有的联系人,Display ()函数可以实现逐个显示联系人。对于查找联系人我则采用了chick()函数来进行查找联系人,我提供了两种查找方法:按照姓名查找;按照电话号码查找。删除联

9、系人我调用delete ()函数来实现删除功能。 五、软件的流程图由于程序流程图较为复杂,我采用了分块画出程序流程图添加联系人系统流程图显示和查询系统流程图删除联系人系统流程图修改联系人系统流程图六、系统测试及使用说明主页面通过键入程序中的密码来实现登陆通讯录系统。在主函数中设置了密码,而且当密码输入错误三次时,系统会自动退出。添加联系人功能在主菜单下键入“1”,实现开始添加联系人。浏览联系人功能在主菜单页面,通过键入“2”实现浏览所保存的联系人信息。 删除联系人功能在主菜单页面,键入“3”,通过输入要删除的联系人名字来实现删除联系人。 查询联系人功能在主菜单页面,键入“4”,再键入所用查询类

10、型的代号,实现查询联系人。修改联系人功能在主菜单页面,键入“5”,通过键入联系人姓名来修改所有信息。保存联系人功能在主菜单页面,键入“6”,输入文件名称来实现保存联系人。文件加密功能在主菜单页面,键入“8”,输入要加密文件的完整名称(后缀也需要),输入加密密码,再输入加密后文件,程序通过计算秘钥长度,读取文件的每一个字节,异或后写入另一个文件来实现文件的加密功能。文件解密功能在主菜单页面,键入“9”,输入需要解密文件的完整名称,再输入加密密码,输入解密后的文件名,实现解密。程序结束功能测试过程中遇到的问题在最初设计时,定义固定电话、移动手机时使用long tel; long mob;在测试的时

11、候发现当输入11位电话号码的数值总是负值,经检查发现问题long型可以表示的整型数字范围为-2,147,483,648 2,147,483,647, 即-232 232-1,而输入的值超出这个范围,经修改char tel15;char mob15; 能正常显示。七、结论本程序基本达到了任务书上的要求。并且在系统中增加了密码登陆功能、系统时间显示功能、文件加密解密功能。程序特点:主菜单界面美观,操作简单。困难:由于刚开始学习C语言对一些知识理解的还不透彻,还不能应用自如,特别在有些地方编程时需要用到一些课本上没接触过的函数,很难编出我们需要的正确程序,而且不能将各种不同的程序相互联系在一起。编译

12、连接时,时常出现重定义、初始化失败等问题。解决途径:查阅指导书关于C库函数的使用,同学间的交流,网上查询,以及所学的关于函数知识和编程,参照以上的资料,依依解决问题,最终,在多次程序调试中,完成了此次课程设计。不足之处:在主菜单下,当输入选择数字时如果不是0-9,程序就会按输入数字的首位进行运行。设想:在运行窗口进行登陆密码的修改,美化登录界面,添加BGM和音效。八、心得体会在这次实训中,我对对C语言有了一个更深的了解认识,也对这个学期学的知识得到巩固,还尝试运行编程,每次运行程序成功,让我对下面的项目就充满信心。通过自己与同学合作编写程序,最终把最初的理论知识转化基本技能。这次的实训,使我对

13、C语言的学习产生浓厚的兴趣。通过实践,我也发现我的好多不足之处。 首先,对C语言的知识掌握不够,对文件的调用、打开和保存方式比较陌生,通过老师讲解,我基本上掌握了文件的知识;其次,对c语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉。还有对C语言中经常出现的错误也不了解,通过实践,使我在程序修改方面有了一个较大的提高。通过C语言课程设计的学习,我认识到学好计算机知识需要我们不断的实践操作,只有重视实践操作,才能学到最有用的知识。不仅仅是学习C语言,学习其他知识,都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己学到有用的知识。九、附录头文件#include#inclu

14、de#include#includeint unpasswd(); /*函数声明*/int passwd(); /*函数声明*/void encrypt(char *in_filename,char *pwd,char *out_file) ;static int n=0; /*定义静态全局变量,存储已经读入记录的条数。*/typedef struct char name10; /*姓名*/ char unit20; /*工作单位*/ char tel15; /*固定电话*/ char mob15; /*移动手机*/ char typ10; /*类别*/ char adds20; /*住址*/ char email20; /*邮箱*/ Student;Student T100;主函数int main() int flag1; char person20; char ch7; int i,n; printf (tt*个人通讯录管理系统!*nn); printf (ttt用 户 登 录 nn); printf(ttt请输入密码:); for(i=0;i3;i+) for(n=0;n6;n+) chn = getch(); printf(*); printf(n); chn = 0; if(0 = strcmp(ch,123456) pri

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

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