C++课程设计石头剪刀布游戏 最终.docx
- 文档编号:23207181
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:14
- 大小:258.84KB
C++课程设计石头剪刀布游戏 最终.docx
《C++课程设计石头剪刀布游戏 最终.docx》由会员分享,可在线阅读,更多相关《C++课程设计石头剪刀布游戏 最终.docx(14页珍藏版)》请在冰豆网上搜索。
C++课程设计石头剪刀布游戏最终
存档资料成绩:
华东交通大学
课程设计报告书
所属课程名称
C++语言及程序设计
题目
院(系)
班级
学 号
学生姓名
指导教师
宋岚
辅导教师
宋岚
不必打印此页,由学校的封面替代,但内容一定要填写完整
2014年6月26日
课程设计(论文)任务书
电气与电子工程学 院 电气工程及其自动化专 业13-8 班
一、课程设计(论文)题目:
石头-剪刀-布游戏
二、课程设计(论文)工作自2014年6月23日起至2014年6月27日止
三、课程设计(论文)地点:
8-501
四、课程设计(论文)内容要求:
1.本课程设计的目的
(1)进一步巩固和加深对“C++程序设计”课程基本知识的理解和掌握,了解C++语言在项目开发中的应用。
(2)学习程序设计开发的一般方法,了解和掌握项目开发过程及方式,培养正确的设计思想和分析问题、解决问题的能力,特别是项目设计能力。
(3)通过对标准化、规范化文档的掌握并查阅有关技术资料等,培养项目设计开发
能力,同时提倡团队合作精神。
2.课程设计的任务及要求
1)基本要求:
(1)对系统功能进行需求分析;
(2)使用VisualC++编译器进行程序编译;
(3)提出系统的设计方案;
(4)编写源程序代码并进行调试。
2)创新要求
在基本要求达到后,可进行创新设计。
3)课程设计报告撰写及装订要求
课程设计报告的撰写要求表述简明,图表准确。
报告按如下内容和顺序用A4纸进行打印并装订成册。
(1)封面
采用统一的课程设计封面,并按要求填写好封面要求的个人信息和选题。
(2)设计任务书
(3)评阅书
(4)目录
(5)正文
(6)主要参考文献
4)课程设计评分标准:
每人按指定题目进行设计,严禁抄袭,要求每人自己动手编写程序,采取同一组同时检查程序及运行结果,检查时同组成员每人陈述自己的分工,同一选题不同组如发现代码完全一样,则双方都作不及格处理。
(1)达到课程设计的目的与要求,程序的可读性较好,并调试正确,60分;
(2)能正确回答设计的中老师所提问题,可增加10分;
(3)课程设计报告书写规范整齐,可增加10分;
(4)心得体会认真总结,可增加10分;
(5)程序有创新性,可增加10分;
成绩评定实行优秀、良好、中等、及格和不及格五个等级。
不及格者需重做。
5)课程设计进度安排
(1)准备阶段(3学时):
选择设计题目、了解设计目的要求、查阅相关资料。
(2)程序模块设计分析阶段(4学时):
程序总体设计、详细设计。
(3)代码编写调试阶段(10学时):
程序模块代码编写、调试、测试。
(4)撰写论文阶段(3学时):
总结课程设计任务和设计内容,撰写课程设计论文。
6)课程设计题目具体要求:
在游戏中,孩子们用手表示石头、剪刀或布中的一个,由拳头表示石头,伸出两根手指表示剪刀,伸手表示布,孩子们面对面地从1数到3时做出他们的选择,如果所作选择是一样的,则表示平局,否则就按如下规则决定胜负。
(1)石头砸坏剪刀。
(2)剪刀剪碎布
(3)布覆盖石头
编程实现计算机与人进行游戏。
并输出游戏结果。
如果屏幕输出笑脸,则表示人胜利;如果屏幕输出哭脸,则表示人失败;输出无奈,则表示平局。
并且统计结果。
学生签名:
2014年6月28日
课程设计(论文)评阅意见
序号
项目
等 级
优秀
良好
中等
及格
不及格
1
课程设计态度评价
2
出勤情况评价
3
任务难度评价
4
工作量饱满评价
5
设计中创新性评价
6
论文书写规范化评价
综合评定等级
评阅人宋岚职称讲师
2014年6月29日
目 录
第1章需求分析
实验目的
编程实现计算机与人进行石头-剪刀-布游戏。
在C++语言中,通过菜单应用程序设计实现不同功能,掌握程序设计的
基本方法、常用技巧。
实验要求
在游戏中,孩子们用手表示石头、剪刀或布中的一个,由拳头表示石头,伸出两根手指表示剪刀,伸手表示布,孩子们面对面地从1数到3时做出他们的选择,如果所作选择是一样的,则表示平局,否则就按如下规则决定胜负。
(1)石头胜剪刀
(2)剪刀胜布
(3)布胜石头
编程实现计算机与人进行游戏。
1.出剪刀
2.出石头
3.出布
并统计胜利、失败和平局的次数。
第二章概要设计
设计思路与算法
1.让计算机随机产生0-2任意数,
其中0代表计算机出剪子,1代表出石头,2代表出布
参考代码:
intmain1(intn)
{
srand((unsigned)time(0));/*使用系统定时/计数器的值做为随机种子,指定seed为当前系统流逝了的时间,time(t)被定义为长整型,它返回从1970年1月1日零时零分零秒到目前为止所经过的时间。
*/
n=rand()%3;/*随机产生0-3之间的数,不含有3,取得[a,b)之间的随机整数,使用(rand()%(b-a))+a*/
returnn;/*返回n的值为函数的值*/
}
2.人机游戏在主函数中实现
思路:
可使用while语句和switch…case语句实现菜单功能的循环选择。
参考代码:
voidmain()
{
cin>>cho;//用户输入1-3任意数
good=main1(temp);
switch(good)
{
case0:
cout<<"对方出了剪子\n";
….
case1:
cout<<"对方出了石头\n";
….
case2:
cout<<"对方出了布\n";
….
}}
第三章详细设计
源程序代码
#include
#include
#include
#include
intmain1(intn)
{
srand((unsigned)time(0));
n=rand()%3;
returnn;
}
intmain()
{
intn,cho,c,temp,win=0,lose=0,tie=0;
chara;
cout<<"-------------------------------------------"< cout<<"石头-剪刀-布小游戏"< cout<<"-------------------------------------------"< getch();//函数用途: 从控制台读取一个字符,但不显示在屏幕上 while (1) { cout<<"-----------------新游戏-----------------"< cout<<"1.出剪刀"< cout<<"2.出石头"< cout<<"3.出布"< cout<<"其他任意键结束"< cout<<"---------------------------------------"< cout<<"请根据对应序号输入1~3中的一个数字表示要出的手势: "; cin>>cho;//用户输入1-3任意数 if(cho<1||cho>3) { cout<<"您输入的数字小于1或者大于3,请重新输入"< } else { c=main1(n); switch(c) { case0: cout<<"对方出了剪刀\n"; if(cho==2)cout<<"( ̄︶ ̄)↗赢喽"< if(cho==1)cout<<"( ̄口 ̄)! ! 平局"< if(cho==3)cout<<"(┬_┬)↘输了"< cout<<"战况: "<<"胜利: "< "< "< "< break; case1: cout<<"对方出了石头\n"; if(cho==3)cout<<"( ̄︶ ̄)↗赢喽"< if(cho==2)cout<<"( ̄口 ̄)! ! 平局"< if(cho==1)cout<<"(┬_┬)↘输了"< cout<<"战况: "<<"胜利: "< "< "< "< break; case2: cout<<"对方出了布\n"; if(cho==1)cout<<"( ̄︶ ̄)↗赢喽"< if(cho==3)cout<<"( ̄口 ̄)! ! 平局"< if(cho==2)cout<<"(┬_┬)↘输了"< cout<<"战况: "<<"胜利: "< "< "< "< break; } } } return0; } 第四章运行结果及分析 1、初始界面 2、按任意键后开始游戏 3、输入数字1,表示出剪刀。 并输出结果: 胜利。 4、输入数字2,表示出石头。 并输出结果: 胜利。 5、输入数字3,表示出布。 并输出结果: 平局。 6、输入数字4,屏幕显示: 您输入的数字小于1或者大于3,请重新输入 界面分析 第一个截图是程序运行的初始结果,然后按任意键结果如第二个截图所示,再输入数字1,2或3,再按Enter键运行出游戏结果,例如输入1,结果是对方出了布,则表示胜利,战况为胜利1次,失败0次,平局0。 次结果如第三个截图所示;继续输入数字接着游戏,如输入2,结果是对方出了剪刀,则表示胜利,战况变为胜利2次,失败0次,平局0次,如第四个截图所示;继续输入数字接着游戏,如输入3,结果是对方出了布,则表示平局,战况变为胜利2次,失败0次,平局1次,如第五个截图所示;继续输入数字接着游戏,如输入4,则没有对应的手势,则输出: 您输入的数字小于1或者大于3,请重新输入。 如果按其他键,再按Enter键,继续按任何键就退出游戏。 第五章 课程设计心得 这次课程设计题目要求不仅要求对课本知识有较深刻的了解,同时要求程序设计者有较强的思维和动手能力。 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。 在进行程序设计的过程中,对于随机数的产生有很多的疑问。 查阅了各种资料,才找到随机产生0~2中三个数中的任意一个数的方法。 在程序中,我还加入了统计胜利次数,失败次数和平局次数的语句。 第六章参考文献 [1]柴欣,张红梅.VisualC++程序设计基础(第二版)[M].中国铁道出版社.2007.8 [2]吕凤翥.C++语言基础教程[M].清华大学出版社.2007.2 [3]陈慧,马杰良.案列式C语言教程[M].中国铁道出版社.2011.2 [4]谢昕,刘觉夫,王更生.C++程序设计[M].北京邮电大学出版社2010.12 [5]《C++程序设计》精品课程 [6] [7]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+课程设计石头剪刀布游戏 最终 C+ 课程设计 石头 剪刀 游戏