C语言课程设计 21点游戏设计

上传人:仙*** 文档编号:28913688 上传时间:2021-09-19 格式:DOC 页数:5 大小:48.52KB
返回 下载 相关 举报
C语言课程设计 21点游戏设计_第1页
第1页 / 共5页
C语言课程设计 21点游戏设计_第2页
第2页 / 共5页
C语言课程设计 21点游戏设计_第3页
第3页 / 共5页
点击查看更多>>
资源描述
C语言课程设计题 目:程序设计基础课程设计班 级:姓 名:指导教师:所属系部:电子科学与技术系2009年 6 月24 日 21点游戏设计1 游戏规则此游戏,原则上是可以由不限定的人数来玩,但是随着参与人数的增加,在最后成绩的比较方面会比较的繁琐,不像两个人之间的比赛结果那么明显,所以也应该将参与人数控制在一定的范围之内。确定参与人数后,系统会随机为每个人发三张牌,然后计算这三张牌的和进行比较。如果这三张牌的和大于21,则此人将会输掉比赛,除非其他人的和也大于21(即假若每个人的三张牌的和都大于21时,该局为平局,打成平手)。如果有的和大于21,有的和小于21,则大于21的人输掉比赛,再比较小于21的部分,谁的三张牌的和最接近21,则谁是该局的赢家。一局玩完后,玩者可以根据自己情况进行选择是否要再玩一局。若选择再玩时,系统会再进行下一次的循环。2 程序算法由系统随机产生几组随机数,每组3个随机数。计算每一组的三个随机数的和。 比较每组和的大小。得出比赛结果3 关键算法流程图总体框架开始开始Flag=1Y产生随机数,求和,比较,得结果C =Y输入字符 CY结束N4 程序代码/* Note:Your choice is C IDE */#include #include #include #define N 5main( )int i,t,flag, j,m;int b8,a3*N; char c;b1=0;flag=1;while (flag) /控制循环srand(time(NULL); /scanf(%d,&j); /用j控制组数for(t=0;t3*j;t+) /产生几组随机数if (t%3=0)printf(n);at=rand()%13+1;printf(%5d,at); printf(n);for(i=1;i=j;i+) /求每组随机数的和 for(t=3*(i-1);t3*i;t+) bi=bi+at; printf(b%d=%dn,i,bi); bi+1=0; printf(n); for(t=1;tj;t+) /对和的大小进行排序 for(i=1;ibi+1) m=bi+1; bi+1=bi; bi=m; for (i=1;i=j;i+) printf(%5d,bi); printf(n); for (i=1;i21) printf(这一局为第%d个人赢n是否再玩一局,若输入Y则继续游戏,输入N结束游戏n,i-1); getchar(); /与while语句是一个系统 c=getchar(); if(c=Y) flag=1; else flag=0; 5 在程序设计中,出现的问题和解决方案: 由于是多组数据之间的比较,首先在同时产生几组随机数时遇到障碍,产生随机数的代码是从网上搜索得到的,再加上一些修改,达到所需的要求,同时有一些小的细节是在老师帮助下完成的。对于多组数据的处理有些麻烦,首先要依次求和,在求和过程中要注意细节问题。对于多组数据的比较,最终只能先排序,然后得出结论,这一个程序是比较繁杂的。本程序的不足在于最终结果表达不直接,应再加一些程序让玩者更加清晰明了。6 体会:本次程序是一个繁琐的过程,是在多次修改加上老师的指导的基础上才完成的。通过本次实验,我认识到要想完成一件事需要一次次地尝试,一次次地修改,然后再进行试验。在修改的工程中,要反复思考问题出在何处,要慢慢的找寻,一点点的排除,在老师为我讲解时我也感受到老师做事的毅力。做任何事都要一点点的,脚踏实地的去做。本次程序设计虽然不算完满,但都是自己一点点做出来的,还是有很大收获的。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!