论文
【摘要】 这次的课题是网络五子棋的开发。五子棋作为一个棋类竞技运动,在民间十分流行,这次开发的目的是使这个程序不光光有与电脑对战的功能,更有在网络连接之后人与人在网上对战,以及观看电脑和电脑对战的演示功能。并且,我们也可以在游戏之后,保存棋局,在之后可以随时的打开以前的棋局,观看战局的情况。
本软件在网络开发,主要是使用WINSOCK,使软件只要使用IP就能连接到所对应的计算机上去,这样就可以让两台计算机互相连接,让使用者可以联机对战。
在界面设计上主要是一目了然为主,菜单能正确有效的表明其所能表达的功能,而程序内部使用了一个链表,使得每盘的棋谱都能够正确的保存下面,以方便将来战术的研究。对于刚学五子棋的新手,提供了不同难度的选择并提供了电脑与电脑对战的
演示,
学习最基本的规则。
本设计主要用VC++ 6.0开发,这是一个基于WINDOWS的面向对象的开发工具,再嵌入WinSock类,增加该设计对网络的支持。
【关键词】 五子棋 网络 界面 VC++ 6.0
目 录
引 言 1
第一章 概述 2
1.1问题的提出 2
1.1.1网络五子棋的发展状况 2
1.1.2
网络五子棋的一些问题 2
1.1.3 网络五子棋的发展方向 2
1.2 解决方案 3
1.3 开发工具和应用平台 3
1.3.1 面向对象程序概述 3
1.3.2 OOP的特点 4
1.4.4 利用Visual C++/MFC开发Windows程序的优势 4
1.4.5 MFC的概述 5
1.5 Windows编程简介 8
1.5.1 Windows的发展历史 8
1.5.2 Windows操作系统的特点 9
1.5.3 Windows应用程序设计的特点 9
第二章 系统分析 20
3.1 系统可行性 20
3.2 系统应该达到的标准: 20
3.3 系统平台选择 20
3.4 需求分析 20
第三章
系统模块设计 22
3.1 模块组织图 22
3.2系统流程图 22
3.3 模块功能介绍 23
第四章 实现技术 24
4.1
通信技术 24
4.1.1 C/S模式 24
4.1.2 Visual C++与网络编程-----Socket支持 24
4 .1 .3基于WINDOWS SOCKET的应用开发介绍 24
4.1.4 WinSock类的概述和描述 25
4. 1. 5 WINSOCK API主要函数简介 26
4.2 软件界面设计 27
4.3 基本的AI算法 27
4.3.1 算法的构想 27
4.3.2 算法的流程图 29
4.3.3 算法的总结和提高方法 29
第五章 数据结构和核心代码 30
5.1 概述 30
5.2 主要的数据结构(类)描述 30
5.3主要代码分析 32
5.3.1
计算机对战算法 32
5.3.2 网络连接 35
第六章 软件部分 36
6.1 启动界面 36
6.2 游戏 37
6.3 选项 38
6.4 帮助 38
结 论 39
致 谢 40
参考文献 41
引 言
五子棋是起源于中国古代的传统黑白棋种之一。现代五子棋日文称之为“连珠”,英译为“Renju”,英文称之为“Gobang”或“FIR”(Five in a Row的缩写)
,亦有“连五子”、“五子连”、“串珠”、“五目”、“五目碰”、“五格”等多种称谓。
五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。五子棋既有现代休闲的明显特征“短、平、快”,又有古典哲学的高深学问“阴阳易理”;它既有简单易学的特性,为人民群众所喜闻乐见,又有深奥的技巧和高水平的国际性比赛;它的棋文化源渊流长,具有东方的神秘和西方的直观;既有“场”的概念,亦有“点”的连接。它是中西文化的交流点,是古今哲理的结晶。
五子棋起源于古代中国,发展于日本,风靡于欧洲。对于它与围棋的关系有两种说法,一说早于围棋,早在“尧造围棋”之前,民间就已有五子棋游戏;一说源于围棋,是围棋发展的一个分支。在中国的文化里,倍受人们的青睐。古代的五子棋的棋具与围棋相同,纵横各十七道。五子棋大约随围棋一起在我国南北朝时先后传入朝鲜、日本等地。据日本史料文献介绍,中国古代的五子棋是经由高丽(朝鲜),于1688年至1704年的日本元禄时代传到日本的。到日本明治32年(公元1899年),经过公开征名,“连珠”这一名称才被正式确定下来,取意于“日月如合壁,五星如连珠”。从此,连珠