c++课程设计报告(石头剪刀布游戏)

合集下载

课程设计项目石头剪刀布

课程设计项目石头剪刀布

课程设计项目石头剪刀布一、课程目标知识目标:1. 让学生掌握“石头剪刀布”游戏的基本规则和策略。

2. 帮助学生理解概率和统计在游戏中的应用。

3. 引导学生认识随机事件和概率的基本概念。

技能目标:1. 培养学生运用概率知识进行问题分析和决策的能力。

2. 提高学生在游戏中观察、分析、推理的能力。

3. 培养学生的团队协作能力和沟通技巧。

情感态度价值观目标:1. 培养学生对数学学习的兴趣,激发学生的求知欲。

2. 培养学生积极参与、勇于挑战的精神,增强自信心。

3. 培养学生遵守规则、尊重对手的良好品质。

课程性质:本课程为数学学科的一节实践活动课,结合游戏教学,注重培养学生的实际操作能力和解决问题的能力。

学生特点:三年级学生具有一定的数学基础,对游戏有浓厚兴趣,好奇心强,喜欢动手操作。

教学要求:教师应充分调动学生的积极性,引导学生主动参与游戏,通过实践掌握概率知识,培养解决问题的能力。

在教学过程中,关注学生的个体差异,鼓励学生互相交流、合作,共同提高。

教学设计和评估将围绕课程目标,关注学生在知识、技能和情感态度价值观方面的具体学习成果。

二、教学内容1. 游戏规则与策略:介绍“石头剪刀布”游戏的基本规则,引导学生探索游戏中的策略,如如何根据对手的行为模式进行预测和决策。

关联课本章节:数学三年级上册“游戏与概率”单元。

2. 概率基础:讲解随机事件的概念,引导学生理解概率的定义,通过游戏实践让学生体会概率的数值表示。

关联课本章节:数学三年级下册“可能性”章节。

3. 数据收集与分析:组织学生进行多次游戏,收集数据,利用统计方法分析结果,探讨不同策略对游戏结果的影响。

关联课本章节:数学三年级下册“数据的收集与整理”章节。

4. 数学应用:讨论如何将概率知识应用到实际生活中,如决策、预测等,增强学生的数学应用意识。

关联课本章节:数学三年级下册“数学与生活”章节。

教学内容安排与进度:第一课时:介绍游戏规则与策略,进行初步实践。

《石头,剪子,布》小班游戏教案

《石头,剪子,布》小班游戏教案

一、教学目标:1. 了解石头、剪子、布的游戏规则,能积极参与游戏。

2. 培养幼儿的手眼协调能力和反应能力。

3. 增进幼儿之间的友谊,培养团队协作精神。

二、教学内容:1. 石头、剪子、布的游戏规则介绍。

2. 游戏过程中的策略和技巧。

3. 游戏中的道德教育和团队协作精神。

三、教学准备:1. 教学PPT或者黑板,用于展示游戏规则和结果。

2. 足够数量的石头、剪子、布的手势卡片。

3. 教学视频或者图片,用于演示游戏过程。

四、教学过程:1. 引入话题:邀请幼儿谈论他们知道的猜拳游戏,引导幼儿说出石头、剪子、布。

2. 讲解游戏规则:通过PPT或者黑板,向幼儿展示石头、剪子、布的游戏规则,让幼儿理解游戏的基本玩法。

3. 演示游戏过程:通过教学视频或者图片,向幼儿展示石头、剪子、布的游戏过程,让幼儿更好地理解游戏规则。

4. 组织游戏:将幼儿分成若干小组,每组三人,进行石头、剪子、布游戏。

教师巡回指导,纠正幼儿的游戏动作,引导幼儿遵守游戏规则。

5. 总结评价:游戏结束后,教师与幼儿一起总结游戏过程中的得失,培养幼儿的团队协作精神。

五、教学评价:1. 观察幼儿在游戏中的表现,评价幼儿对游戏规则的理解和掌握程度。

2. 关注幼儿在游戏过程中的团队协作精神,评价幼儿的沟通能力和社会交往能力。

3. 收集幼儿在游戏中的作品,评价幼儿的手眼协调能力和创造力。

六、教学延伸:1. 邀请家长参与游戏:家长可以与幼儿一起进行石头、剪子、布游戏,增进亲子关系。

