- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《C语言程序设计》课程设计---猜数字游戏
黑龙江八一农垦大学文理学院 《C程序设计》课程设计报告 2010-2011学年第二学期 设计题目:猜数字游戏 指导教师:丁艳清 完成时间:2011年6月20日至2011年6月26日 第 3 组报告成员 姓 名 专业班级 学 号 李晓飞 信息与计算科学 一班 王鹏宇 信息与计算科学 一班 王爽 信息与计算科学 一班 王璐 信息与计算科学 一班 谭程方 信息与计算科学 一班 成绩评定: 分 任课教师签字: 2011年 月 日 目 录 目录 目 录 - 2 - 1 程序分析与设计 - 2 - 1.1 功能分析与任务分配 - 2 - 功能分析 - 2 - 1.2流程图 - 3 - 1.3 数据结构 - 4 - 2 详细设计 - 4 - 3 参考文献 - 5 - 4 附录 - 5 - 5总结 - 6 - 1 程序分析与设计 1.1 功能分析与任务分配 功能分析 此游戏程序通过不断输入以及逐渐数位对应的方法,一步步的缩小猜测范围,最终猜出机内已存储数字,达到健脑益智的效果。 此数字游戏 这种策略非常直接——每次都猜可能答案中的第一个。例如,首先猜测1234,如果得到的反馈是 2A可能的答案包括1256,1257,5236,等等。根据简单策略,下一次就猜1256,因为1256是所有可能答案中最小的数字。 简单策略的优点是速度非常快,缺点是所需猜测次数很多。 这类策略是猜数字游戏最常用的解法。其算法步骤如下: a. 首先猜 1234,得到第一个反馈(xAyB)。 b. 从所有数字中,筛选出满足已知反馈的所有可能数字,称之为“可能集”。 c. 对于所有数字(而不仅限于筛选出来的可能集),逐一评估每个数字的“好坏”,并给其打分。选取得分最高的那个数字猜。如果有多个数字的评分一样高,则优先选取可能集中的数字。 d. 重复步骤 b-c,直到猜出 4A为止。 N N N Y Y N Y 1.3 数据结构 k 猜测的次数 b 一次猜测后用来判断是否继续进行新的猜测 n1 猜对的数字数 n2 猜对并且位置也对的数字数 i、j 用来表示两个数组的对应数位数 x[4]={2,5,6,9} 定义将要被猜测的数字为2569 y[4] 从键盘输入的四位数 2 详细设计 通过逐步减少范围来猜测正确结果 3 参考文献 [1]谭浩强著《C语言程序设计》北京:清华大学出版社 2005 [2]百度知道 4 附录 #include stdio.h void main() { int k,n1,n2,b,x[4]={2,5,6,9},y[4]; //定义将要被猜测的数字为2569// int i=0,j=0; for(k=1;;k++) //只要不放弃,就可以使猜测无数次的进行下去// { n1=0;n2=0; //n1用来统计猜对的数字数,n2用来统计猜对并且位置也对的数字数// printf(请输入四个不同的数字:); for(j=0;j4;j++) scanf(%d,y[j]);//用来输入四个不同的数字// for(i=0;i4;i++) { for(j=0;j4;j++) if(x[i]==y[j]) n1++; //统计n1// } for(i=0;i4;i++) if(y[i]==x[i]) n2++; //统计n2// printf(%dA%dB\n,n1,n2); printf(n1=%d,n2=%d\n,n1,n2); //给出本轮猜测的结果// if(n2==4) break; printf(如果想放弃,请输入0;如果不想放弃,请输入任意非零数字\n); scanf(%d,b); if(b==0) printf(正确答案是:2569); else printf(请继续猜测\n); } if(n2==4) printf(恭喜你答对了!); } 5总结 C语言是我在大学学习中接触的第一种计算机语言,将其作为我们学生学习程序设计技术的入门课程,我想这与C语言的特点是分不开的。C语言不但可以编写系统软件,而且可以根据用户的需要编写出满足用户要求的应用软件,尤其是C语言具有很好的对的硬件编程能力。同时,C语言具性强、处理问题周密、严谨的特点,是集知识和技能于一体,实践性很强的课程。我们通过学习C语言可掌握程序设计的一些基本方法和技巧。然而C语言的数据类型较多、表达式丰富、语法结构较复杂,使它成为一门教师难教、学生难学的课程。 我们选的是编写一个猜字游戏,要求才一个四位数字,每次猜完,要
有哪些信誉好的足球投注网站
文档评论(0)