您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > C语言实训报告(有源程序)
绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!《C语言程序设计与数据结构》实训报告课题名称:专业:班级:学号:姓名:指导教师:2008年12月25日绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!目录1课程设计目的…………………………………………………12课程设计题目…………………………………………………13课程设计报告内容……………………………………………14结论……………………………………………………………105结束语…………………………………………………………116参考书目………………………………………………………117附录:(源程序清单)…………………………………………12绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!考核、评价项目考核内容得分实训评价实训的平时考核(30分)出勤情况、实训态度、效率、协作精神。知识掌握情况、基本操作技能、知识应用能力、获取知识能力系统整体功能设计(10分)对通讯信录管理系统的功能设计完整、全面文件的设计(5分)文件设计合理,有可扩展性。登陆模块的设计(5分)能够实现用户登陆,并作出合理的安全设计,无登陆漏洞。添加记录模块设计(5分)能够正确添加记录并保存到文件中删除记录模块设计(5分)能够正确删除记录并修改文件中的数据修改记录模块设计(5分)能够正确地完成记录修改并保存数据查找记录模块设计(5分)能够按照要求查找到满足条件的记录显示记录模块设计(5分)能够正确的将数据全部显示系统功能全部实现(5分)系统整体效果、包括的模块的数量及每个模块具体的实现功能。是否完成前面设计的全部功能实训文档(20分)表达能力、文档写作能力、文档的规范性合计教师评语:成绩:教师:年月日实训报告绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-1-一、课程设计题目《商场销售管理管理系统》二、实训目的(1)掌握结构化程序设计的基本方法,基本掌握面向对象程序设计的基本思路和方法。(2)掌握C++的基本概念和基础知识。(3)通过训练能够读懂较为复杂的C++语言源程序并具备基本C++语言程序设计的能力。(4)熟练掌握各种常用类的定义,继承,文件的应用,为更好的理解面向对象打下更好的基础。(5)通过实训,培养自己编写、调试、分析大型应用程序的能力。(6)掌握面向对象的基本原理,提高学生综合程序设计的能力。(7)培养自己独立解决问题,查找资料的能力。同学之间相互帮助,相互交流,相互合作的团队精神。(8)培养自己良好的学习兴趣,独立的编程风格。(9)通过实训检查自己学习上的不足,达到熟练掌握C++语言的基本知识和技能。三、课程设计报告内容3.1功能要求该系统运行在DOS环境下,人机界面为命令行文本界面。完成的任务是对若干人的通信录信息进行管理,且数据保存到文件中。实现的主要功能是:登陆:判断用户输入的密码正确性,并限制用户只能有三次机会输入,若超过则关闭计算机。添加:增加一个或几个人的通信录信息。删除:删除已输入的通信录信息。查询:根据输入的姓名查找通信录信息。修改:根据输入的姓名修改通信录信息。显示:输出所有通信录信息。3.2设计环境所使用的语言采用标准C,开发工具可选用在DOS环境下的TurboC或Win-TC,也可在Windows环境下的C++Builder。绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-2-3.3数据结构本系统是对通信录的信息进行管理,通信录记录的信息采用C的结构体数据类型描述,定义如下:structren/*定义个人资料结构体类型*/{intnum;/*编号*/charname[10];/*姓名*/chartel[12];/*电话号码*/charemail[20];/*email地址*/charqq[12];/*QQ*/charaddress[50];/*住址*/};3.4实现方法及主要算法分析(1)口令设计模块:调用strcmp函数判断输入是否与密码正确。getch()读入一个字符不回显在屏幕上,不用回车结束。getchar()将字符输入到缓冲区直到输入回车才返回给系统。调用system(shutdown-s)关闭计算机。(2)主界面的设计:主界面采用文本菜单的形式,各功能调用通过菜单进行选择。采用循环处理,以便执行完某项处理后,仍可选择其他项处理。在循环内先显示提示信息,然后读取用户输入,使用switch语句对用户的输入进行判断,分别调用相应的模块,当某模块结束后再次回到文本菜单,直到用户选择结束程序菜单,才退出循环,从而退出系统。(3)外部文件的类型:文件采用的二进制的文件,对文件的读写采用顺序文件的方式,并使用fread和fwrite等函数对文件进行操作。(4)清屏函数:一般由上一级菜单屏幕进入下一级菜单屏幕或由下一级菜单屏幕返回上一级菜单屏幕都需要清除屏幕原来显示的内容。同时在调用程序的过程中,记录需要清屏的位置,然后修改代码,加入clrscr()函数清屏。(5)提示信息:一般的输入与输出需有相应的提示信息,以增加用户的交互性,增加输出的可读性,以帮助用户使用程序。(6)设置颜色:textbackground()、textcolor()函数设置背景和前景颜色(7)光标定位:gotoxy(列,行);光标定位实训报告绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-3-3.5模块设计根据功能要求,本系统为五大主要模块,具体模块如表所示。表通讯录管理管理系统的模块main()主控函数add()增加个人资料del()删除个人资料edit()修改个人资料search()查找个人资料主函数display()浏览所有信息login()限制登陆口令pause()等待'Y'、'y'、'n'、‘Y’键输入pause2()等待任意键输入load_rec()统计记录数search_name()按姓名查找个人资料search_qq()按QQ查找个人资料search_email()按EMAIL查找个人资料绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-4-3.6处理流程(1)口令设计模块开始设置背景和前景颜色提示输入密码输入密码密码正确?输入次数超过3次提示关闭计算机结束提示输入正确实训报告绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-5-(2)通讯录主界面模块清屏显示菜单输入选项至select增加记录删除记录修改记录显示所有记录查找记录结束开始绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-6-(3)增加记录模块(4)显示记录模块清屏输入通信录数据打开数据文件移动指针到文件尾部将所输出数据写到文件关闭文件是否继续清屏打开数据文件将所有记录读入到数组ren中关闭文件显示ren中所有记录返回开始函数开始函数返回提示输入实训报告绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-7-(5)删除记录清屏提示输入姓名输入姓名打开数据文件将所有记录读入到数组ren中关闭文件在数组ren中搜索姓名相同的字段查找到?显示该记录删除?删除该记录打开数据文件将所有记录读入到数组ren中关闭文件返回开始函数绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-8-(6)修改记录清屏提示输入姓名输入姓名打开数据文件将所有记录读入到数组ren中关闭文件在数组ren中搜索姓名相同的字段查找到?显示该记录修改?修改该记录打开数据文件将所有记录读入到数组ren中关闭文件返回开始函数实训报告绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-9-绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-10-开始函数清屏显示菜单输入选项至按姓名查找按QQ查找按Email查找返回开始函数开始函数开始函数清屏清屏清屏提示输入姓名提示输入QQ输入姓名输入Email输入QQ打开数据文件打开数据文件打开数据文件将所有记录读入到数组ren中将所有记录读入到数组ren中将所有记录读入到数组ren中关闭文件在数组ren中搜索姓名相同的字段并显示关闭文件在数组ren中搜索QQ相同的字段并显示关闭文件在数组ren中搜索Email相同的字段并显示返回返回返回提示输入Email(7)查找主模块(8)按姓名查找,按QQ查找,按EMAIL查找模块实训报告绝大多数人,开始了一次在家门口享受体育盛会的人生体验。而我们的志愿者却开始了一段崭新的跋涉,许许多多个日子在积淀,许许多多份努力在累加,为了这个盛大的时刻,每一个人都在心中奋力的呐喊:亚运,我们准备好了!-11-四、结论通信录管理系统的编写,看似杂乱无头绪,实际上却并不如此。它的每一个功能都能分成模块,有句话说的好,大事化小,小事化了。C语言编程也正式如此,把一个大的程序分为若干相互独立的模块,这样使完成每一个模块的工作变得单纯而明确,这样不仅降低了难度还使得思路清晰,很容易编写出要做的程序,从而为设计一些较大的软件打下了良好的基础。分析问题:通讯录管理的整体功能都包括登陆限制、增加成员、删除成员、查看成员、修改成员、登陆口令五大板块,而查看有包括姓名查看,电话查看,QQ查看,E-mail查看四个模块。(1)设计的数据对象包括整形:编号。字符型:姓名、电话、E-mail、QQ、地址。(2)数据结构线性数据结构,定义人数上限为100.算法的设计:(1)自顶向下现有全局,在进行整体设计,然后再进行下层的设计,逐步实现精细化。采用这种方法能够做到胸有全局,能全盘考虑,不至于顾此失彼,头重脚轻。(2)逐步细化一步步地将上层的任务分解成较小的、易于实现的任务,知道可以很简单实现为止。编写源程序:(1)不求速度,但求质量!一步一个脚印,编写程序时候宁可速度慢些也要尽量保证质量,做到尽量不出错。(2)精力集中,全神贯注!
本文标题:C语言实训报告(有源程序)
链接地址:https://www.777doc.com/doc-6206705 .html