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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C语言程序设计小组.docx

1、C语言程序设计小组1 Beijing Institute of Petrochemical Technology高级语言(C)课程设计题目: 小型通讯录设计 院(系、部): 信息工程学院 姓 名: 李海霞 (52) 孙 琳 (23) 班 级: 电 112 指导教师签名: 2012 年 7 月 4日北京 一、任务书*2二、小组成员情况*2三、总体设计*2四、模块划分及功能*3五、算法说明*4六、框架图*6七、流程图*8八、源程序清单*12九、程序测试*26十、结论、体会及建议*32十一、附:参考文献资料*33一、任务书题目6:小型通讯录设计功能:实现简单的通讯录信息管理,基本信息包括编号、姓名、

2、手机、邮编、地址、关系、性别、生日、QQ、e-mail.基本要求: 1.设计简单的菜单,能够进行系统功能选择。2实现信息的录入功能。3在已有信息的基础上添加新的记录。4删除指定编号的记录。5复制指定编号的记录6实现信息的浏览功能7按编号查询功能8按手机号排序功能二小组成员情况组长:李海霞 学号:52 负责:文件导出、删除、排序、复制、输出 组员:孙琳 学号:23 负责:主菜单、添加、查询、保存退出另外:主函数,结构体定义,函数声明,文件及实验报告,虽有分工,但是大多数内容是有两人讨论后共同完成的。期间各自编写函数的过程中遇到的问题均由两人共同商讨,以及询问老师后,一起解决的。三、总体设计利用s

3、truct record定义数据结构,用void声明函数,用开关语句switch, case分开事件进行程序,实现系统功能选择,利用if,while语句判断函数,for语句实现循环,利用printf和scanf进行输出与输入,用getch()输入字符串,最终实现通讯录功能。通讯录中的记录项用结构体record表示,包含10个属性:id、name、phone 、address、postcode、e-mail、relation、QQ、sex、birthday分别代表用户的编号、姓名、电话、地址、邮编、e_mail、关系、QQ 、性别、生日。1、结构体数组:struct record 讯录中的记录项

4、用结构体record表示,包含10个属性。2.主菜单:利用switch语句进行选择所需功能;输入“1”会进入“新添记录”的界面;输入“2”进入“输出记录”的界面;输入“3”会进入“查询菜单”的界面;输入“4”进入“删除记录”的界面;输入“5”进入“记录排序”的界面;输入“7”进入“保存退出”的界面;输入“8”进入“不保存退出”的界面。3.添加记录:利用printf()函数和scanf() 函数实现按要求输入信息,再利用if()语句实现是否继续添加记录。4.输出记录:利用for循环和if语句实现全部输出;5.查询菜单:利用switch选择查询方式。在查询菜单中输入“1”进入“按编号查询”界面;输

5、入“2”进入“按姓名查询”界面;输入“3”进入“按电话查询”界面;输入“4”进入“主菜单”界面。6.按编号查询:利用for循环从第一条记录到最后一条记录进行查找,再利用if语句判断要查找的记录和待比较的编号是否相等,如找到相同的记录,就输出此人的全部信息,如果没有找到就显示“没有此人的信息”。7.按姓名查询:利用for循环从第一条记录到最后一条记录进行查找,再利用if语句判断要查找的记录和待比较的姓名是否相等,如找到相同的记录,就输出此人的全部信息,再内嵌一个if语句进行查找相同名字的人的信息,再内嵌一个if语句继续查找,若不继续查找就输出“没有相同姓名的学生纪录按任意键返回主菜单”,如果一开

6、始没有找到就显示“没有此人的信息”。8.按电话号查询:利用for循环从第一条记录到最后一条记录进行查找,再利用if语句判断要查找的记录和待比较的电话号码是否相等,如找到相同的记录,就输出此人的全部信息,如果没有找到就显示“没有此人的信”。9.删除菜单:利用switch语句进行选择所需功能;输入“1”会进入“删除所有”的界面;输入“2”进入“删除单个”的界面;输入“3”会进入“返回主菜单”的界面。10.删除所有:利用if 语句进行是否全部删除。11.删除单个:利用switch语句选择删除方式,输入“1”进入“按电话号码删除”界面;输入“2”进入“按姓名删除”界面。11.按电话号码删除:利用if语