2. 组织比赛:可以举行石头、剪子、布比赛,鼓励幼儿积极参与,培养竞争意识。

3. 创作石头、剪子、布相关作品:鼓励幼儿用手绘画、制作石头、剪子、布的手偶等,展示自己的创造力。

七、教学注意事项:1. 确保游戏环境安全,避免幼儿在游戏中受伤。

2. 关注每个幼儿的游戏体验,鼓励幼儿积极参与,不要轻易放弃。

3. 尊重幼儿的选择和决策,培养幼儿的独立思考能力。

八、教学资源推荐:1. 《石头、剪子、布》教学视频:通过视频展示游戏过程,帮助幼儿更好地理解游戏规则。

c课程设计石头剪刀布源码

c课程设计石头剪刀布源码

c 课程设计石头剪刀布源码一、教学目标本节课的教学目标是让学生掌握石头剪刀布游戏的源码编写,培养学生的编程能力和逻辑思维能力。

具体来说,知识目标包括了解石头剪刀布游戏的规则和逻辑,掌握使用C语言编写简单游戏程序的方法;技能目标包括能够独立编写并调试C语言程序,培养良好的编程习惯;情感态度价值观目标包括培养学生对计算机科学的兴趣,增强学生的自信心和自主学习能力。

二、教学内容本节课的教学内容主要包括石头剪刀布游戏的规则介绍、C语言编程基础和游戏程序的编写。

首先,介绍石头剪刀布游戏的规则,让学生了解游戏的基本玩法;其次,讲解C语言编程的基础知识,包括变量、函数、循环和条件语句等;最后,引导学生动手编写石头剪刀布游戏的源码,让学生在实践中掌握编程技巧。

三、教学方法为了达到本节课的教学目标,将采用讲授法、案例分析法和实验法等多种教学方法。

首先,通过讲授法向学生讲解石头剪刀布游戏的规则和C语言编程基础知识;其次,通过案例分析法分析已有的石头剪刀布游戏程序,让学生理解程序的逻辑结构;最后,通过实验法让学生动手编写并调试游戏程序,提高学生的编程能力。

四、教学资源为了支持本节课的教学内容和教学方法的实施,将准备以下教学资源:教材《C语言程序设计》、参考书《C语言编程实例教程》、多媒体资料《石头剪刀布游戏教程》和实验设备(计算机、编程软件等)。

这些教学资源将帮助学生更好地理解和掌握编程知识,提高学生的学习效果。

五、教学评估本节课的教学评估将采用多元化的评估方式,以全面、客观地评价学生的学习成果。

评估方式包括平时表现、作业和考试等。

平时表现主要评估学生在课堂上的参与程度、提问和回答问题的积极性等;作业主要评估学生的编程能力和逻辑思维能力,通过布置相关的编程练习让学生完成;考试则是对学生综合运用所学知识解决问题能力的评估,将包括选择题、填空题和编程题等类型。

评估结果将及时反馈给学生,以帮助学生了解自己的学习情况,提高学习效果。

c石头剪刀布课课程设计

c石头剪刀布课课程设计

c 石头剪刀布课课程设计一、教学目标本课程旨在让学生掌握“石头剪刀布”游戏的基本规则和策略,培养学生的逻辑思维能力和团队合作精神。

具体目标如下:1.知识目标:学生能够说出“石头剪刀布”游戏的起源、规则和基本策略。

2.技能目标:学生能够运用所学策略进行游戏,提高获胜的概率。

3.情感态度价值观目标:学生通过参与游戏,培养尊重对手、团队合作和公平竞争的精神。

二、教学内容本课程的教学内容主要包括以下几个部分:1.“石头剪刀布”游戏的起源:介绍“石头剪刀布”游戏的历史和传播过程。

2.游戏规则:讲解游戏的规则,包括手势的含义、比赛的形式等。

3.基本策略:教授学生如何根据对手的行为选择最优的手势,提高获胜的概率。

4.团队合作:引导学生学会与他人合作,共同制定策略,提高团队获胜的可能性。

三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用以下教学方法:1.讲授法:教师讲解“石头剪刀布”游戏的起源、规则和基本策略。

2.讨论法:学生分组讨论,分享彼此的游戏经验和策略。

3.案例分析法:教师提供案例,学生分析案例中的策略并加以改进。

