C语言程序课程设计--游戏玩家管理系统.doc_第1页
C语言程序课程设计--游戏玩家管理系统.doc_第2页
C语言程序课程设计--游戏玩家管理系统.doc_第3页
C语言程序课程设计--游戏玩家管理系统.doc_第4页
C语言程序课程设计--游戏玩家管理系统.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南涉外经济学院课程设计报告课程名称: C语言课程设计 报告题目: 游戏玩家管理系统 学生姓名: *爱若烟花* 所在学院: 信息科学与工程学院 专业班级: 电科12* 学生学号: *爱若烟花* 指导教师: 菁菁姐 2013年06月21日C语言程序设计课程设计任务书报告题目游戏玩家管理系统完成时间6.17-6.21学生姓名*专业班级电科1指导教师*职称讲师设计目的1、熟练掌握C语言课程中所学的理论知识;2、通过综合C语言的基本知识来解决实际问题;3、加强分析和解决问题的能力。4、提升对C语言问题的综合分析能力。 设计内容游戏玩家管理包括玩家用户名、真实姓名、注册时间、门派、点数。系统功能包括:1、 系统初始化。系统运行时,用数组元素初始化或文件读入的方法把预先设置好的游戏玩家信息列表载入系统中。2、 系统以菜单方式工作,管理员用密码登陆。3、 游戏玩家的录入(增加数据)。通过操作界面可以增加新的游戏玩家。4、 游戏玩家的浏览(查找数据)。任意输入一个玩家用户名,显示符合条件的游戏玩家。要求能多次查找。5、 游戏玩家的删除(删除数据)。任意输入一个玩家用户名,将该游戏玩家从系统中删除。6、 游戏玩家的修改(修改数据)。任意输入一个游戏玩家,显示相关信息后,可对该游戏玩家进行修改并保存。7、 游戏玩家的统计和排序。统计所有游戏玩家的总点数,并按点数逆序显示游戏玩家清单。设计步骤1、需求分析:对系统的应实现的功能进行分析。2、概要设计:对系统功能进行模块分解,对模块的功能及模块之间的相互关系进行说明(如用到函数,则对函数间的接口进行说明),对系统使用的数据结构(各数组、主要变量的设置及其代表的含义)进行说明。3、详细设计:用流程图、伪代码等方法对各主要算法进行描述。4、编写代码:根据设计编写。源程序要按照程序的格式规范来编写,要求结构清晰,界面友好,关键部分有必要的注释。5、调试分析:准备充分的测试数据对系统进行调试(对错误的数据输入也要进行测试,保证程序的容错性),并通过测试对系统提出改进设想工作内容及时间进度安排周1:需求分析、小组分工周2-周4 :设计、实现及测试周5 :验收答辩课程设计成果1与设计内容对应的软件程序2课程设计总结报告摘 要 随着Internet和计算机网络的普及,网络以经走进千家万户,人们的生活越来越离不开网络。学习,工作闲暇之余可以通过网络来放松自己,也正因为如此,网络游戏占据了我们生活的很大部分比重。同时,对于我们大学所学专业是网络工程编程者而言,熟练的掌握编写网络游戏的程序是很重要的。依托互联网,世界各地的人们可以同时互动娱乐。而正因如此,所以在后台对用户的管理是必不可少的。 通过游戏玩家管理系统可以让用户更好的了解游戏,进入游戏,享受游戏。同时也更好的方便管理员更好的管理用户,给用户玩家送去最好的的愉悦感。关键词:计算机网络;网络游戏;管理系统;Visual C+5目 录一、概述1二、需求分析2三、系统设计3四、游戏管理模块详细设计与实现4五、结论与心得5六、参考文献6七、附录7 一、概述 随着IT产业的告诉发展,信息技术正以其强大的渗透力渗透到人们的生活,而网络游戏也正是此飞速发展信息时代的产物。网络游戏在社会经济、人们生活中占据着很大的比重,所以一款合适的游戏管理系统是很重要的,且在我们大学生的学习生活中,游戏也是我们所熟悉的,同时对于练习C语言也有很大的好处。成员*分工5、6、7部分1、2、部分3、4部分完成情况完成完成完成在王菁老师的指导和同学们的帮助下,我们小组所选的课题终于在21日之前圆满完成,其中虽然还有很大的不足之处,但还是对自己一年的大学学习c语言这门课程的结果交上了一份合格的答卷。二、需求分析1系统初始化初始化系统,管理员执行系统操作,进入游戏登录界面。2系统以菜单方式工作,管理员用密码登陆管理员输入预设的管理员密码,登录成功后进行菜单选择,执行操作。3 游戏玩家的录入(增加数据)管理员输入玩家的数据信息,增加玩家的数据。4 游戏玩家的浏览(查找数据)输入一个玩家的名称,查找玩家的信息,与真实的数据进行核对,有无对错。5游戏玩家的删除(删除数据)删除错误的玩家数据,和外挂玩家的所得物品,经验等,使其返回到正常状态。3、 系统设计1系统模块一、系统初始化模块模块: 系统运行时,用数组元素初始化或文件读入的方法把预先设置好的游戏玩家信息列表载入系统中。二、系统以菜单方式工作,管理员用密码登陆模块: 管理员进行登录操作。三、游戏玩家的录入(增加数据)模块: 通过操作界面可以增加新的游戏玩家。四、游戏玩家的浏览(查找数据)模块: 任意输入一个玩家用户名,显示符合条件的游戏玩家。要求能多次查找。5、 游戏玩家的删除(删除数据)模块: 任意输入一个玩家用户名,将该游戏玩家从系统中删除。六、游戏玩家的修改(修改数据)模块: 任意输入一个游戏玩家,显示相关信息后,可对该游戏玩家进行修改并保存。7、 戏玩家游戏玩家的统计和排序模块: 统计所有游戏玩家的总点数,并按点数逆序显示游清单。2总流程图登陆密码正确否退出录入玩家数据数据正常修改数据浏览玩家数据YYN3技术路线本程序采用C程序设计教程中的选择结构程序设计、循环结构程序设计、数组、函数调用以及Visual C+ 2005数据库开发及程序经典设计中的案例综合以C语言编写而成。采用Visual C+中的C软件编写。本程序借鉴了Baidu文库中的一些案例,四、详细设计我负责的是程序的前1、2部分,分别是系统初始化、系统以菜单方式工作,管理员用密码登陆、游戏玩家的录入(增加数据),流程图严格按照设计初的思路来完成。其中数组元素初始化技术的实现我请教了大二的刘明学长,其它的是在自己查阅资料等之后完成。其中密码部分采用循环结构设计的思路,其中我负责的部分程序如下: #include #include #include typedef struct char number12; /用户名char name20;/姓名char time12; /注册时间char school20; /门派int renaining; /点数 GAME; GAME player100; int I=0; void password();/管理员登陆 void input();/游戏玩家录入 void through();/查找 void del();/删除 void alter();/修改 void statistics();/统计,排序 void deduct();/点数充值,扣除 void browse();/浏览全部玩家 void main()while(1)password();void password()/管理员登陆int l,m=3;char pass7=123456,p7,a;printf(*请输入管理员密码(只有三次机会):*n);for(l=0;l6;l+)pl=getch(); putchar(*);pl=0;doif(strcmp(pass,p)=0)printf(n);printf(*1、游戏玩家的录入。 *n);printf(*2、游戏玩家的查找。 *n);printf(*3、游戏玩家的删除。 *n);printf(*4、游戏玩家的修改。 *n);printf(*5、游戏玩家的统计和排序。*n);printf(*6、点数充值和点数扣除。 *n);printf(*7、浏览所有玩家。 *n);printf(*8、退出程序。 *n);printf(*请按键选择:t);scanf(%1s,&a);五、结论与心得 通过这次课程设计我清晰的明白只有学好课程,才能对各种难题得心应手的解决,才能心中不慌不忙,同时我明白要学好C语言是不容易的,只有将书本与实践结合其来,多加操作实验,做程序。 同时,课程设计是培养学生综合运用所学知识、发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程.随着科学技术发展的日新月异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握程序开发技术是十分重要的,而C语言又是最常见,功能最强大的一种高级语言,因此做好C语言课程设计是十分必要的。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体,数组通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。 通过这次C语言课程实践程序编写以及论文的写作,我不仅加深了对C语言理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。六、参考文献1 谭浩强.C语言程序设计M.北京:清华大学出版社,20122 龚沛曾编著.VisualBasic6.0程序设计教程02年第三版(高等教育出版社). 3 萨师煊、王珊编著.数据库系统概论02年第二版(高等教育出版社)4 赵文静。数据结构与算法M.北京:科学出版社5 王敬华,林萍,.陈静.C语言程序设计M.北京:清华大学出版社14教师评语及设计成绩教师评语:课程设计成绩: 指导教师: (签名) 日期: 年 月 日附录基于C语言的游戏玩家管理信息系统源程序代码: #include #include #include typedef struct char number12;/用户名char name20;/姓名char time12;/注册时间char school20;/门派int renaining;/点数 GAME; GAME player100; int I=0; void password();/管理员登陆 void input();/游戏玩家录入 void through();/查找 void del();/删除 void alter();/修改 void statistics();/统计,排序 void deduct();/点数充值,扣除 void browse();/浏览全部玩家 void main()while(1)password();void password()/管理员登陆int l,m=3;char pass7=123456,p7,a;printf(*请输入管理员密码(只有三次机会):*n);for(l=0;l6;l+)pl=getch(); putchar(*);pl=0;doif(strcmp(pass,p)=0)printf(n);printf(*1、游戏玩家的录入。 *n);printf(*2、游戏玩家的查找。 *n);printf(*3、游戏玩家的删除。 *n);printf(*4、游戏玩家的修改。 *n);printf(*5、游戏玩家的统计和排序。*n);printf(*6、点数充值和点数扣除。 *n);printf(*7、浏览所有玩家。 *n);printf(*8、退出程序。 *n);printf(*请按键选择:t);scanf(%1s,&a);switch(a)case 1:input();break;case 2:through();break;case 3:del();break;case 4:alter();break;case 5:statistics();break;case 6:deduct();break;case 7:browse();break;case 8: printf(*谢谢使用,再见!*n);exit(0);default :printf(*无该选项,请重新输入。*n); break;else if(strcmp(pass,p)!=0)m-; printf(n*密码错误,请重新输入(还有%d次机会):*n,m);for(l=0;l6;l+)pl=getch(); putchar(*);pl=0;if(m=1)printf(n*密码错误三次,请重新打开程序!*n);exit(0);while(1); void input()/游戏玩家录入char t;doprintf(*请输入游戏玩家信息。*n);printf(*请输入用户名:t);scanf(%s,playerI.number);printf(*请输入姓名:t);scanf(%s,playerI.name);printf(*请输入注册时间:t);scanf(%s,playerI.time);printf(*请输入门派:t);scanf(%s,playerI.school);printf(*请输入点数:t);scanf(%d,&playerI.renaining);I+;printf(*录入成功!*n);printf(*继续请按Y,否则请按任意键。t);scanf(%1s,&t); while(t=y|t=Y);printf(*反回主菜单!*n); void through()/查找int j,k;char ch20,t;doprintf(*请输入要查找的用户名:n);scanf(%s,&ch);for(j=0,k=1;jI;j+)if(strcmp(ch,playerj.number)=0)printf(用户名为:%s,姓名为:%s,注册时间为:%s,门派为:%s,点数为:%dn,playerj.number,,playerj.time,playerj.school,playerj.renaining);k=0;break;if(k)printf(*没有找到对应的信息,反回主菜单。*n);break;printf(*是否继续,继续请按y,否则请按任意键:t);scanf(%1s,&t); while(t=y|t=Y);printf(*反回主菜单!*n); void del()/删除int i,j,k;char ch20,t;dok=1;printf(*请输入要删除的用户名:n);scanf(%s,&ch);for(j=0;jI;j+)if(strcmp(ch,playerj.number)=0) k=0; break; if(k) printf(*没有找到对应的用户名,反回主菜单。*n);break; for(i=j+1;iI;i+)playerj=playeri;printf(*删除成功!*n);printf(*继续删除是请按y,否则请按任意键:t);scanf(%1s,&t);I-;while(t=y|t=Y);printf(*反回主菜单!*n);void alter()/修改char ch20,k,t;int j,n=1;doprintf(*请输入要修改的用户名:t);scanf(%s,&ch);for(j=0;jI;j+)if(strcmp(ch,playerj.number)=0)n=0;N1: printf(*请输入要修改的项目:n);printf(*1、姓名。*n);printf(*2、注册时间。*n);printf(*3、门派。*n);scanf(%1s,&k);switch(k)case 1: printf(*输入要修改姓名:t); scanf(%s,); break;case 2: printf(*输入要修改注册时间:t); scanf(%s,playerj.time); break;case 3: printf(*输入要修改门派:t); scanf(%s,playerj.school); break;default :printf(*无此选项,请重新输入。*n); goto N1; if(n)printf(*没有找到对应的用户,反回主菜单!*n);break;printf(*修改成功!继续修改是请按y,否则请按任意键:t);scanf(%1s,&t);while(t=y|t=Y);printf(*反回主菜单!*n);void statistics()/统计,排序int i=0,j,k,b,n=0;char ch20;while(iI) n+=playeri.renaining;i+;printf(*所有游戏玩家的点数有%d。*n,n);for(j=0;jI-1;j+)for(k=0;kplayerk+1.renaining)strcpy(ch,playerk.number);strcpy(playerk.number,playerk+1.number);strcpy(playerk+1.number,ch);strcpy(ch,);strcpy(,playerk+1.name);strcpy(playerk+1.name,ch);strcpy(ch,playerk.time);strcpy(playerk.time,playerk+1.time);strcpy(playerk+1.time,ch);strcpy(ch,playerk.school);strcpy(playerk.school,playerk+1.school);strcpy(playerk+1.school,ch);b=playerk.renaining;playerk.renaining=playerk+1.renaining;playerk+1.renaining=b;printf(*排序后为:*n);for(j=0;jI;j+)printf(用户名为:%s,姓名为:%s,注册时间为:%s,门派为:%s,点数为:%dn,playerj.number,player

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论