7、句进行判断是否有记录,再利用for循环进行查找信息,如果找到,就显示所有要删除的信息,再利用if语句进行是否删除,内嵌for循环,把记录前移,内嵌if 语句实现是否继续删除。12.按姓名删除:利用if语句进行判断是否有记录,再利用for循环进行查找信息,如果找到,就显示所有要删除的信息,再利用if语句进行是否删除,内嵌for循环,把记录前移,内嵌if 语句实现是否删除相同姓名的同学信息13.利用switch语句实现排序选择,输入“1”会进入“按电话排序的界面;输入“2”进入“按姓名排序”的界面;输入“3”会进入“返回主菜单”的界面。14.按电话号码排序:利用for循环和if语句以及do.whi

8、le实现升序,再利用if语句实现是否显示排序后的信息,调用显示函数。15.按姓名排序排序:利用for循环和if语句以及do.while实现升序,再利用if语句实现是否显示排序后的信息,调用显示函数。六、框架图:七流程图:添加新成员查找search流程图删除delete流程图排序list流程图八、源程序清单#include #include #include d); printf(ntt输入姓名:); scanf(%s,&studentnum.name); printf(ntt输入电话号码:); scanf(%s,&studentnum.phone); printf(ntt输入地址:); sca

9、nf(%s,&studentnum.adress); printf(ntt输入邮编:); scanf(%s,&studentnum.postcode); printf(ntt输入e-mail:); scanf(%s,&studentnum.e_mail);printf(ntt输入QQ:); scanf(%s,&studentnum.QQ);printf(ntt输入性别:);scanf(%s,&studentnum.sex);printf(ntt输入生日:);scanf(%s,&studentnum.birthday);printf(ntt输入关系:); scanf(%s,&studentnum

10、.relation);num+; printf(ntt是否继续添加?(Y/N):); if (getch()=y) newrecord(); return; void showall()d); printf(ntt姓名: %s,studenti.name); printf(ntt电话: %s,studenti.phone); printf(ntt地址: %s,studenti.adress); printf(ntte-mail:%s,studenti.e_mail); printf(nttQQ:%s,studenti.QQ); printf(ntt邮编:%s,studenti.postcode

11、); printf(ntt生日:%s,studenti.birthday); printf(ntt性别:%s,studenti.sex); printf(ntt关系:%s,studenti.relation); printf(tt); if (i+1num) printf(ntt_请按任意键继续); getch(); printf(ntt*); else printf(ntt通讯录中无任何纪录); printf(ntt按任意键返回主菜单:); getch(); return; void searchmenu()d,id)=0) d); printf(ntt姓名: %s,studenti.nam

12、e); printf(ntt电话: %s,studenti.phone); printf(ntt地址: %s,studenti.adress); printf(ntte-mail:%s,studenti.e_mail); printf(nttQQ:%s,studenti.QQ); printf(ntt邮编:%s,studenti.postcode); printf(ntt生日:%s,studenti.birthday); printf(ntt性别:%s,studenti.sex); printf(ntt关系:%s,studenti.relation); printf(ntt*); printf

13、(ntt按任意键返回主菜单:); mark+; getch(); return; if (mark=0) printf(ntt没有此人的信息); printf(ntt按任意键返回主菜单); getch(); return; void searchbyname()ame,name)=0) d); printf(ntt姓名: %s,studenti.name); printf(ntt电话: %s,studenti.phone); printf(ntt地址: %s,studenti.adress); printf(ntte-mail:%s,studenti.e_mail); printf(nttQQ

14、:%s,studenti.QQ); printf(ntt邮编:%s,studenti.postcode); printf(ntt生日:%s,studenti.birthday); printf(ntt性别:%s,studenti.sex); printf(ntt关系:%s,studenti.relation); printf(ntt*); mark+; if (i+1)num) printf(ntt是否继续查找相同名字的人的信息:(y/n); if (getch()=y) a=i; continue; hone,phone)=0) printf(ntt* 以下是您查找的信息 *); print

15、f(ntt学号: %s,studenti.id); printf(ntt姓名: %s,studenti.name); printf(ntt电话: %s,studenti.phone); printf(ntt地址: %s,studenti.adress); printf(ntte-mail:%s,studenti.e_mail); printf(nttQQ:%s,studenti.QQ); printf(ntt邮编:%s,studenti.postcode); printf(ntt生日:%s,studenti.birthday); printf(ntt性别:%s,studenti.sex); p