4.实验法:学生进行“石头剪刀布”游戏,实践所学策略,教师点评并指导。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:《石头剪刀布游戏指南》2.参考书:《游戏理论》3.多媒体资料:相关游戏的视频、图片等4.实验设备:足够数量的石头、剪刀、布等游戏道具五、教学评估本课程的评估方式包括以下几个方面:1.平时表现:评估学生在课堂上的参与度、提问回答等情况,占总评的30%。

2.作业:评估学生完成作业的质量和速度,占总评的30%。

3.考试:期末进行一次考试,测试学生对课程内容的掌握程度,占总评的40%。

评估方式要求客观、公正,全面反映学生的学习成果。

教师应及时给予反馈,帮助学生提高。

六、教学安排本课程的教学安排如下:1.课时:共计10课时,每课时45分钟。

幼儿园小班优秀游戏教案《石头剪刀布》

幼儿园小班优秀游戏教案《石头剪刀布》

幼儿园小班优秀游戏教案《石头剪刀布》教学目标通过游戏的方式,让小班幼儿了解石头、剪刀、布三种动作的含义,并且在玩游戏过程中,培养幼儿协作意识和对游戏规则的认知。

教学准备1.游戏道具:石头、剪刀、布三种道具。

2.游戏规则:在一个小班范围内,两名幼儿面对面,同时打出石头、剪刀、布之一,形成比拼,比拼规则为石头胜剪刀,剪刀胜布,布胜石头。

3.教学计分卡。

教学过程第一步:游戏规则和游戏道具介绍教师给幼儿们展示三种游戏道具:石头、剪刀、布,并简单介绍它们的含义和游戏规则。

然后,老师会和一个幼儿进行一组游戏演示。

第二步:小班分组根据班级人数情况,将幼儿分为若干组,每组两名幼儿,站在教室中央形成一条直线。

第三步:游戏开始教师示意,各组开始游戏,玩游戏的幼儿要将游戏道具藏在手里,并在老师的计时下打出自己的出拳,根据游戏规则计算得分,输家记1分,胜者记0分。

第四步:分组变换每个小组比完后,幼儿重新按照教师的指示开始新一轮游戏比拼,重新排队站定再次比拼。

第五步:游戏总结和规则修正等到游戏结束,老师将幼儿的游戏得分统计出来,并与幼儿们进行一次小课堂,讲解游戏规则的细节及注意事项。

如果有幼儿对游戏规则有任何疑问,可以让他们对游戏规则进行讨论,一起尝试探讨游戏规则的不同情形,并对游戏规则进行修改、丰富、深化。

总结本节课的《石头剪刀布》游戏教案,是一种能够培养幼儿协作意识、对游戏规则的认知,并且能够快速增加幼儿对动作记忆的特色游戏。

希望幼儿们在玩游戏过程中,不仅仅在力量上得到了锻炼,还能够在智力上得到提高,和大家一起愉快游戏!。

幼儿园小班教案《石头剪子布》

幼儿园小班教案《石头剪子布》

幼儿园小班教案《石头剪子布》1.1 编写目的:通过游戏《石头剪子布》,让小班幼儿体验游戏的乐趣,锻炼手眼协调能力和反应能力。

1.2 适用对象:幼儿园小班幼儿1.3 教学时间:课时1课时(40分钟)二、知识点讲解2.1 游戏规则:石头剪子布是一种简单的猜拳游戏,玩家伸出手指,石头胜剪刀,剪刀胜布,布胜石头。

2.2 游戏目的:培养幼儿的观察力、反应力和手眼协调能力,锻炼幼儿的团队合作意识。

2.3 游戏准备:教具(石头、剪刀、布的图片或实物)、音乐播放设备三、教学内容3.1 游戏流程:教师讲解游戏规则,示范游戏动作,幼儿跟随教师一起游戏,进行总结。

3.2 游戏步骤:3.2.1 教师邀请幼儿进行猜拳,展示石头、剪刀、布的手势。

3.2.2 幼儿观察教师的手势,快速伸出自己的手指,做出石头、剪刀、布的动作。

3.2.3 教师与幼儿一起说出猜拳结果,石头胜剪刀,剪刀胜布,布胜石头。

3.3 游戏拓展:教师可以邀请幼儿进行团队合作,两两一组,进行石头剪子布比赛,增加游戏的互动性和趣味性。

