资源描述:
《c语言数独字谜游戏课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、学生课程设计报告课程设计题目:数独字谜游戏专业名称:软件工程2013年6月21日一、课程设计内容数独字谜游戏:数独字谜游戏是在一个9x9的正方形内,给出一定的数字,让玩家在剩余的空格之内填写数字,最终使每一行,每一列,每一个3x3的小正方形都只有1-9,并且不重复,这样玩家就算通关的一款游戏。二、技术路线是基于vc++6.0环境下所开发的程序,加入了PlaySound()函数,设置了游戏的背景音乐。加入了,头文件,运用了以系统时间为种子的随机函数。接收用户键盘输入信息,实现进入游戏,输入坐标,输入数字等功能。运用的类型转换,将char型数组转换
2、为int型数组。二、设计与实现1.游戏基本功能:游戏有难度选择,通关后继续游戏和退出游戏的界面。游戏在选择难度后,会在布满数字的9x9的正方形宫格内随机生成一些空白字符,根据选择难度的不同,生成的空白字符数目会不同,空白字符越多,难度越大。通过正方形宫格外的坐标,用键盘输入想输入数字的坐标和数字,随后会显示出输入数字后新宫格,再重复以上操作,直到每一行,每一列,每一个3x3的宫格内只有1-9这9个数字并且不重复,游戏就算通关。游戏通关后,可以选择继续游戏,并且挑战更大难度,也可以选择退出游戏,下次再战。2.函数定义和声明(1)头文件#include#inc
3、lude//随机函数#include//系统时间#include"pcc32.h"//彩色文本#include#pragmacomment(lib,"pcc32_vc6.lib")#pragmacomment(lib,"winmm.lib")usingnamespacestd;(2)函数声明boolyz(charb[9][10])//验证子函数,验证每一行,每一列,每一个3x3宫格都是1-9.3.主函数intmain()voidmain(){PlaySound((char*)"kanong.wav",NULL,SND_A
4、SYNC
5、SND_LOOP);chara[9][10]={{"493761528"},{"582943167"},{"716528349"},{"139674852"},{"658219734"},{"247835691"},{"975382416"},{"821456973"},{"364197285"}};intb[81],c[81],q=0,p=0;intk,x;do{setTextColor(14);cout<<"*^0^*<<<<<欢迎进入数独游戏>>>>>*^0^*";setTextColor(10);cout<<"请选择游戏的难易级别为?(3—高,2—中,1
6、—低):"<>k;switch(k){inti,j,m,n,gs;case1:srand((int)time(0));for(gs=0;gs<30;gs++)//随机在已经布满的9x9宫格里,运用随机数,并且以系统时间为参数,随机产生空白字符,{//低难度的数独,每次产生的空白字符为22个左右,m=(int)(10*rand()/(RAND_MAX+1.0));n=(int)(10*rand()/(RAND_MAX+1.0));a[m][n]='';b[q]=m;//将随机产生的空白字符的坐标分别存在b,c两个数组中.c[p]=n;q++;p++;}b[3
7、0]=10,c[30]=10;do{setTextColor(15);cout<<"123456789"<8、";for(q
9、=0,p=0;q<31,p<31;q++,p++)//将随机的空白字符单独表示出来,并且以另一种颜色输出表示.{if(i==b[q]&&j==c[p]){setTextColor(14);cout<