1《C语言程序设计》课程设计说明书设计题目:猜数游戏班级:C语言课程设计2班学号:姓名:完成日期:2012.6.20目录21.设计任务........................................................................................................................................22.需求分析........................................................................................................................................42.1功能需求.............................................................................................................................42.2性能需求.............................................................................................................................43.设计算法........................................................................................................................................44.系统模块图....................................................................................................................................55.模块说明........................................................................................................................................65.1构建整体框架....................................................................................................................65.2登陆系统............................................................................................................................65.3主菜单系统........................................................................................................................75.4游戏计算部分....................................................................................................................76.用户使用说明(部分操作截图)................................................................................................86.1进入系统............................................................................................................................86.2登陆系统............................................................................................................................86.3主菜单系统........................................................................................................................96.4游戏介绍............................................................................................................................96.5游戏帮助............................................................................................................................96.6游戏界面........................................................................................................................106.7退出游戏..........................................................................................................................107.测试结果....................................................................................................................................118.设计小结....................................................................................................................................119.参考文献....................................................................................................................................1210.附录..........................................................................................................................................121.设计任务设计题目:猜数游戏(掌握程序结构及随机函数应用)3程序说明:游戏的开始由机器产生一个随机数(1~100之间,用库函数random(),用法见后面的说明),然后游戏者在程序的提示下猜数,若输入的数比这个数大,程序提示:YouranswerisHIGH,tryagain.,否则,程序提示:YouranswerisLOW,tryagain.,直到猜对为止。程序可实现连续猜数,直到游戏者退出。程序输出要求:累计游戏者猜对一个数所需次数n,当n=7时,给出“Congratulation”字样;当7<n<15时,给出“Icanbetyoucandoitbetter.”;当n=15时,用exit(0)库函数退出程序。附:随机数发生器函数random()用法函数原型:intrandom(intnum);程序例:#includestdlib.h/*包含库函数random()的头文件*/#includestdio.h/*printsarandomnumberintherange0to99*/intmain(void){intn;randomize();/*初始化随机数发生器*/n=random(100);/*产生一个0-100的随机数。*/printf(Randomnumberinthe0-99range:%d\n,n);;}42.需求分析2.1功能需求本系统是一款小型数学游戏软件,提供简单的游戏功能即可。主要功能是通过有趣的数学游戏锻炼逻辑思维能力,使用户可以感受到数学的巨大魅力。2.2性能需求要求系统稳定可靠,各方面功能齐全,操作简单易懂,达到打开即用的效果!3.设计算法开始调用random函数产生随机值K键盘输入g值并和k比较Ifgk输出hign返回重新输入Ifgk输出low返回重新输入5注:算法的整体思路是通过计算机随机生成一个数字,再通过键盘输入的数字与产生的随机数字进行比较!4.系统模块图本游戏小系统主要由封面、登陆系统和主菜单3个部分组成。其中菜单部分又细分为游戏介绍、帮助、开始游戏和退出游戏四个部分。系统模块图如下所示:如果g=k答案正确,退出系统!猜数游戏封面登陆系统主菜单65.模块说明5.1构建整体框架首先构造出整体框架,包含头文件、定义变量、声明自定义函数、输出封面等。头文件:#includestdio.h#includestdlib.h#includetime.h#definerandom(x)(rand()%x);自定义函数声明:intzhucaidan();voidyouxijieshao();voidbangzhu();voidkaishiyouxi();inttuichu();5.2登陆系统登陆系统提供使用者输入账号密码验证,输入错误则需重新输入,输入正确则跳入主菜单。此处采用do-while语句循环,游戏介绍游戏帮助开始游戏退出游戏7直到账号密码正确(初始密码和账号相同)。若账号密码正确则调用自定义主菜单函数。进入主菜单采用switch语句进行功能选择。5.3主菜单系统主菜单分为4个小的分支,主要进行游戏介绍、游戏帮助以及开始游戏等部分。提供给使用者一个进行游戏的平台,也可以对不懂得如何使用此系统的使用者进行简单的介绍。5.4游戏计算部分计算部分原理见第三部分设计算法。此部分为程序计算核心部分,进行数据的处理和比较。此处采用random函数进行初始值随机赋值srand((int)time(0));k=random(100);再通过大小比较得出结果。86.用户使用说明(部分操作截图)6.1进入系统6.2登陆系统96.3主菜单系统6.4游戏介绍6.5游戏帮助106.6游戏界面6.7退出游戏117.测试结果程序能满足题目要求,测试过程未发现错误。可以根据使用输入数据给出正确提示。但程序比较简单,智能满足基本的要求,扩展方面不够!8.设计小结在此次程序设计过程中,主要困难来自整体结构的构思,封面、登陆系统、游戏算法等部分程序都可以设计出来。但是在各个部分的连接方面遇到一些困难,对于程序整体结构不是很清楚。总的来说,对自己也是一个小小的挑战。课程设计与平时C语言作业有比较大的差别,平时作业主要是针对一个问题设计一种算法,方法比较固定,算法也比较成熟,不用自己去深入思考算法和结构问题。而程序设计对设计者的整体能力要求比较高,不仅要求设计者对VC软件有种足够的认识,还要求设计者有自己的思想,能够对题