四、教学目标4.1 认知目标:让幼儿了解并掌握石头剪子布的游戏规则。

4.2 技能目标:培养幼儿的手眼协调能力和反应能力。

4.3 情感目标:培养幼儿的团队合作意识,体验游戏的乐趣。

五、教学难点与重点5.1 重点:让幼儿掌握石头剪子布的游戏规则,能够熟练地进行游戏。

5.2 难点:培养幼儿的手眼协调能力和反应能力,以及团队合作意识。

以上是五个章节的内容,后续章节请根据您的要求继续编写。

六、教具与学具准备6.1 教具准备:石头、剪刀、布的图片或实物,音乐播放设备6.2 学具准备:幼儿手指游戏卡片,画笔、画纸等绘画材料6.3 环境准备:安静、舒适的游戏环境,适当的空间以便幼儿进行游戏活动七、教学过程7.1 游戏导入:教师展示石头、剪刀、布的图片或实物,引起幼儿兴趣,引导幼儿观察并说出名称7.2 游戏讲解:教师讲解石头剪子布的游戏规则,示范游戏动作,让幼儿跟随教师一起做动作,熟悉游戏流程7.3 游戏实践:幼儿与教师进行石头剪子布游戏,锻炼幼儿的手眼协调能力和反应能力7.4 游戏拓展:教师邀请幼儿进行团队合作,两两一组,进行石头剪子布比赛,增加游戏的互动性和趣味性7.5 总结环节:教师带领幼儿回顾游戏过程,引导幼儿表达自己的感受,总结游戏中的收获八、板书设计8.1 板书主题:《石头剪子布》8.2 板书内容:石头、剪刀、布的图片或实物,游戏规则简要说明8.3 板书形式:图片与文字结合,生动有趣,便于幼儿理解和记忆九、作业设计9.1 作业内容:让幼儿与家人一起进行石头剪子布游戏,记录游戏过程中的有趣瞬间9.2 作业形式:绘画作品,幼儿可以画出自己喜欢的游戏角色或游戏场景9.3 作业提交:下次上课时,幼儿将作业展示给老师和同学们,分享自己的游戏经历十、课后反思及拓展延伸10.1 反思内容:教师回顾课堂教学,总结教学效果,反思教学过程中的不足之处,提出改进措施10.2 拓展延伸:教师可以根据幼儿的兴趣和需求,设计类似的游戏活动,让幼儿在愉快的氛围中学习和成长10.3 家校沟通:教师与家长保持良好的沟通,了解幼儿在家庭中的表现,鼓励家长参与幼儿的学习和成长过程重点和难点解析一、重点关注的环节1.1 教学内容的理解和掌握:幼儿对石头剪子布游戏规则的理解和掌握是教学的重点。

C课程设计猜拳游戏

C课程设计猜拳游戏

课程设计说明书课程名称:高级语言程序设计设计题目:石头剪刀布游戏院部:计算机科学与信息工程学院学生:学号:专业班级:计算机科学与技术(信息技术方向)指导教师:2015年 6月课程设计任务书目录一前言 (1)二需求分析 (1)三概要设计 (1)四详细设计 (3)五改进或增加功能模块说明 (4)六程序测试 (4)七课程设计总结 (5)八致 (5)九参考文献 (5)十源程序 (6)五子棋游戏一前言猜拳游戏是由锤子、剪刀、布三部分组成。

玩家可以在游戏区逐次猜拳,系统会给出玩家每次猜拳后的提示,显示成功或者失败或者是平手。

二需求分析1 要求(1)用C语言实现程序设计;(2)定义各个函数分别完成不同功能,如背景设计,判断等;(3)画出查询模块的流程图;(4)系统的各个功能用函数调用的形式实现;(5)界面友好(良好的人机互交),程序要有注释。

2 任务(1)定义各类头文件,变量及宏定义;(2)图形模块,设计出棋盘背景界面;(3)设定玩家操作模块和胜负判断模块;(4)画出部分模块的流程图;(5)编写代码;(6)程序分析与调试。

3 运行环境(1)WINDOWS2000/XP系统(2)TurboC2.0编译环境4 开发工具C语言三概要设计1 模块组成图功能模块图2 查询函数流程图猜拳游戏从开始到结束的操作步骤的系统流程图函数流程图四详细设计在程序的开头部分定义要用到的头文件,以及各种常量,设定选手及游戏模式。

