资源简介
用C语言编制一个由两人对奕的五子棋游戏程序。分黑子、白子。颜色相同的五个子(或横、或竖、或斜方向)连成一线者为胜。
功能要求:
1、允许玩家选择棋盘大小。
2、允许玩家选择黑子还是白子。
3、玩家既可通过鼠标来控制棋子在棋盘中的摆放位置,也可以通过键盘输入所下棋子在棋盘中的横纵坐标来确定棋子在棋盘中的摆放位置。
4、程序能显示棋盘及棋盘上棋子的分布。
5、程序能判断玩家所放棋子位置是否合法,不合法则不接受,并提示玩家,允许其重新输入。
6、程序能判断胜利与失败,并显示。
7、程序有为游戏双方计时的功能。
8、在游戏进行的每一步,程序均允许玩家选择放弃游戏或重新开始一局新游戏。如果放弃,则进一步允许玩家选择是否保存当前结果。
9、程序可将游戏当前状态(包括棋盘、棋子分布、下一步由哪一方走等)保存至文件,也可从文件中载入一盘棋。
代码片段和文件信息
#include “stdafx.h“
#include
#include
#include
#include
#include
#include
#include
#include
#undef UNICODE
#undef _UNICODE
void Create_Interface();//设置界面并进行第一次界面修改
void Create_Chessboard(int nint flag);//五子棋界面
int Create_Chess(int nint flagint xint yint judge[][15]);//画棋子
void FillCircle_Bresenham(int xint yint rCOLORREF color);//画填充圆
int Win_Judge(int nint judge[][15]int flagint xint y);//判断是否胜利
void Create_Winface(int flag);//设置胜利界面
int Max_Num(int aint bint cint d);//求最大值
void SaveFile(int judge[][15]int nint flag);//存储进度
void LoadFile(int judge[][15]int nint flag);//读取进度
void Create_Chessboard_File(int judge[][15]int nint flagint flag_face);//五子棋界面
//void Time();//倒计时功能
void SaveFile(int judge[][15]int nint flagint flag_face)//存储进度
{
FILE *fp;
int ij;
flag=flag*(-1);
fopen_s(&fp“D:\\Game_File.txt““w“);
fprintf(fp“%d “n);
fprintf(fp“%d “flag);
fprintf(fp“%d“flag_face);
fprintf(fp“\n“);
for(i=0; i<=n; i++)
{
for(j=0; j<=n; j++)
fprintf(fp“%d “judge[i][j]);
}
fclose(fp);
HWND wnd = GetHWnd();
MessageBox(wnd_T(“保存进度成功,请继续游戏。“)_T(“保存成功“) MB_OK | MB_ICONWARNING);
}
void LoadFile()//读取进度
{
int judge[15][15];
int n=0flag=0flag_face=0;
FILE *fp;
int ij;
fopen_s(&fp“D:\\Game_File.txt““r“);
fscanf(fp“%d“&n);
fscanf(fp“%d“&flag);
fscanf(fp“%d“&flag_face);
/*TCHAR s[5];
_stprintf_s(s_T(“%d“) n);
outtextxy(100 20 s);
_getch();*/
for(i=0; i<=n; i++)
for(j=0; j<=n; j++)
fscanf(fp“%d“&judge[i][j]);
fclose(fp);
Create_Chessboard_File(judgenflagflag_face);
}
void Create_Chessboard_File(int judge[][15]int nint flagint flag_face)//调用五子棋界面
{
int xy;
int i=200;
int j[15][15]={0};
int ab;
cleardevice();
IMAGE imgimg2;
loadimage(&img_T(“D:\\背景图1.jpg“));
putimage(00&img);
fillrectangle(16040640520);
loadimage(&img_T(“D:\\背景图4.jpg“)480480);
putimage(16040&img);
fillrectangle(15100145540);
loadimage(&img2_T(“D:\\背景图6.jpg“)130440);
putimage(15100&img2);
settextstyle(300_T(“楷体“));
outtextxy(20105_T(“棋盘信息“));
settextstyle(200_T(“楷体“));
fillrectangle(665440760480);
fillrectangle(665380760420);
fillrectangle(665320760360);
fillrectangle(665260760300);
outtextxy(675450_T(“返回菜单“));
outtextxy(675390_T(“保存进度“));
outtextxy(675330_T(“重新开始“));
outtextxy(675270_T(“坐标键入“));
fillrectangle(151014580);
DWORD32 start_time_blackend_time_blackuse_time_black;
DWORD32 start_time_whiteend_time_whiteuse_time_white;
DWORD32 temp_blacktemp_white;
start_time_black=GetTickCount();
start_time_white=GetTickCount();
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-11-17 11:13 五子棋小游戏\
目录 0 2018-11-17 11:13 五子棋小游戏\ConsoleApplication8\
目录 0 2018-11-17 11:13 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\
文件 42391 2018-09-13 10:57 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\ConsoleApplication8.cpp
文件 4620 2018-09-11 22:05 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\ConsoleApplication8.vcxproj
文件 1323 2018-09-11 17:25 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\ConsoleApplication8.vcxproj.filters
目录 0 2018-11-17 11:13 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\
文件 43308 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\CL.read.1.tlog
文件 2868 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\CL.write.1.tlog
文件 130 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\ConsoleApplication8.lastbuildstate
文件 5270 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\ConsoleApplication8.log
文件 97372 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\ConsoleApplication8.obj
文件 1245184 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\ConsoleApplication8.pch
文件 4298 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\cl.command.1.tlog
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
文件 2 2018-09-14 10:14 五子棋小游戏\ConsoleApplication8\ConsoleApplication8\Debug\li
............此处省略94个文件信息
- 上一篇:mfcc特征提取,c++代码实现
- 下一篇:canny边缘检测的c语言实现
相关资源
- 最大公共子图的代码实现
- GPS RINEX o文件、n文件和sp3文件c++读取
- VS2008 opencv MFC 计算米粒的个数及最大
- 外卖管理系统含界面C++代码
- LeNet-5神经网络——C源代码
- MFC基于逆波兰算法的四则运算计算器
- TeeChart绘图控件破解版TeChart.Pro.v5 -V
- C++继承、派生 代码
- c++基于OpenGL的游戏源代码
- C++打造流星雨特效源代码
- VS2010MFC利用TeeChart绘制瀑布图三维图
- 鸡啄米:VS2010MFC编程入门教程.pdf
- C语言实现最低松弛度优先算法源代码
- 基于winpcap的网络嗅探器C语言源代码
- ATM源代码用c++文件读写.zip
- C++聊天程序源程序有服务器和客户端
- 基于MFC的端口扫描器含源代码
- 扫雷源代码C++
- 在vs中仿真uc/gui的例程,摆脱vc++
- Visual Studio 2010之MFC编程
- C++飞鸽源代码、飞鸽传书源码详解、
- 组态软件设计与开发源代码.rar
- 航空订票管理系统
- MFC实现的五子棋程序,可人机对战
- c++ builder OPC通讯 源代码
- VS2008环境下C++实现Dijkstra算法,查找有
- Visual C++数字图像处理谢凤英版源代码
- c++ 小型公司管理系统
- Gerver View 源码
- 雷达代码C++
评论
共有 条评论