資源簡介
用C++實現的華容道游戲,直接編譯直接運行,如果有bug請及時跟我說明哦!謝謝啦 (^_^)
代碼片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#include
#include
using?namespace?std;
int?a[4][4];
string?number(int?x)
{
stringstream?tmp;
string?s;
tmp?< tmp?>>?s;
return?s;
}
int?getmove()
{?
if?(?kbhit()?)
{
int?x;
x?=?getch();
if?(?x?==?224?)
{?
x?=?getch();
if?(?x?==?72?)?return?1;
if?(?x?==?80?)?return?2;
if?(?x?==?75?)?return?3;
if?(?x?==?77?)?return?4;
}
}
return?-1;
}
bool?moving(int?x)
{
int?key;
switch?(x)
{
case?1:
for?(?int?i?=?0?;?i?3?;?i++?)
for?(?int?j?=?0?;?j?4?;?j++?)
if?(?a[i][j]?==?0?)
{
swap(a[i][j]?a[i?+?1][j]);
return?1;
}
return?0;?
case?2:
for?(?int?i?=?1?;?i?4?;?i++?)
for?(?int?j?=?0?;?j?4?;?j++?)
if?(?a[i][j]?==?0?)
{
swap(a[i][j]?a[i?-?1][j]);
return?1;
}
return?0;
case?3:
for?(?int?i?=?0?;?i?4?;?i++?)
for?(?int?j?=?0?;?j?3?;?j++?)
if?(?a[i][j]?==?0?)
{
swap(a[i][j]?a[i][j?+?1]);
return?1;
}
return?0;
case?4:
for?(?int?i?=?0?;?i?4?;?i++?)
for?(?int?j?=?1?;?j?4?;?j++?)
if?(?a[i][j]?==?0?)
{
swap(a[i][j]?a[i][j?-?1]);
return?1;
}
return?0;
case?-1:
return?0;
}
}
void?display(int?step?int?min?int?sec)
{
system(“cls“);
printf(“????????????????????????????????????????????????????????華容道??陳銘凱制作\n????????????????????????????????????????????????????|-----------------------|\n“);?
for?(?int?i?=?0?;?i?4?;?i++?)?
{?
printf(“????????????????????????????????????????????????????“);?
for?(?int?j?=?0?;?j?4?;?j++?)?
{?
if?(?a[i][j]?==?0?)?printf(“|?????“);
else?printf(“|%3d??“?a[i][j]);
if(?j?==?3?)?printf(“|\n????????????????????????????????????????????????????|-----------------------|\n“);?
}?
}?
printf(“??????
- 上一篇:C++復習資料精華
- 下一篇:Steffensen.cpp
評論
共有 條評論