#include<stdio.h> /*标准输入/输出函数库*/#include<stdlib.h> / *标准函数库*/#include<string.h>#include<time.h>#include<windows.h>#inlcude<iostream>using namespace std;void SetColor(unsigned shortForeColor,unsigned short BackGroundColor){HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleTextAttribute(hCon,(ForeColor%16)|(BackgrundColor%16*16));}void face();void shuoming();void shezhi();void zuce();void tuichu();void paixu();void paihangbang();int cmp();int N = 20,maxx = 0,M;struct PP{char name[10];int score;}P[1000];输入函数,即为选手每一次出拳,用1、2、3分别表示石头、剪刀、布,通过输入数字来确定要出的是哪一个,每出一次进行判断是否合理(如是否是三者中的一个)并通过调用函数记录比赛的结果,则通过变量记录下获胜的次数,如果比赛完了主函数void youxi(){int wan = 1;while(wan <= M){P[wan - 1].score = 0;system("CLS");SetColor(14,0);printf("\n\n\n\n\n\n\n\n\n\t\t\t 下面有请 ");SetColor(12,0);printf("玩家 %d",wan);SetColor(14,0);printf(" 准备比赛!");SetColor(12,0);printf("\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\t\t【按任意键开始游戏】"); _sleep(2000);getchar();getchar();int a,i = 0;for(; i < N; i++){system("CLS");srand((unsigned)time(NULL));/*随机种子*/int n=rand()%(3-1+1)+1;/*n为1~3之间的随机数*/SetColor(13,0);printf("\n\n\n\n\t\t\t\t每 %d 回合为一轮\n",N);SetColor(14,0);printf("\n\n\t\t\t\t\t\t\t (第 %d 回合)",i+1);SetColor(15,0);printf("\n\n\n\n\n\t请输入你的要出的: ");SetColor(12,0);scanf("%d",&a);//getchar();system("CLS");printf("\n\n\n\n\n\n\n\n\n\n\t\t\t");SetColor(13,0);if(a==1){switch(n){case 1:printf("双方都是石头......平手\n");break;case 2:printf("您出的是石头,电脑出的是剪刀,......您赢了!\n"),P[wan-1].score++;break;default:printf("您出的是石头,电脑出的是布......电脑赢了\n");_sleep(1000);}}else if(a==2){switch(n){case 1:printf("您出的是剪刀,电脑出的是石头......电脑赢了\n");break;case 2:printf("双方出的都是剪刀......平手\n");break;default:printf("您出的是剪刀,电脑出的是布.....您赢了!\n"),P[wan-1].score++;_sleep(1000);}}else if(a==3){switch(n){case 1:printf("您出的是布,电脑出的是石头......您赢了!\n"),P[wan-1].score++;break;case 2:printf("您出的是布,电脑出的是剪刀......电脑赢了\n");break;default:printf("双方出的都是布......平手\n");_sleep(1000);}}else{printf("你输入的有误,请重新输入!");i--;}SetColor(13,0);printf("\n\n\t\t\t\t战斗仍未结束,同志还需努力!");printf("\n\n\n\n\n\n\n 【按t退出当前玩家】\t 【按T退出到主页面】\t【按其他任意键继续游戏】\n");getchar();char c;scanf("%c",&c);if(c == 't'){break;}if(c == 'T'){face();}}wan++;if(i >= N){P[wan-1].score = (P[wan-1].score/N)*100;}else{P[wan - 1].score = 0;}paixu();}system("CLS");SetColor(12,0);printf("\n\n\n\n\n\n\n\n\n\n\t\t\t\t所有的对局已结束!");printf("\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\t\t\【按任意键返回主页面】\n");getchar();getchar();face();}五改进或增加功能模块说明在游戏运行过程中,没次比赛结束,此程序中都会产升新的对决界面,在屏幕上显示相对比较繁琐,因此这里用到了屏幕刷新函数system("cls");,为了让界面好看,添加了改变字体颜色的函数SetColor(7,0);代码如下。

C语言石头剪刀布游戏课设(附源码)

C语言石头剪刀布游戏课设(附源码)

C语言石头剪刀布游戏课设项目说明本系统基于C语言开发,适用于刚入门的C语言新手项目课设,开发软件采用VC++6.0开发,VS,DEV C++等均可运行。

