欢迎来到天天文库
浏览记录
ID:50396308
大小:47.92 KB
页数:34页
时间:2020-03-05
《数据结构课程设计实验报告.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、仲恺农业工程学院课程设计报告课程名称:数据结构院(系):计算机科学与工程专业:计算机科学与技术班级:计算机102班学号:201010214203姓名:指导老师:成筠目录题目(一)需求和规格说明:问题描述,即题目要解决的问题是什么(二)算法设计(包括程序流程图,如函数功能、入口及出口参数说明,函数调用关系描述等)(三)详细设计(源程序清单,要包括足够的注释)(四)调试分析(包括调试数据与调试结果)(五)课程设计总结(包括程序中遇到的问题及解决方案,以及课程设计收获)题目斗地主游戏(简单版)(一)需求和规格说明:问题描述,即题目要解决的问题是什么系统基本要求:具备基本的界面形式
2、及操作功能具备基本的AI能力解决问题:(1)以MFC作为程序框架(2)图片以位图的形式出现,并进行基本的界面操作(3)以链表及广义表等形式(C++封装好的),进行数据的操作(4)设计了简单的AI函数,用以对游戏的进行,判断等(二)算法设计(包括程序流程图,如函数功能、入口及出口参数说明,函数调用关系描述等)整体框架CAboutDlg类CMainFranme类C~~App类C~~Doc类C~~View类MFC单文档程序的基本框架作为整个程序的框架结构主要用到View类Doc类也用到一些注:此处只出现自定义函数,且具体操作省略Doc类中在构造函数中对委位图信息进行了初次读取Vi
3、ew类中小功能函数Choose_Brand()进行数据的删减,一般与continuation联用continuation()得到制定牌型的开始号码联用seek_max()machine()在对应的牌组里面找出该下的牌是否连续OnDraw()OnButton1Clicked()split()拆分关联器,得到需要的部分用于order函数操作order()判断处理后的牌是否连续judge_game()判断点击输出的值是否正确,获得当前所下的牌型,用Brand_size存储OnLButtonDown():响应鼠标左键点击的消息,传递坐标传递坐标,用以判断JudgeRect()判断出
4、所点击的地方是否为卡牌位图OnDraw():窗口重绘时调用,桌面表示都在这里实现调提供数据,在桌面上表示提供数据,在桌面上表示OnButton2Clicked():响应第二个按钮点击的消息,表示不出,同时,对哪判断哪方出牌(即两个机器方),同时出牌OnButton1Clicked():响应第一个按钮点击的消息,表示是否出牌,同时判断所出牌是否正确点击第二个按钮OnCreate():窗口创建时调用,在桌面上显示两个按钮点击第一个按钮(一)详细设计(源程序清单,要包括足够的注释)斗地主游戏(简单版)源程序(部分)如下:注:由于具体框架为程序自主产生,在这里不再出现,只列出Vie
5、w类函数,程序中绿色程序代码为实验中出错的部分或者验证部分//试验品View.cpp:C试验品View类的实现//#include"stdafx.h"#include"试验品.h"#include"试验品Doc.h"#include"试验品View.h"#include"algorithm"#include"Ctime"#include"vector"#ifdef_DEBUG#definenewDEBUG_NEW#endif//C试验品ViewIMPLEMENT_DYNCREATE(C试验品View,CView)BEGIN_MESSAGE_MAP(C试验品View,CVie
6、w)//标准打印命令ON_COMMAND(ID_FILE_PRINT,&CView::OnFilePrint)ON_COMMAND(ID_FILE_PRINT_DIRECT,&CView::OnFilePrint)ON_COMMAND(ID_FILE_PRINT_PREVIEW,&CView::OnFilePrintPreview)ON_WM_LBUTTONDOWN()ON_WM_CREATE()ON_BN_CLICKED(IDB_BUTTON1,OnButton1Clicked)ON_BN_CLICKED(IDB_BUTTON2,OnButton2Clicked)END_
7、MESSAGE_MAP()//C试验品View构造/析构C试验品View::C试验品View():m_point(0),width(0),height(0),x_machine(0),current_player(0){//TODO:在此处添加构造代码for(intj=0;j<20;j++){m_key[j]=j+1;}for(inti=3;i<16;i++){for(intj=0;j<4;j++)vec.push_back(i);}vec.push_back(53);vec.push_back(54);srand
此文档下载收益归作者所有