ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:179.42KB ,
资源ID:3438099      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3438099.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(课程设计报告猜数字.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

课程设计报告猜数字.docx

1、课程设计报告猜数字1、系统需求分析1.1问题描述:该游戏可以由程序随机产生或由用户输入四个0到9之间的数字,且不重复。玩游戏者通过游戏提示输入八次来匹配上面所输入的数字。A表示位置正确且数字正确,B表示数字正确而位置不正确。1.2功能要求:(1)、本游戏显示这样的菜单:a、随机产生数据b、用户输入数据c、退出游戏(2)、游戏成功与否都能返回主菜单2、概要设计2.1系统总体设计猜数字游戏是一种大众娱乐游戏,开发与设计的重点在于游戏供玩家进行猜数字游戏的原始数字的产生和用户每次进行猜数字操作之后的游戏提示,还有用户设置数字作为游戏数据。在前面对猜数字游戏进行需求分析的过程中,已经初步明确了系统的主

2、要功能模块和用户需求,下面将给出猜数字游戏的功能模块结构。 图4-1系统功能图2.2各模块功能本游戏软件软件可以共分为五大模块,分别是数据检测模块、游戏模块、系统自动生成数字模块、帮助信息模块、主函数模块。整个游戏软件基本实现用户对此类游戏软件的要求,其各个模块的功能如下:(1)、void c_input(char *str):检测数据模块;该模块是系统对玩家输入的数据进行检测,若数据符合要求,即四个数字不重复且第一个数字不为零,则进行下一步,否则系统提示“输入错误,请重新输入”,然后重新进入输入状态。(2)、void c_game(const char *temp):游戏模块;该模块为玩家提

3、供猜数字游戏的主休功能,由系统自动产生或其他人输入4个随机排列的整数,并给玩家8次机会猜测数字的数值和排列顺序。如果用户在8次之内没有猜出正确的结果,则提示用户游戏失败,否则提示用户游戏成功。(3)、void c_rand():系统自动生成数字模块;系统在游戏规则下,通过特定的算法实现自动生成4个不重复的数字,为游戏提供要猜的数字,供玩家来猜。(4)、void c_help():帮助信息模块;帮助信息模块提供的功能是当玩家选项为帮助功能对应的选项数字时,进入帮助信息模块,此模块给出了用户猜数字的游戏规则和游戏中相关提示的含义,以便用户了解游戏规则,更好地进行游戏。(5)void main():

4、主函数模块;该模块主要提供主界面,将各个模块连接起来,让用户更方便、更有效地进行游戏。3、详细设计3.1 采用C语言定义相关的数据类型int i,j; /*定义输入的数字及系统产生的数字*/ int ci; /*定义猜数字的机会*/char in 4; /*定义数字的个数*/char out5=”0A0B”; /*定义相关的系统提示*/char temp4; /*进行游戏的数字*/3.2流程图 图4-33.3函数调用关系图 图4-34、系统调试在设计系统自动生成数字的函数中,我犯了点逻辑上的小错误,陷入了死胡同,后来请教了其他同学,同学给了我一个新的思考思路,最终把这部分函数很好地完成了。刚开

5、始执行帮助函数的时候,当我从帮助信息中返回到主菜单后,无法输入任何信息。在我的细心检查与推理下,解决了这一问题。在后来执行输入函数时,按数字顺序输入,输完后执行显示功能,数字、字母的位置显示不对,试着在其中增加一些语句,希望能把所需结果按正常顺序显示,但暂时没有成功,最后在老师的帮助下,所需结果能按正常顺序输出了。游戏系统在计算玩家猜数字的机会的时候遇到了些小麻烦,程序刚遍完运行游戏时,系统将玩家输入错误视为减少一次游戏机会。在同学的帮助下,将检测输入数据是否符合要求这一步从游戏部分分出来,重新建立一个函数,并与游戏部分建立联系,完美地解决了这一问题。当然,在系统调试的时候还有一些标点符号的忽

6、略,给系统调试带来一点小麻烦。因此,在调试程序的同时,我们也要谨记调试失败的原因,以免下次犯同类错误。5、运行结果截屏及说明5.1运行结果截屏游戏初始画面,用户输入自己的选择进入相应的模块: 图5-1选择单人模式,系统自动生成4个数字由玩家来猜,只有8次机会: 图5-2在游戏的过程中还会出现系统提示,其中A表示数字相同且位置相同,B表示数字相同而位置不同: 图5-3再输入的过程中,如果输入的数字不符合要求,会有系统提示: 图5-4这个游戏还可以选择双人模式,由2个人来玩。其中一个人输入数字请另一个人来猜: 图5-5在数字设置完成后,会转向下一界面:图5-6如果对游戏有什么不明白的,还可以选择进

7、入游戏帮助界面: 图5-7在用户选择离开游戏的时候还有一次确认,确保用户不是失误操作: 图5-85.2使用说明系统为玩家提供猜数字游戏的主体功能,由系统自动产生或由用户自己设置4个随机排列的整数,并给用户8次机会猜测数字的数值和排列顺序。如果用户在8次之内没有猜出正确的结果,则提示用户游戏失败,否则提示用户猜数字成功。猜数字游戏软件的总体目标是按照特定游戏规则为用户提供一个方便友好的游戏界面,并且提供相应的帮助功能。游戏规则如下:游戏软件随机产生4个数字,但不显示,给用户提供输入提示符,让用户猜4个数字的值和位置顺序。如果数字值和位置顺序均正确,则猜数字成功。或者由用户自己设置4个数字,请他人

8、来猜,游戏规则不变。玩家有8次猜数字的机会,如果在8次之内仍末猜出正确的数字值和数字位置顺序,则提示用户游戏失败。一旦玩家在8次的次数限制内猜出正确的数字值和位置顺序,则赢得游戏。在进行游戏的过程中,系统会根据用户输入的数字给出相应提示,也就是数值、位置均正确的数字个数和数值正确但位置不正确的数字个数。在运行本游戏软件的时候,在主菜单中可以找到游戏帮助选项,选择后直接进入帮助信息界面,用户也可以从那里了解到游戏规则和使用方法。6、心得体会C语言课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。在如今高度计算机化

9、的社会下,电脑编程在计算机领域已尤为重要,扮演着一个不可或缺与替代的角色。经过一周的C语言课程设计,我不但实践了课本的知识,还制作了自己的小程序,更重要的是自己对C语言有了更深入的了解。在实践中,深刻体会到只有经过调试程序,我们才能掌握正确的语法知识及把解决问题的方法用程序语言来表达。在设计程序的过程中不仅使我掌握了c语言程序设计基本技能,同时也增长了翻阅有关文献的能力,加强了实践能力及自学能力,培养了分析问题 和解决问题的能力。 想起这次课程设计的这些日子,至今我仍感慨颇多。以前上课时学的都是一些最基本的东西,觉得很枯燥无味。但当自己能把所学的知识转换为有用的东西时,心中却不知何时有了一种莫

10、名的动力,在电脑前面一坐就是好几个小时。或许这就是有压力才有动力吧!在整整一星期的日子里,面对一件新事物,从理论到实践,可以说是苦多于甜。这一周的课程设计,不仅使我巩固了以前所学过的知识,更使我获得了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从实践中得出结论,才能真正掌握好所学知识,才能够实现理论到使用的升华!毕竟这是我进行的第一次课程设计,所以在该过程中遇到问题,可以说是数不胜数。此外,在设计的过程中发现了自己对以前所学过的知识理解得不够透彻、掌握得不够牢固的不足之处。好的学习方法在学习

11、中很多时候都起着至关重要的作用!尤其是在这次课程设计过程中,深深地体会到,善于总结是学习过程中不可缺少的重要的一个环节。每次完成一个编程任务,完成一段代码,都应当有目的的跟踪该程序的调试和运行状况,随时总结,找到自己的错误与不足之处,这样所编写的程序才能逐步提高。就如生活那样,汗水预示着结果也见证着收获。直到实际动手做,我才真正领略到“一份耕耘,一份收获。”这一句话的真正含义。这次的c语言设计,对我们而言,知识上的收获重要,但是在一个团队间的团结合作的幕幕更让我们记忆终生。挫折是一份财富,经历是一份拥有。虽然这些日子很短暂但我相信这次实际操作必会成为我人生路上的一段美好的回忆!最后我想对给过我

12、帮助的所有同学和各位指导老师表示忠心的感谢!7、附录7.1源代码#include #include #include #include #include /*定义变量及函数*/void c_input(char *str) int i,j;/*检测输入是否合法*/input:for(i=0;i4;i+) stri=getch(); putchar(stri); putchar(n); for(i=0;i4;i+) if(stri9) printf(输入错误,请重新输入:); goto input; for(j=0;ji;j+) if(stri=strj) printf(输入错误,请重新输入:)

13、; goto input; /*显示帮助信息*/void c_help() system(cls); printf(tttt游戏帮助); printf(nn 本游戏有两种模式。第一种是由电脑自动生成四个不重复的数字,由玩家来猜;第二种); printf(n是由玩家自己设置四个不重复的数字,请他人来猜,在主菜单中选择【双人模式】可进入第); printf(n二种模式。游戏开始后,玩家输入四个不重复的数字,输入后会有提示XAYB, X表示有几个); printf(n数字与答案数字相同且位置相同。 Y表示有几个数字与答案数字相同但位置不正确。例如:); printf(n答案数字是3792,如果输入9

14、786,则会提示1A1B。玩家总共有八次机会来猜数字。); printf(nnntttttt祝您游戏愉快!); printf(nn请按任意键返回主菜单); getch(); return;/*游戏部分*/*定义变量及函数*/void c_game(const char *temp) int i,j,ci; char in4; char out5=0A0B; for(ci=0;ci8;ci+) printf(第 %d 次输入,你总共有8次机会:,ci+1); c_input(in); for(i=0;i4;i+) if(ini=tempi) out0+; else for(j=0;j4;j+)

15、if(ini=tempj) out2+; printf(%sn,out); if(strcmp(out,4A0B)=0) printf(恭喜你,你赢了!); printf(n请按任意键返回主菜单); getch(); return; out0=0; out2=0; printf(很遗憾,你输了,再接再厉哦!); printf(n请按任意键返回主菜单); getch();void c_rand() int i,j; char data=0123456789; char temp4; system(cls); printf(tttt单人模式nn); /*电脑自动生成4个不重复数字*/ for(i=

16、0;i4;i+) j=rand()%(10-i); tempi=dataj; dataj=data10-i-1; c_game(temp);void c_printf() char temp4;/*用户自己设置数字请他人来猜*/ system(cls); printf(tttt双人模式nn); printf(请输入测试数据:); /*检测用户输入的数据是否符合要求*/ c_input(temp); /*系统根据玩家设定的数据展开游戏*/ system(cls); printf(tttt双人模式nn); c_game(temp);/*主目录*/void main() srand(time(NUL

17、L); while(1) char choice; system(cls); printf(nn猜数字游戏); printf(ntttt1、【单人模式】n); printf(ntttt2、【双人模式】n); printf(ntttt3、【游戏帮助】n); printf(ntttt4、【退出游戏】n); printf(n请选择(14) : ); choice=getchar(); switch(choice) case 1:c_rand();break; case 2:c_printf();break; case 3:c_help();break; case 4: char ch; printf(你确定要退出吗?(y/n):); fflush(stdin); ch=getchar(); if(ch=y|ch=Y)exit(0); else continue ; 7.2参考文献C语言程序设计案例教程 张基温 清华大学出版社课程设计与系统开发案例 伍俊良 清华大学出版社 C程序设计 (第四版) 谭浩强 清华大学出版社8、评分表计算机与通信学院课程设计评分表课程名称: C语言程序设计 项 目评 价设计方案的合理性与创造性设计与调试结果设计说明书的质量答辩陈述与回答问题情况课程设计周表现情况综合成绩 教师签名: 日 期:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1