(书生)项目运行截图代码界面截图完整源码#include <stdio.h>#include <conio.h>#include <stdlib.h>#include <time.h>void main(){char Human,Computer;int i,j,win=0,lose=0,deuce=0,result;void menu1(); //菜单函数1.2.3的声明void menu2();void menu3();srand(time(NULL));do{win=0,lose=0,deuce=0;menu1();printf("请做出你的选择:");scanf("%d",&i);if(i==1) //练习模式的开始{menu2();for(j=0;;j++) //无限循环体的引入{printf("第%d场比赛开始",j+1);printf("你的选择(1、2、3): ");while(1) //设计人与电脑的对战的while循环{Human = getch();if(Human=='1'||Human=='2'||Human=='3'||Human=='4'){printf("%C\t",Human);break;}} //无限循环的结束if(Human=='4') break;switch(Human) //判断开始游戏的真正对弈,人的主动选择{case '1': printf("石头VS ");break;case '2': printf("剪刀VS ");break;case '3': printf("布VS ");break;}Computer = rand()%3+1+48;switch(Computer) //电脑的随机选择{case '1': printf("石头\n");break;case '2': printf("剪刀\n");break;case '3': printf("布\n");break;}result=Human-Computer; //游戏结果的运算switch(result){case 0:deuce++;break;case -1:case 2:win++;break;case 1:case -2:lose++;break;}}printf("游戏结束\n");printf("----------------------------------\n");printf("***你和电脑一共决战了%d回合***\n",j);printf("***你赢了%d场,输了%d场****\n",win,lose);printf("----------------------------------\n");if(win==lose) //分出胜负{printf("***比赛结果:我们打成平手哦***\n");}else if(win>lose){printf("***比赛结果:电脑,我赢了哦***\n");}else if(win<lose){printf("***比赛结果:电脑,你赢了,但我不服,要再战一回合***\n");}} //对战模式的结束else if(i==2) //游戏模式的开始{menu3();for(j=0;j<2;j++) //for循环的开始,有限循环,满足两局一胜制{printf("第%d场比赛开始",j+1);printf("你的选择(1、2、3): ");while(1) //设计人与电脑的对战的while循环{Human = getch();if(Human=='1'||Human=='2'||Human=='3'||Human=='4'){printf("%C\t",Human);break;}} //for循环的结束if(Human=='4') break;switch(Human) //判断开始游戏的真正对弈,人的主动选择{case '1': printf("石头VS ");break;case '2': printf("剪刀VS ");break;case '3': printf("布VS ");break;}Computer = rand()%3+1+48;switch(Computer) //电脑的随机选择{case '1': printf("石头\n");break;case '2': printf("剪刀\n");break;case '3': printf("布\n");break;}result=Human-Computer; //游戏结果的运算switch(result){case 0:deuce++;break;case -1:case 2:win++;break;case 1:case -2:lose++;break;}}printf("比赛结束\n");if(win==lose) //分出胜负{printf("我们打成平手哦\n");}else if(win>lose){printf("电脑,我赢了哦\n");}else if(win<lose){printf("电脑,你赢了,但我不服,要再战一回合\n");}} //游戏模式的结束else if(i==3)printf("你退出游戏了哦\n");}while(i==1||i==2);}void menu1() //定义菜单函数1.2.3{printf("\t\t--------------------------------------------- \n");printf("\t\t| 欢迎来到石头剪刀布游戏|\n");printf("\t\t| ---------------------------------- |\n");printf("\t\t| |\n");printf("\t\t| 说明:练习模式,请按1 |\n");printf("\t\t| 游戏模式,请按2 |\n");printf("\t\t| 退出游戏,请按3 |\n");printf("\t\t--------------------------------------------- \n");return;}void menu2(){printf("\t\t---------------------------------------------\n");printf("\t\t| 欢迎来到练习模式|\n");printf("\t\t| ---------------------------------- |\n");printf("\t\t| |\n");printf("\t\t| 此游戏是用C语言实现的结构化程序|\n");printf("\t\t| 设计,能够实现用户和电脑互对玩的|\n");printf("\t\t| 过程,其中用户的出拳在下面有说明|\n");printf("\t\t| |\n");printf("\t\t| 用户操作: |\n");printf("\t\t| |\n");printf("\t\t| 1-石头2-剪刀3-布4-退出|\n");printf("\t\t|--------------------------------------------|\n");return;}void menu3(){printf("\t\t---------------------------------------------\n");printf("\t\t| 欢迎来到对战模式|\n");printf("\t\t| ---------------------------------- |\n");printf("\t\t| |\n");printf("\t\t| 说明: 三局两胜制|\n");printf("\t\t| 此游戏是用C语言实现的结构化程序|\n");printf("\t\t| 设计,能够实现用户和电脑互对玩的|\n");printf("\t\t| 过程,其中用户的出拳在下面有说明|\n");printf("\t\t| |\n");printf("\t\t| 用户操作: |\n");printf("\t\t| |\n");printf("\t\t| 1-石头2-剪刀3-布4-退出|\n");printf("\t\t|--------------------------------------------|\n");return;}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

