实训一用C语言设计一个猜数字游戏.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实训一 用C语言设计一个猜数字游戏 一、 实训准备工作及要求: 1、 请同学们自由组合,班长负责统计分组名单(电子稿)。 2、 每组8人,组长1人,组长负责该组的任务分工及全面督促任务完成。 具体要求如下: 两人负责全面理解此项目程序各模块的功能,做出相关结论,留做ppt备用。 两人负责运行程序,提供(拷贝)4次正确猜对数字的运行界面,留做ppt备用 两人负责制件ppt, ppt内容至少应包括:项目名称、团队成员组成及分工、选题 要求、设计思想、流程图、程序清单(用超链接方法),程序功能模块介绍,运行结果 展示,自评说明(程序设计的优点及不足)等,各组可根据具体情况适当增加内容。 两人负责ppt汇报主讲,汇报结束后,ppt±交给老师(如感觉不满意,可对其完 善后再上交) 在进行ppt汇报时,各组要随吋面临老师或同学的提问,团队所有成员要做好冋 答或补充的准备。 二、 实训目的: 1、 通过编程实例重点掌握数组、函数、程序结构设计等知识点 2、 熟练掌握VC++6.0的编程及调试的操作方法。 三、 实训内容: 1、 选题背景: 这是一个模仿“文曲星”中猜数字游戏的小程序,其主要是随机生成4个不同的 数字,然后由玩家键入数字,同时系统给予一定的提示帮助,当输入错误次数超过最 大次数时游戏结束。 2、 设计思想: 猜数字游戏是一个比较长见的游戏,其最基本的是生成几个不同的随机数,当玩家 不能在规定次数内输入正确时系统自动结束游戏,并给出正确答案。并询问是否继续。 在实现过程中,应用到了时间函数来生成随机数并与10取余来生成一位随机数, 然后再自定义一个函数来判断所生成随机数是否有重复,当无重复时做为机给定答案。 如果所生成的数字有重复则重新生成。 3、 程序流程图参考: 4、程序清单参考 #include stdio.h #include stdlib.h # include time.h #define MANY 4 #define TIME.OUT 8 严定义变量及函数*/ int a,b,u; void game(); void ab(int answer]],int guess[]); void same(int num[J); /*主目录*/ void menu() { char choice,ch ; do { do { system(cls^); printf(H\t\t\t\t 简单猜数字\n\n\n\nM); printf(n\t\t\t\tl.开始游戏 \n\nM); printf(H\t\t\t\t2.使用说明 \n\nH); pri ntf(u\t\t\t\t3 .退出 \n\rT); printf(n\t\t\t 请输入(1?3): ”); fflush(stdin); choice=getchar(); } while(choice!-l choice!二2 choice!=3,); switch(choice) { case T : { game(); break; } case 2 : { system(clsH); printf(n\t\t\t\t 欢迎使用本程序\n\n\nH); printf(”游戏说明:输入%d位数字,输入后会有提示XaYb,X表示有几个数字与答案 数字相同且位置相同.\n”,MANY); printfC-Y表示有儿位数字与答案数字相同但位置不正确。\n“); printf(n例如:答案数字是5764,如果输入5481,则会提示lalbo \nn); printf(”按任意键返回主目录……\nM); fflush(stdin); ch=getchar(); break ; case 3: { printf(”确定要退出吗? (y/n):“); } \ fflush(stdin); ch=getchar(); if(ch==y,||ch==Y)exit(O); else continue ; f } while(l); } /*游戏部分*/ void game() int guess[MANY],answer[MANY]; int times,i,mJ ; int key; time_t t; char wantplay,temp ; srand((unsigned)time(t)); do { /*生成MANY个随机数引 do { u=0 ; for(i=0;iMANY;i++) guess[i]=rand()%10 ; same(guess); } while(u); printf(n请输入%d位不相同的数:\n”,MANY); for(times=l ;times=TIME_OUT+l ;times++) { 代超过限定数次*/ if(times==(TIME_OUT+1

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档