16、rintf(ntt关系:%s,studenti.relation); printf(ntt*); printf(ntt按任意键返回主菜单:); mark+; getch(); return; if (mark=0) printf(ntt没有此人的信息); printf(ntt按任意键返回主菜单); getch(); return; void deletemenu()hone,phone)=0) printf(ntt以下是您要删除的纪录:); printf(ntt编号: %s,studenti.id); printf(ntt姓名: %s,studenti.name); printf(ntt电话:

17、 %s,studenti.phone); printf(ntt地址: %s,studenti.adress); printf(ntte-mail:%s,studenti.e_mail); printf(nttQQ:%s,studenti.QQ); printf(ntt邮编:%s,studenti.postcode); printf(ntt生日:%s,studenti.birthday); printf(ntt性别:%s,studenti.sex); printf(ntt是否删除?(y/n); if (getch()=y) for (j=i;jnum-1;j+) ame,name)=0) pri

18、ntf(ntt以下是您要删除的学生纪录:); findmark+; printf(ntt_); printf(ntt编号: %s,studenti.id); printf(ntt姓名: %s,studenti.name); printf(ntt电话: %s,studenti.phone); printf(ntt地址: %s,studenti.adress); printf(ntte-mail:%s,studenti.e_mail); printf(nttQQ:%s,studenti.QQ); printf(ntt邮编:%s,studenti.postcode); printf(ntt生日:%s

19、,studenti.birthday); printf(ntt性别:%s,studenti.sex); printf(ntt_); printf(ntt是否删除?(y/n); if (getch()=y) for (j=i;jnum-1;j+) hone,studenti-1.phone)0) tmp=studenti; j=i-1; do studentj+1=studentj; j-; while (strcmp,studentj.phone)=0); studentj+1=tmp; printf(ntt排序成功,是否显示?(y/n); if (getch()=y) showall();

20、return; void listbyname()ame,studenti-1.name)0) tmp=studenti; j=i-1; do studentj+1=studentj; j-; while (strcmp,studentj.name)=0); studentj+1=tmp; printf(ntt排序成功,是否显示?(y/n); if (getch()=y) showall(); return; void copy() char outfile20; d,tempi.name, tempi.phone,tempi.adress,tempi.postcode,tempi.e_mai

21、l,tempi.relation,tempi.QQ,tempi.sex,tempi.birthday); d,tempi.name, tempi.phone,tempi.adress,tempi.postcode,tempi.e_mail,tempi.relation,tempi.QQ,tempi.sex,tempi.birthday ); 菜单界面:2.选择主菜单中“1-新添记录”后的界面:3.选择主菜单中的“2-输出记录”后的界面:4.选择主菜单中的“3-查询菜单”后的界面:5.选择查询菜单中的“1-按编号查询”后的界面:6.选择主菜单中的“4-删除菜单”后的界面:7.选择删除菜单中的“1

22、-删除所有”后的界面:8.选择主菜单中的“5-记录排序”后的界面:9. 选择主菜单中的“6-文件复制”后的界面:10. 选择主菜单中的“7-保存退出”后的界面: 十、结论、体会及建议李海霞:两周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,担任小组长一职,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程”千里之行始于足下”,通过

23、这次课程设计,我深深体会到这句千古名言的真正含义我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础通过这次课程设计,综合运用本专业所学课程的理论和生产实际知识进行一次C语言编程设计工作的实际训练从而培养和提高学生独立工作能力,巩固与扩充了C语言编程设计等课程。在这次设计过程中,体现出C语言编程的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。在此感谢各位老师.,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次

24、C语言设计的每个实验细节和每个数据,都离不开老师的细心指导。由于本人的设计能力有限,在设计过程中难免出现错误,恳请老师们多多指教,我十分乐意接受你们的批评与指正,万分感谢。孙琳:通过这次课程设计更深入的了解到了C语言的功能,也进一步的巩固了C语言的算法及编程。本次课设我负责主体部分,定义变量、函数,设计菜单,还有各种修改、完善程序。从选题到编程,从理论到实践,真的是苦大于甜,将近两个星期的时间,经过我和李海霞同学的努力终于编出了小型通讯录管理系统。当然有好大一部分是老师给出的案例中的,但这次编程真的是受益匪浅。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正的掌握一门技能,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,在各位老师的辛勤指导下,终于游逆而解。附:参考文献资料C程序设计(第四版) 谭浩强 著C程序设计(第四版) 学习辅导 谭浩强 编著教育在线的例题互联网上查阅的相关资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2