.C++课程设计(论文)任务书电气学院电气专业 2 班一、课程设计(论文)题目:石头-剪刀-布游戏二、课程设计(论文)工作自2012 年 6 月18日起至 2012 年6 月 22 日止三、课程设计(论文) 地点: 计算中心机房606四、课程设计(论文)内容要求:1. 本课程设计的目的(1)进一步巩固和加深对“C++程序设计”课程基本知识的理解和掌握,了解C++语言在项目开发中的应用。

(2)学习程序设计开发的一般方法,了解和掌握项目开发过程及方式,培养正确的设计思想和分析问题、解决问题的能力,特别是项目设计能力。

(3)通过对标准化、规范化文档的掌握并查阅有关技术资料等,培养项目设计开发能力,同时提倡团队合作精神。

2. 课程设计的任务及要求(1) 基本要求:(1)对系统功能进行需求分析;(2)使用Visual C++编译器进行程序编译;(3)提出系统的设计方案;(4)编写源程序代码并进行调试。

(2) 创新要求在基本要求达到后,可进行创新设计。

(3) 课程设计论文编写要求课程设计报告的撰写要求表述简明,图表准确。

报告按如下内容和顺序用A4纸进行打印并装订成册。

(1)封面:采用统一的课程设计封面,并按要求填写好封面要求的个人信息和选题。

(2)设计任务书(3)评阅书(4)目录(5)正文(6)主要参考文献(4) 课程设计评分标准(1)达到课程设计的目的与要求,程序的可读性较好,并调试正确,60分;(2)能正确回答老师所提问题,可增加10分;(3)课程设计报告书写规范整齐,可增加10分;(4)心得体会认真总结,可增加10分;(5)程序有创新性,可增加10分;成绩评定实行优秀、良好、中等、及格和不及格五个等级。

不及格者需重做。

(5) 课程设计进度安排(1)准备阶段(6学时):选择设计题目、了解设计目的要求、查阅相关资料。

(2)程序模块设计分析阶段(8学时):程序总体设计、详细设计。

(3) 代码编写调试阶段(10学时):程序模块代码编写、调试、测试。

(4) 撰写论文阶段(6学时):总结课程设计任务和设计内容,撰写课程设计论文。

学生签名:2012年6月11 日课程设计(论文)评审意见(1)态度评价(20分):优()、良()、中()、一般()、差();(2)任务难度(20分):优()、良()、中()、一般()、差();(3)设计分析(20分):优()、良()、中()、一般()、差();(4)创新性评价(20分):优()、良()、中()、一般()、差();(5)回答问题(20分):优()、良()、中()、一般()、差();(6)论文格式规范性及考勤是否降等级:是()、否()评阅人:杜玲玲职称:副教授2012 年 6 月25 日目录第一章系统概要 (4)第二章设计思路与算法 (5)第三章源程序代码 (6)第四章运行结果及分析 (8)第五章心得体会 (10)参考文献 (10)第一章系统概要简单游戏的设计能有效的培养编程能力,实现游戏者与电脑的游戏对决,通过系统的设计可以实现人机的互动对决。

1.进入系统,游戏者只需输入0或者1或者2,以不同出拳进入系统,如果输入0,1和2以外的其他字符,则显示输入错误,请重新输入。

2.游戏者根据需要输入0到2之间的数代表石头剪刀布,若出石头(输入0),电脑出剪刀(即电脑随机生成的数字为1),则游戏者赢,电脑输了,同理,根据石头赢剪刀,剪刀赢布,布赢石头的规则,游戏者每一次与电脑对决,分出输赢。

