欢迎来到天天文库
浏览记录
ID:33116932
大小:82.80 KB
页数:7页
时间:2019-02-20
《c++课程设计:黑白棋游戏》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、课程设计报告课程名称:面向对象程序设计C++设计题目:黑白棋游戏专业:计算机科学与技术姓名:学号:指导教师:李晓虹2015年1月10日一、需求分析关于黑白棋的功能描述如下:运行游戏并进行初始化工作,将整个游戏区域分成纵向和横向扩展的若干个小方块,并且这些小方块是由黑棋和白棋分布于游戏区域的不同位置。玩家可以通过选取方格来对它们进行下棋的操作,直到游戏结束。游戏的整体运行效果如图1.1。图1.1二、总体设计2.1、类设计这个游戏的主要类是游戏模式类,类名为COthelloDlg。代码如下:classCOthelloDlg:publicCDialog{//Construc
2、tionpublic:voidGameStart();voidPlayBackMusic(BOOLbCheck);voidInitMenu();COthelloDlg(CWnd*pParent=NULL);//standardconstructorintm_nBlackCount;//黑¨²子Á¨®个?数ºyintm_nWhiteCount;//白ã¡Á子Á¨®个?数ºyCChessBoardm_chess;//棋?盘¨¬对?象¨®//DialogData//{{AFX_DATA(COthelloDlg)enum{IDD=IDD_OTHELLO_DIALOG};//N
3、OTE:theClassWizardwilladddatamembershere//}}AFX_DATA//ClassWizardgeneratedvirtualfunctionoverrides//{{AFX_VIRTUAL(COthelloDlg)protected:virtualvoidDoDataExchange(CDataExchange*pDX);//DDX/DDVsupport//}}AFX_VIRTUAL//Implementationprotected:HICONm_hIcon;//Generatedmessagemapfunctions//{{AF
4、X_MSG(COthelloDlg)virtualBOOLOnInitDialog();afx_msgvoidOnSysCommand(UINTnID,LPARAMlParam);afx_msgvoidOnPaint();afx_msgHCURSOROnQueryDragIcon();afx_msgvoidOnAbout();afx_msgvoidOnExitGame();afx_msgvoidOnGameStart();afx_msgvoidOnHelp();afx_msgvoidOnLevelHigh();afx_msgvoidOnLevelLow();afx_m
5、sgvoidOnLevelNor();afx_msgvoidOnPlayMusic();afx_msgvoidOnBackBtn();//}}AFX_MSGafx_msgvoidOnRecalc(WPARAMwParam,LPARAMlParam);DECLARE_MESSAGE_MAP()};//{{AFX_INSERT_LOCATION}}//MicrosoftVisualC++willinsertadditionaldeclarationsimmediatelybeforethepreviousline.#endif//!defined(AFX_OTHELLOD
6、LG_H__DAC0C8C2_DDB6_4DA7_A56E_440CDF9A626B__INCLUDED_);2.2、程序源代码及注释 #include "graphics.h" /*图形系统头文件*/ #define LEFT 0x4b00 /*光标左键值*/ #define RIGHT 0x4d00 /*光标右键值*/ #define DOWN 0x5000 /*光标下键值*/ #define UP 0x4800 /*光标上键值*/ #define ESC 0x011b /* ESC键值*/ #define ENTER 0x1c0d /* 回车键值*/ in
7、t a[8][8]={0},key,score1,score2;/*具体分数以及按键与存放棋子的变量*/ char playone[3],playtwo[3];/*两个人的得分转换成字符串输出*/ void playtoplay(void);/*人人对战函数*/ void DrawQp(void);/*画棋盘函数*/ void SetPlayColor(int x);/*设置棋子第一次的颜色*/ void MoveColor(int x,int y);/*恢复原来棋盘状态*/ int QpChange(int x,int y,int z);/*判断棋
此文档下载收益归作者所有