《c++课程设计报告---小游戏“石头剪子布”》_第1页
《c++课程设计报告---小游戏“石头剪子布”》_第2页
《c++课程设计报告---小游戏“石头剪子布”》_第3页
《c++课程设计报告---小游戏“石头剪子布”》_第4页
《c++课程设计报告---小游戏“石头剪子布”》_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

解放军蚌埠坦克学院PLABENGBUTANKINSTITUTEC+课程设计报告题目:石头剪子布 班级: 09计算机 学号: 20093062 姓名: 彭正海 指导教师: 鲁教员 日期: 2010年12月10号 目 录第1章 选题背景 .11.1选题背景.11.2设计题目的要求.11.3选题目的.1第2章 设计思路.22.1系统功能模块图2第3章 主要问题的解决方法及关键技术.33.1游戏功能需求分析33.2游戏功能的关键技术3第4章 程序流程图.4第5章 源程序清单.7第6章 程序运行结果.8第7章 设计总结.11第8章 参考文献12第9章 致谢(附录) 1313第1章 选题背景 1.1选题背景:通过一个学期的C语言课程的学习,C语言程序设计课程已结束,根据学校课程学习的安排,要进行一周的C语言实习,自己动手编写游戏和系统。根据老师布置的设计任务书,按照学委的安排,根据个人的能力及意愿,我选择了设计一个小游戏:石头剪子布。实验准备:做游戏前,首先,自己详细看了C语言程序设计(教科书),理解了相关函数的用法和作用;另外,上网查询了很多相关资料,还有找了很多相关的游戏设计的代码,都详细的看了一遍,加深了对C语言以及相关内容进一步理解。根据实际情况设计出一款比较理想的小游戏。1.2设计题目的要求:游戏要设置开始,结束操作控制游戏要有时间提示即相关结果的提示语游戏要能自动判断输赢,并显示最终比赛结果1.3 选题目的:1使学生掌握C+编程的基本工作原理; 2培养学生基本掌握C+应用编程的基本思路和方法; 3使学生掌握C+应用调试的基本技能;4培养学生分析、解决问题的能力;5提高学生的科技论文写作能力。第2章 设计思路2.1系统功能模块图:输入:计算机随机输入选择,用户输入选择,并将数据储存。计算:根据计算机和用户的选择,计算大小,并判断输赢,计算用户的胜负率,并储存。输出:根据用户的输入,将用户的游戏结果显示在屏幕上。第3章 主要问题的解决方法及关键技术3.1游戏功能需求分析:输入数据:计算机随机输入数据;用户输入合法的数据存储数据:存储计算机的输入数据;存储用户的合法输入数据;判断用户的输赢:根据用户的选择,比较用户与计算机的胜负计算用户的胜负率:根据计算机的记录,计算用户的胜负次数的总和及概率3.2游戏功能的关键技术:熟练掌握并运用C语言源代码;熟练掌握并运用c+中的重要函数;掌握循环的函数的具体运用;能子C环境中运行游戏;第4章 程序流程图 获取计算机的输入 获取用户的合法输入 判断用户的输赢 记录用户的数据机胜负率第5章 源程序清单#include #include #include void main() char r; /* 用来存放用户的选择 */char dn; /* 用来存放电脑的选择 */int s,q; double p,y,n,f,z; p=0; y=0; n=0; printf(出锤子输入cn出剪刀输入jn出布输入bn计算您的得分输入fn可以一次输入许多 会一次性出很多结果哦n请输入您的选择:n); srand(time(0); /* 随机数生成器,设置rand种子值,用来获取计算机的输入 */ enum布,剪刀,石头,结束dn,r;do do s=rand()%3; switch(s) case 0 : dn=c;break; case 1 : dn=j;break; case 2 : dn=b;break; do scanf(%c,&r); /* 用来获取用户的合法输入 */while(r!=c&r!=b&r!=j&r!=f); if(r=f) z=y+n+p; f=100/z*(p/2.0+y); /p 平局 y 赢局 n 输局 z 总共局数printf(一共比了%g场n赢了%g场n输了%g场n平局%g场n,z,y,n,p); y=100/z*y; n=100/z*n; p=100/z*p; printf(您的胜率为%.3g%n您的败率为%.3g%n您平局率为%.3g%n您的综合分数为%.3gn对您成绩的评语:,y,n,p,f); if(f20&f40&f60&f80&f=100) printf(哇!您的运气真的好到家了 你太帅了GG 你太可爱了MM!nn); printf(n随便输入几个字符按回车关闭程序n); scanf(%d,&q); if(dn=r) printf(平手,继续n); p+; else switch(dn) case c : if(r=j) printf(电脑WIN! 锤子:剪刀n);n+; else printf(人WIN! 锤子:布n);y+; break; case j : if(r=b) printf(电脑WIN! 剪刀:布n);n+; else printf(人WIN! 剪刀:锤子n);y+; break; case b : if(r=c) printf(人WIN! 剪刀:锤子n);y+; else printf(电脑WIN! 布:锤子n);n+; break; while(r=dn); while(r=j|r=b|r=c); 第6章 程序运行结果测试: 显示主菜单界面 输入界面 输出界面 结果统计界面 游戏结束界面 第7章 设计总结第8章 此程序设计的实验是对我进入大学以来学习程序设计语言成果的一个检验。自己动手,自己发现和解决问题,学会了独立,自主的思考,发现了自己的许多不足。平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行,解决其中大部分问题,当然还存在一些问题没有解决。我相信在以后的学习能够解决好它们。但是,收获还是不小的。第9章 当我选择编写小游戏“石头剪子布”这个题目时,一开始想运用大量函数及循环来完成,但是在慢慢琢磨之后,觉得这个程序可以简化,于是改变了编程思路。当然还有不少文件的读写问题,不过还是通过不断测试之后顺利解决了。另外一点要说的就是这个程序用了很多的选择循环,因此对于循环的控制要十分小心。第10章 还有一点体会就是,书上和老师教的内容是有限的,我们需要不断地靠自己去学习,向他人请教,学会利用网络等了解知识的平台去学习和掌握更多的知识,这样我们才能编出更好的程序。第11章 总体来说,这次程序设计实验还是比较成功的,虽然最终程序还存在一些不足,但能取得这样的成绩我还是比较高兴的。第12章 参考文献1谭浩强编著c+面向对象程序设计,北京清华大学出版社 20052 谭浩强编著C+程序设计,北京清华大学出版社(教材) 20093百度文库(搜索了一些c+课程设计论文的模板,一些简易的源代码)4百度网页(搜索了一些关于如何制作目录、截图、扩大图片等相关信息)第13章 附录(致谢)非常感谢蚌埠坦克学院开设了c+课程设计这门课,并提供了课程设计这一重要的能提高学生能力的作业,让每个坦院学子都能在辛苦的作业、劳累编程、紧张的时间安排中得到了一个对于个人综合能力的全面提高。此后,编能力会有一个很大的提高,而且还能更好的完成一个系统性的论文。非常感谢我们的c+课程设计鲁教员,能在百忙之中,时不时的监督我们工作日程和定期给予我们帮助当我们遇到难题时。准时开机房,发送相关设计要求,统计学生的出勤率等等工作,都是鲁教员辛勤的劳动,这是保证学生们课程设计按时完成的重要前提条件。虽然

温馨提示

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

最新文档

评论

0/150

提交评论