3.根据输赢的次数,编辑输出游戏者与电脑对决输赢的次数,即战况。

4.程序要用到随机函数,即随机生成不同的数字(0,1,2),这样保证每次游戏者与电脑对决电脑不会出同样的拳(数字),因为数字的变化和输入数字的不同,程序要用到选择判断语句,考虑用if语句,为每次对决后能继续游戏,程序应用到循环结果,可用while语句来实现循环。

第二章设计思路与算法图2-1 总体设计第三章源程序代码#include<iostream.h>#include<stdlib.h>#include<time.h>#include<conio.h>void main(){int i,j,k,l,n,m;cout<<"欢迎进入石头剪刀布小游戏\n"<<"请输入输入石头(0)剪刀(1)布(2):"<<endl;cout<<"按任意键开始"<<endl;getch();cout<<"如果结束游戏选择除0~2的任意数\n"<<endl;l=0,k=0,j=0,i=0;while(1){i++; //每进行完一局局数自动加1cout<<"********第"<<i<<"局********"<<endl; //第i局cout<<"请选择";cin>>n;if(n>=3){cout<<"你选择了退出游戏,游戏结束\n你的最终成绩:";cout<<"赢"<<k<<"次,输"<<l<<"次,平"<<j<<"次"<<endl;break;}srand((unsigned)time(NULL));m=rand()%3; //系统生成0~2之间的随机数if(m==0)cout<<"对方出了石头"<<endl;else if(m==1){cout<<"对方出了剪刀"<<endl;}else{cout<<"对方出了布"<<endl;}if(n==0&&m==1) //系统随机数与输入的数字比较{cout<<"恭喜你,你赢了!"<<endl;k++;}elseif(n==1&&m==2) //系统随机数与输入的数字比较{cout<<"恭喜你,你赢了!"<<endl;k++;}elseif(n==2&&m==0) //系统随机数与输入的数字比较{cout<<"恭喜你,你赢了!"<<endl;k++;}elseif(n==m) //系统随机数与输入的数字比较{cout<<"势均力敌!"<<endl;j++;}else //非赢非平{cout<<"很遗憾,你输了!"<<endl;l++;}cout<<"战况:赢"<<k<<"次,输"<<l<<"次,平"<<j<<"次"<<endl;cout<<"*****************************\n"<<endl;}}第四章运行结果及分析图 4-11.进入程序,出现如图4-1的画面,游戏者可从0~2中选一个数输入来进行游戏,0代表石头,1代表剪刀,2代表布,如果输入其它数则结束游戏。

图4—22.第一局,游戏者输入1(剪刀),系统出布,游戏者赢了,输出战况。

第二局开始。

图4—23.第二局中,游戏者输入9,即选择退出游戏,游戏结束。

系统输出最终成绩。

第五章心得体会1 ,通过学习对随机函数的产生和运用有了初步的了解和认识,能正确运用随机种子产生相应范围内的随机数,进一步增进了对c++语言的运用和了解。

2 ,对循环结构有了更加清晰的认识,在不断地改错中积累了如何正确的运用循环体,能灵活自如的用if语句,对&&和||等也能用于循环中语句中来减少语句的使用,避免复杂的运算和不必要的语句,有了一定的认识和掌握,对于循环语句也有了更多的了解。

3 ,通过课程设计对c++语言有了更进一步的了解,对c++有了更深的兴趣,同时也培养了自己独立查资料的能力和独立设计稍微复杂的运行程序的能力,自己在设计程序中也更加有了耐心和信心,同时在运行自己设计的程序时也获得了喜悦和自豪感4 ,提高了自己查找错误的能力,对一些细微之处(如标点的运用,相应函数的格式等)记忆更加深刻,在多次操作中,避免了无谓的改错。

5,对于程序的整体设计有了初步的了解,学会了如何独立设计构思程序的能力。

参考文献[1]柴欣,张红梅.Visual C++程序设计基础(第二版)[M].中国铁道出版社. 2007.8[2]吕凤翥. C++语言基础教程[M]. 清华大学出版社. 2007.2[3] 《C++程序设计》精品课程[4] 徐慧民.C++大学基础教程 . 人民邮电出版社.2009.1。

相关文档
最新文档