(c语言课程设计报告小游戏“石头剪子布”

《C语言课程设计》报告

题目:石头剪子布

班级:

学号:

姓名:

指导教师:

成绩:

目 录:

一、选题背景- 3 -

二、设计思路- 3 -

三、主要问题的解决方法及关键技术- 4 -

四、程序流程图- 4 -

五、源程序清单- 6 -

六、程序运行结果- 8 -

七、设计总结- 8 -

八、教师评语- 8 -

选题背景

通过一个学期的C语言课程的学习,《C语言程序设计》课程已结束,根据学校课程学习的安排,要进行一周的C语言实习,自己动手编写游戏和系统。根据老师布置的设计任务书,按照学委的安排,根据个人的能力及意愿,我选择了设计一格小游戏:石头剪子布。

实验准备:做游戏前,首先,自己详细看了《C语言程序设计》(教科书),理解了相关函数的用法和作用;另外,上网查询了很多相关资料,还有找了很多相关的游戏设计的代码,都详细的看了一遍,加深了对C语言以及相关内容进一步理解。根据实际情况设计出一款比较理想的小游戏。

设计题目的要求:

①游戏要设置开始,结束操作控制

②游戏要有时间提示即相关结果的提示语

③游戏要能自动判断输赢,并显示最终比赛结果

设计思路

系统功能模块图:

输入:计算机随机输入选择,用户输入选择,并将数据储存。

计算:根据计算机和用户的选择,计算大小,并判断输赢,计算用户的胜负率,并储存。

输出:根据用户的输入,将用户的游戏结果显示在屏幕上。

主要问题的解决方法及关键技术

游戏功能需求分析:

输入数据:

计算机随机输入数据;

用户输入合法的数据

存储数据:

存储计算机的输入数据;

存储用户的合法输入数据;

判断用户的输赢:

根据用户的选择,比较用户与计算机的胜负

计算用户的胜负率:

根据计算机的记录,计算用户的胜负次数的总和及概率

程序流程图

获取计算机的输入

获取用户的合法输入

判断用户的输赢

记录用户的数据机胜负率

源程序清单

#include

#include

#include

void main()

{

char r; /* 用来存放用户的选择dn; /* 用来存放电脑的选择 int s,q;

double p,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种子值用来获取计算机的输入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);

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')

c语言射击类小游戏任务书,(c语言课程设计报告小游戏“石头剪子布”.doc相关推荐

  1. 石头剪子布c语言课程设计,c语言课程设计报告石头剪子布.doc

    c语言课程设计报告石头剪子布.doc 题目:石头剪子布 专业: 班级: 学号: 姓名: 指导教师: 成绩: 设计日期:2010-7-5-2010-7-9 目录: TOC \o "1-5&qu ...

  2. c语言考试系统设计报告,c语言课程设计报告单项选择题标准化考试系统.doc

    c语言课程设计报告单项选择题标准化考试系统.doc <C语言程序设计>课程设计题目:单项选择题标准化考试系统专业:计算机科学与技术班级:计科1001目录<C语言程序设计>课程设 ...

  3. c语言选择菜单程序设计,c语言课程设计报告-- 使用菜单选择趣味程序.doc

    c语言课程设计报告-- 使用菜单选择趣味程序 青岛农业大学 课程设计报告 题 目: 使用菜单选择趣味程序 姓 名: 杨丽娜 学 院: 理学与信息科学学院 专 业: 通信工程 班 级: 2班 学 号: ...

  4. c语言数据结构校园导游系统,校园导游系统课程设计报告

    校园导游系统课程设计报告 目录 1.需求分析1 2.总体设计1 2.1 抽象数据类型图的定义1 2.2 程序中包含的模块1 2.3模块间的调用关系3 3.详细设计3 3.1 代码设计3 3.1.1 定 ...

  5. 十字交叉链表c语言,C语言课程设计报告—十字交叉链表的应用.doc

    C语言课程设计报告-十字交叉链表的应用 PAGE \* MERGEFORMAT 13 华中科技大学计算机科学与技术学院 C语言程序设计课程设计实验报告 题目:水产品养殖信息管理系统 专业: 计算机科学 ...

  6. 扫雷c语言课程设计报告,扫雷游戏实验报告.docx

    扫雷游戏实验报告剖析 课程设计软件综合课程设计班 级:姓 名:学 号:指导教师:成 绩:电子与信息工程学院信息与通信工程系目录1.任务概述------------------------------- ...

  7. c语言课程设计作业医院挂号系统,C语言课程设计报告--医院专家门诊挂号系统.doc...

    华中科技大学计算机科学与技术学院 <C语言程序设计>课程设计 实验报告 题目: 医院专家门诊挂号系统 专业: 计算机科学与技术 班级: 计算机XXX班 学号: XXXX 姓名: XXX 成 ...

  8. java猜数游戏图形界面_Java课程设计(猜数字游戏)完整版

    学 院 计算机与信息工程学院 专 业 2014 计科(对口) 课程名称 面向对象程序设计( Java ) 题 目 猜数字游戏 起止时间 2015 年 12 月 25 日至 2015 年 12 月 31 ...

  9. 计算器小程序java课程设计,java课程设计----计算器小程序报告.doc

    java课程设计----计算器小程序报告.doc #####学院JAVA语言课程设计报告小程序计算器系统管理班级:#######姓名:#####指导老师:###时间:2012年6月25日至6月29日2 ...

最新文章

  1. python基础教程(十一)
  2. Keepalived 做负载均衡(简单实例)
  3. js滚动条下拉一定值_JS逆向 | 无限Debugger之淘大象
  4. 精通SpringBoot---整合RabbitMQ消息队列
  5. 分析“HTTP500内部服务器错误”解决方法
  6. Excel弱爆了!这个工具30分钟完成了我一天的工作量,零基础也能学!
  7. 解决spring-boot-maven-plugin插件打包,springboot启动时报找不到主main问题
  8. pragma pack对齐方式详细介绍
  9. sql server 远程连接问题
  10. 网络流之dinic算法
  11. Asio驱动开发学习笔记(1)
  12. CactiEZ中文版的安装使用方法
  13. 生产质量分析,助力企业掌握影响质量的全量数据
  14. 做游戏开发要学什么?
  15. Lab: User role controlled by request parameter:由请求参数控制的用户角色
  16. JAVA汽车租赁系统(JAVA毕业设计)
  17. keras:Convolution2D与Conv2D
  18. 全面质量管理在软件业的应用
  19. 【Tableau 图表大全21】之箱型图(盒须图)
  20. C#调用12306API做余票查询

热门文章

  1. 18秋c语言程序设计作业答案,西工大18秋《C语言程序设计》平时作业答案.docx
  2. Java设计模式之代理(动态代理,静态代理)
  3. 2021高考分数文科成绩查询,2021高考分数线预测 文科理科分数线是多少
  4. oracle 11g 完美卸载,oracle 11g完美卸载
  5. (六)多语言人工智能语言翻译
  6. vshost32.exe停止工作
  7. Slickflow.NET核心开源工作流引擎
  8. sqlserver 更新 datetime 数据_SqlServer 关于 datetime 的更新引发的思考
  9. python五子棋代码tkinter_python使用tkinter开发一款五子棋游戏
  10. ios 设备获取idfa_iOS获取设备ID总结