利用VC++6.0的depends工具打开dll动态链接库文件及函数封装
2012-11-18 15:21:54 来源:WEB开发网核心提示:void move(Sqstack &A,Sqstack &B,Sqstack &C,char (*b)[16],char (*a)[16],char X,char Y){ int xu,zbj; switch(X) // 匹配移动盘子代号 { case 'A':switch(Y){case
void move(Sqstack &A,Sqstack &B,Sqstack &C,char (*b)[16],char (*a)[16],char X,char Y)
{
int xu,zbj;
switch(X) // 匹配移动盘子代号
{
case 'A':
switch(Y)
{
case 'B':{
pop(A,xu,zbj); // 弹出对应盘子的序数和横行位置
huatu(A,B,b,a,16,zbj,40,xu);
p++; // 全局变量加1,表示移动了一步
};break;
case 'C':{
pop(A,xu,zbj);
huatu(A,C,b,a,16,zbj,64,xu);
p++;
};break;
};break;
case 'B':
switch(Y)
{
case 'A':{
pop(B,xu,zbj);
huatu(B,A,b,a,40,zbj,16,xu);
p++;
};break;
case 'C':{
pop(B,xu,zbj);
huatu(B,C,b,a,40,zbj,64,xu);
p++;
};break;
};break;
case 'C':
switch(Y)
{
case 'A':{
pop(C,xu,zbj);
huatu(C,A,b,a,64,zbj,16,xu);
p++;
};break;
case 'B':{
pop(C,xu,zbj);
huatu(C,B,b,a,64,zbj,40,xu);
p++;
};break;
}
}
}
{
int xu,zbj;
switch(X) // 匹配移动盘子代号
{
case 'A':
switch(Y)
{
case 'B':{
pop(A,xu,zbj); // 弹出对应盘子的序数和横行位置
huatu(A,B,b,a,16,zbj,40,xu);
p++; // 全局变量加1,表示移动了一步
};break;
case 'C':{
pop(A,xu,zbj);
huatu(A,C,b,a,16,zbj,64,xu);
p++;
};break;
};break;
case 'B':
switch(Y)
{
case 'A':{
pop(B,xu,zbj);
huatu(B,A,b,a,40,zbj,16,xu);
p++;
};break;
case 'C':{
pop(B,xu,zbj);
huatu(B,C,b,a,40,zbj,64,xu);
p++;
};break;
};break;
case 'C':
switch(Y)
{
case 'A':{
pop(C,xu,zbj);
huatu(C,A,b,a,64,zbj,16,xu);
p++;
};break;
case 'B':{
pop(C,xu,zbj);
huatu(C,B,b,a,64,zbj,40,xu);
p++;
};break;
}
}
}
void hrt(Sqstack &e,Sqstack &f,Sqstack &g,char (*b)[16],char (*a)[16],int n,char A,char B,char C)
{
if(n == 1)
{
gotoxy(28,3);
printf("(第%d步,第%d个盘): %c->%c ",p,1,A,C); // 动态显示移动盘子和步数
move(e,f,g,b,a,A,C);
}
else
{
hrt(e,f,g,b,a,n-1,A,C,B); // 递归调用
gotoxy(28,3);
printf(" ");
gotoxy(28,3);
printf("(第%d步,第%d个盘): %c->%c ",p,n,A,C);
move(e,f,g,b,a,A,C);
hrt(e,f,g,b,a,n-1,B,A,C);
}
}
{
if(n == 1)
{
gotoxy(28,3);
printf("(第%d步,第%d个盘): %c->%c ",p,1,A,C); // 动态显示移动盘子和步数
move(e,f,g,b,a,A,C);
}
else
{
hrt(e,f,g,b,a,n-1,A,C,B); // 递归调用
gotoxy(28,3);
printf(" ");
gotoxy(28,3);
printf("(第%d步,第%d个盘): %c->%c ",p,n,A,C);
move(e,f,g,b,a,A,C);
hrt(e,f,g,b,a,n-1,B,A,C);
}
}
更多精彩
赞助商链接