数独游戏九宫格

初步定义:使用数据结构的方式实现九宫格数独游戏

 

#include"stdio.h" //标准输入输出头文件
#include"conio.h" //包含getch()的头文件
#include"stdlib.h" //包含rand()的头文件
#include"assert.h" //包含assert()的头文件
#include"time.h" //包含srand()的头文件

//五个全局变量数组
int a[10][10];//用来接收输入数据的数组
int sd[82];//处理题目以及保存最终结果
int fix[82];//记录哪些位置是确定的,确定为1,否则为0
int possible[82][10];//记录所有未确定数字的可能性
int stack[82];//用来放置填入的数的栈
int t;

void make_problem()//出题函数
{
system("cls");//初始化
clssd();
random();//填9个随机值
calculate();//算出答案
hide();//遮罩,将答案中一些数值遮住
printf("\t\t\t注意:题目中0代表待填数据\n\n\t\t 按空格键输出答案,其他键退出程序\n");

int f;
do
{
f=getch()-32;
if(!f)
printAll();
else break;
}while(f);

}

void quit()
{

int i;
for(i=0;i<100;i++)
{
printf("%d\n",i);
if (i>2||i<1)
{
exit(1);
}
}
}

void main()//主函数
{
srand((unsigned)time(0));//设置时间种子为0
system("cls");//清屏
clssd();
printf("\n\t数独游戏\n\n\t1.你出题,电脑来解\n\n\t2.电脑出题,你来解\n\n\t3.退出游戏");
int i;

do
{
i=getch()-48;
switch(i)
{
case 1:solve_problem();
break;
case 2:make_problem();
break;
case 3:quit();
break;
}
}while(i>2||i<1);

}

posted @ 2015-09-21 21:43  06-王宏财  阅读(217)  评论(0编辑  收藏  举报