- 8
- 0
- 约6.71千字
- 约 10页
- 2017-06-07 发布于湖北
- 举报
数独游戏课程设计报告(刘杉,汤存波)剖析
学生课程设计报告
课程设计题目:
专 业 名 称: 软件工程
学 号:201224060207、201224060216
学 生 姓 名:刘杉、汤存波
教 师 姓 名: 揣锦华
起 止 日 期: 2013年6月17日至6月21日
2013 年 6 月 21 日
一、课程设计内容
数独字谜游戏:数独字谜游戏是在一个9x9的正方形内,给出一定的数字,让玩家在剩余的空格之内填写数字,最终使每一行,每一列,每一个3x3的小正方形都只有1-9,并且不重复,这样玩家就算通关的一款游戏。
技术路线
是基于vc++6.0环境下所开发的程序,
加入了PlaySound()函数,设置了游戏的背景音乐。
加入了cstdlib,ctime头文件,运用了以系统时间为种子的随机函数。
接收用户键盘输入信息,实现进入游戏,输入坐标,输入数字等功能。
运用的类型转换,将char型数组转换为int型数组。
设计与实现
1.游戏基本功能:
游戏有难度选择,通关后继续游戏和退出游戏的界面。
游戏在选择难度后,会在布满数字的9x9的正方形宫格内随机生成一些空白字符,根据选择难度的不同,生成的空白字符数目会不同,空白字符越多,难度越大。
通过正方形宫格外的坐标,用键盘输入想输入数字的坐标和数字,随后会显示出输入数字后新宫格,再重复以上操作,直到每一行,每一列,每一个3x3的宫格内只有1-9这9个数字并且不重复,游戏就算通关。
游戏通关后,可以选择继续游戏,并且挑战更大难度,也可以选择退出游戏,下次再战。
2.函数定义和声明
头文件
#include iostream
#include cstdlib //随机函数
#include ctime //系统时间
#include pcc32.h //彩色文本
#include mmsystem.h
#pragma comment(lib, pcc32_vc6.lib)
#pragma comment(lib,winmm.lib)
using namespace std;
(2)函数声明
bool yz(char b[9][10]) //验证子函数,验证每一行,每一列,每一个3x3宫格都是1-9.3.主函数int main()
void main()
{
PlaySound((char*)kanong.wav,NULL,SND_ASYNC|SND_LOOP);
char a[9][10]={{493761528},
{582943167},
{716528349},
{139674852},
{658219734},
{247835691},
{975382416},
{821456973},
{364197285}};
int b[81],c[81],q=0,p=0;
int k,x;
do{
setTextColor(14);
cout *^0^*欢迎进入数独游戏*^0^*\n;
setTextColor(10);
cout请选择游戏的难易级别为?(3—高,2—中,1—低):endl;
cink;
switch(k)
{
int i,j,m,n,gs;
case 1:
srand((int)time(0));
for(gs=0;gs30;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[30]=10,c[30]=10;
do
{
setTextColor(15);
cout 1 2 3 4 5 6 7 8 9endl;
setTextColor(3);
cout __________________endl;
cout ‖----------------------------------‖endl;
for(i=0;i3;i++)
{
setTextColor(15);
cout (i+1)
原创力文档

文档评论(0)