当前位置:文档之家› C语言课程设计猜拳游戏

C语言课程设计猜拳游戏

设计题目的要求: ①游戏要设置开始,结束操作控制 ②游戏要有操作流程的提示语 ③游戏能显示比赛结果
二、 设计思路
系统功能模块图: 输入:计算机随机输入选择,用户输入选择,并将数据储存。 计算:根据计算机和用户的选择,计算大小,并判断输赢,计算用户的胜负 率,并储存。 输出:根据用户的输入,将用户的游戏结果显示在屏幕上。
三、 主要问题的解决方法及关键技术
游戏功能需求分析: 输入数据: 计算机随机输入数据; 用户输入合法的数据 存储数据: 存储计算机的输入数据; 存储用户的合法输入数据; 判断用户的输赢: 根据用户的选择,比较用户与计算机的胜负
四、 程序流程图
① 获取计算机的输入
② 获取用户的合法输入
③ 判断用户的输赢
case 7:printf("石头\n");break; case 10:printf("布\n");break; } if (result==6||result==7||result==11) printf("你赢了!"); else if (result==5||result==9||result==10) printf("电脑赢了!"); else printf("平手"); system("pause>nul&&cls"); // 暂停并清屏 } return 0; } 六、 程序运行结果 测试: 1 显示主菜单界面
srand((unsigned)time(NULL)); // 随机数种子 computer=rand()%3; // 产生随机数并取余,得到电脑出拳 result=(int)gamer+computer; // gamer 为 char 类型,数学 运算时要强制转换类型 printf("电脑出了"); switch (computer) {
一、 选题背景
通过一个学期的 C 语言课程的学习,《C 语言程序设计》课程已结束,根据 学校课程学习的安排,要进行一周的 C 语言实习,自己动手编写游戏和系统。根 据老师布置的设计任务书,按照学委的安排,根据个人的能力及意愿,我选择了 设计一格小游戏:石头剪子布。
实验准备:做游戏前,首先,自己详细看了《C 语言程序设计》(教科书), 理解了相关函数的用法和作用;另外,上网查询了很多相关资料,还有找了很多 相关的游戏设计的代码,都详细的看了一遍,加深了对 C 语言以及相关内容进一 步理解。根据实际情况设计出一款比较理想的小游戏。
case 67 | 99: // C | c gamer=10; break; case 68 | 100: // D | d return 0; default: printf("你的选择为 %c 选择错误,退出...\n",gamer); getchar();
system("cls"); // 清屏 return 0; break; }
五、 源程序清单
#include <stdio.h>
#include <stdlib.h>
#include <time.h> int main() {
char gamer; // 玩家出拳
int computer; // 电脑出拳
int result; // 比赛结果
// 为了避免玩一次游戏就退出程序,可以将代码放在循环中
--学校--学院
2014-2015 学年第一学期 《C 程序设计》课程设计
题目名称:
趣味小游戏
姓名 学号 班级 指导教师 编写日期
2015-1-5——2015-1-25
成绩:
目录:
一、 选题背景 .............................................. 二、 设计思路 .............................................. 三、 主要问题的解决方法及关键技术 ...... 四、 程序流程图 .......................................... 五、 源程序清单 .......................................... 六、 程序运行结果 ...................................... 七、设计总结 .............................................. 八、参考文献……...………………………. 九、致谢………...………………………….
2 输入界面
③ 输出界面 ④游戏结束界面
七、 设计总结
此的程序实设计实验是对我进入大学以来学习程序设计语言成果的一个检 验。自己动手,自己发现和解决问题,学会了独立,自主的思考,发现了自己的 许多不足。平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考, 不断查阅资料和上机运行,解决其中大部分问题,当然还存在一些问题没有解决。 我相信在以后的学习能够解决好它们。但是,收获还是不小的,我不仅对 C 的 操作有了进一步的掌握,还了解到了程序设计的书写风格及其注释的格式。
当我选择编写小游戏“石头剪子布”这个题目时,一开始想运用大量函数及 循环来完成,但是在慢慢琢磨之后,觉得这个程序可以简化,于是改变了编程思 路。当然还有不少文件的读写问题,不过还是通过不断测试之后顺利解决了。另 外一点要说的就是这个程序用了很多的选择循环,因此对于循环的控制要十分小 心。
还有一点体会就是,书上和老师教的内容是有限的,我们需要不断地靠自己 去学习,向他人请教,学会利用网络等了解知识的平台去学习和掌握更多的知识, 这样我们才能编出更好的 C 程序。
case 0:printf("剪刀\n");break; //4 1 case 1:printf("石头\n");break; //7 2 case 2:printf("布\n");break; //10 3 } printf("你出了"); switch (gamer) { case 4:printf("剪刀\n");break;
while (1) {
printf("这是一个猜拳的小游戏,请输入你要出的拳头:\n");
printf("A:剪刀\nB:石头\nC:布\nD:不玩了\n");
scanf("%c%*c",&gamer); switch (gamer){ case 65 | 97: // A | a gamB | b gamer=7; break;
八、参考文献
《数据结构(c 语言版)例题详解与课程设计指导》第二版 袁志祥、秦锋 主编 中国科学技术大学出版社出版
《C 语言程序设计(第四版)》 谭浩强 清华大学出版社出版
九、致谢
本设计是在某某老师的悉心指导下完成的,老师渊博的知识,严谨的治学态 度,一丝不苟的工作作风,平易近人的性格都是我学习的楷模。在课程设计及整 理期间,老师给了我很大的支持和鼓励,才使得此课程设计得以顺利的完成,在 此谨向老师表示忠心的感谢和崇高的敬意。同时感谢电子阅览室的老师们,他们 给我们提供了必要的作业工具,提供了很大的方便。同时感谢同班同学,在课程 设计期间,他们不仅在学习上对我有很大的帮助,还在生活上提供方便。最后, 要感谢学校为我们提供这次课程设计机会。
相关主题