《c++课程设计报告小游戏石头剪子布》.docx
- 文档编号:5314946
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:15
- 大小:144.54KB
《c++课程设计报告小游戏石头剪子布》.docx
《《c++课程设计报告小游戏石头剪子布》.docx》由会员分享,可在线阅读,更多相关《《c++课程设计报告小游戏石头剪子布》.docx(15页珍藏版)》请在冰点文库上搜索。
《c++课程设计报告小游戏石头剪子布》
解放军蚌埠坦克学院
PLABENGBUTANKInstitute
《C++课程设计》报告
题目:
石头剪子布
班级:
09计算机
学号:
********
*******
*******
日期:
2010年12月10号
第1章选题背景…………………………………………………………………..1
1.1选题背景………………………………………………………………...1
1.2设计题目的要求………………………………………………………...1
1.3选题目的………………………………………………………………...1
第2章设计思路……………………………………………………………………..2
2.1系统功能模块图…………………………………………………………2
第3章主要问题的解决方法及关键技术…………………………………………...3
3.1游戏功能需求分析………………………………………………………3
3.2游戏功能的关键技术……………………………………………………3
第4章程序流程图…………………………………………………………………..4
第5章源程序清单…………………………………………………………………..7
第6章程序运行结果………………………………………………………………..8
第7章设计总结………………………………………………………………….....11
第8章参考文献……………………………………………………………………12
第9章致谢(附录)………………………………………………………………13
第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章程序流程图
1获取计算机的输入
2获取用户的合法输入
3判断用户的输赢
4记录用户的数据机胜负率
第5章源程序清单
#include
#include
#include
voidmain()
{
charr;/*用来存放用户的选择*/
chardn;/*用来存放电脑的选择*/
ints,q;
doublep,y,n,f,z;
p=0;
y=0;
n=0;
printf("出锤子输入c\n出剪刀输入j\n出布输入b\n计算您的得分输入f\n可以一次输入许多会一次性出很多结果哦\n请输入您的选择:
\n");
srand(time(0));/*随机数生成器,设置rand种子值,用来获取计算机的输入*/
//enum{布,剪刀,石头,结束}dn,r;
do{
do{
s=rand()%3;
switch(s)
{
case0:
dn='c';break;
case1:
dn='j';break;
case2:
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您的综合分数为%.3g\n对您成绩的评语:
",y,n,p,f);
if(f<=20)
printf("您的运气真的差到一定无法想象的程度了~!
\n\n");
if(f>20&&f<=40)
printf("您的运气差了点哦,努力,加油!
\n\n");
if(f>40&&f<=60)
printf("您的运气还可以中等啦~中等啦……\n\n");
if(f>60&&f<=80)
printf("您的运气不错哟~!
嘿嘿……\n\n");
if(f>80&&f<=100)
printf("哇~!
~!
~您的运气真的好到家了你太帅了GG你太可爱了MM~!
!
~\n\n");
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章程序运行结果
测试:
1显示主菜单界面
2输入界面
3输出界面
4结果统计界面
5游戏结束界面
第7章设计总结
第8章此程序设计的实验是对我进入大学以来学习程序设计语言成果的一个检验。
自己动手,自己发现和解决问题,学会了独立,自主的思考,发现了自己的许多不足。
平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行,解决其中大部分问题,当然还存在一些问题没有解决。
我相信在以后的学习能够解决好它们。
但是,收获还是不小的。
第9章当我选择编写小游戏“石头剪子布”这个题目时,一开始想运用大量函数及循环来完成,但是在慢慢琢磨之后,觉得这个程序可以简化,于是改变了编程思路。
当然还有不少文件的读写问题,不过还是通过不断测试之后顺利解决了。
另外一点要说的就是这个程序用了很多的选择循环,因此对于循环的控制要十分小心。
第10章还有一点体会就是,书上和老师教的内容是有限的,我们需要不断地靠自己去学习,向他人请教,学会利用网络等了解知识的平台去学习和掌握更多的知识,这样我们才能编出更好的程序。
第11章总体来说,这次程序设计实验还是比较成功的,虽然最终程序还存在一些不足,但能取得这样的成绩我还是比较高兴的。
第12章参考文献
1谭浩强编著《c++面向对象程序设计》,北京清华大学出版社2005
2谭浩强编著《C++程序设计》,北京清华大学出版社(教材)2009
3XX文库(搜索了一些c++课程设计论文的模板,一些简易的源代码)
4XX网页(搜索了一些关于如何制作目录、截图、扩大图片等相关信息)
第13章附录(致谢)
非常感谢蚌埠坦克学院开设了c++课程设计这门课,并提供了课程设计
这一重要的能提高学生能力的作业,让每个坦院学子都能在辛苦的作业、劳累
编程、紧张的时间安排中得到了一个对于个人综合能力的全面提高。
此后,编
能力会有一个很大的提高,而且还能更好的完成一个系统性的论文。
非常感谢我们的c++课程设计鲁教员,能在百忙之中,时不时的监督我们工作
日程和定期给予我们帮助——当我们遇到难题时。
准时开机房,发送相关设计要
求,统计学生的出勤率等等工作,都是鲁教员辛勤的劳动,这是保证学生们
课程设计按时完成的重要前提条件。
虽然我是独自一人编写的程序,因为我想挑战一下自己独立完成论文的能力,我
相信,有更大的压力还有更大的动力,而决非自视清高哦。
但是,同样要感谢帮
助了我的计算机专业的同学或朋友们。
我想呼吁,只有在你们的帮助下,才有我
的不断进步。
最后,感谢自己的不懈努力,能够在烦心中不断地调整,让自己在温故了所学的
知识外,还学到了不少新的知识。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+课程设计报告小游戏石头剪子布 c+ 课程设计 报告 小游戏 石头 剪子