版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河北联合大学《软件设计基础(VB)》课程设计报告设计名称:三子棋游戏姓名:张峰学号:201006040226专业班级:10成型2班学院:冶金与能源学院设计时间:2011年5月10日到2011年6月25日设计地点:学校机房成绩:指导教师评语:成绩:指导教师签字:年月日《软件设计基础(VB)》课程设计报告第13页,共13页目录1.课程设计目的 2.课程设计任务与要求 3.课程设计说明书 4.课程设计成果 5.程序调试过程 6.设计问题的不足和改进方案 7.课程设计心得 8.附录 9.参考文献
1.课程设计目的《软件设计基础(VB)》课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖VB的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握VB这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。2.课程设计任务与要求:要求:本次课程设计利用《软件设计基础(VB)》课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。要求:1、对系统进行功能需求分析2、设计合理的数据结构和系统框架3、界面设计美观、清楚、合理4、编程简练,程序功能齐全,能正确运行5、具有一定的创新性6、说明书、流程图要清楚7、课题完成后必须按要求提交课程设计报告任务:将自己选择题目的任务要求简单填写在此处。1.三子棋为3X3的九格棋盘,由两人对弈,其中任一方先三子联成直线为胜,如九格下满双方都未有三子成线则为平局。2.基本要求:(1)要求在设计的程序中控件数组来实现。(2)完成的程序界面要美观,能够完成游戏的整个过程。3.创新要求:在基本要求达到后,进行创新设计,如增加游戏子功能等。
3.课程设计说明书=1\*GB2⑴功能描述三子棋为3X3的九格棋盘,由两人对弈,其中任一方先三子联成直线为胜,如九格下满双方都未有三子成线则为平局。⑵概要设计(1)要求在设计的程序中控件数组来实现。(2)完成的程序界面要美观,能够完成游戏的整个过程。主要写模块说明,模块结构图,系统流程图(例N-S流程图)(五号,宋体)模块结构图:根据功能分析,建立系统的体系结构,即将整个系统分解成若干子模块,用框图表示各功能模块之间的接口关系(如下图)。导入窗口导入窗口开始模块开始模块判定模块游戏模块判定模块游戏模块结束与结束与显示模块简易文件系统功能框图⑶详细设计总体流程图:各功能模块流程⑷代码实现详细说明各功能模块的实现过程,所用到的算法、技巧等(附上代码)。如:本系统总共2个窗体:form1.form2详细如下:1.开始窗体作用:“导入应用程序”。所用控件:1个标签,2个按钮。设计思路:用标签显示开始语。按钮显示开始与退出。详细内容:属性较特殊的需要说明。代码如下:PrivateSubCommand1_Click()Form1.HideForm2.ShowEndSubPrivateSubCommand2_Click()UnloadMeEndSub2.应用程序作用:“开始应用程序”。所用控件:1个控件数组,2个按钮。设计思路:用command控件数组运行游戏。。详细内容:属性较特殊的需要说明。代码如下DimTimes_numberAsIntegerDimwin_XAsIntegerDimwin_OAsIntegerDimwinerAsBooleanPrivateSubCommand1_Click(IndexAsInteger)'下棋的次数Times_number=Times_number+1Command1(Index).Enabled=FalseIfTimes_numberMod2<>0ThenCommand1(Index).Caption="X"ElseCommand1(Index).Caption="O"EndIf'<1>0-1-2If(Command1(0).Caption=Command1(1).Caption)And_(Command1(1).Caption=Command1(2).Caption)And_(Command1(0).Caption<>""AndCommand1(1).Caption<>""AndCommand1(2).Caption<>"")ThenLabel2.Caption="为:"+Command1(Index).CaptionCommand2.Enabled=TruIfCommand1(Index).Caption="X"Thenwin_X=win_X+1Label4.Caption=Str(win_X)Elsewin_O=win_O+1Label6.Caption=Str(win_O)EndIfwiner=True'<2>0-4-8ElseIf(Command1(0).Caption=Command1(4).Caption)And_(Command1(4).Caption=Command1(8).Caption)And_(Command1(0).Caption<>""AndCommand1(4).Caption<>""AndCommand1(8).Caption<>"")ThenLabel2.Caption="为:"+Command1(Index).CaptionCommand2.Enabled=TrueIfCommand1(Index).Caption="X"Thenwin_X=win_X+1Label4.Caption=Str(win_X)Elsewin_O=win_O+1Label6.Caption=Str(win_O)EndIf'<3>0-3-6ElseIf(Command1(0).Caption=Command1(3).Caption)And_(Command1(3).Caption=Command1(6).Caption)And_(Command1(0).Caption<>""AndCommand1(3).Caption<>""AndCommand1(6).Caption<>"")ThenLabel2.Caption="为:"+Command1(Index).CaptionCommand2.Enabled=TrueIfCommand1(Index).Caption="X"Thenwin_X=win_X+1Label4.Caption=Str(win_X)Elsewin_O=win_O+1Label6.Caption=Str(win_O)EndIfwiner=True'<4>1-4-7ElseIf(Command1(1).Caption=Command1(4).Caption)And_(Command1(4).Caption=Command1(7).Caption)And_(Command1(1).Caption<>""AndCommand1(4).Caption<>""AndCommand1(7).Caption<>"")ThenLabel2.Caption="为:"+Command1(Index).CaptionCommand2.Enabled=TrueIfCommand1(Index).Caption="X"Thenwin_X=win_X+1Label4.Caption=Str(win_X)Elsewin_O=win_O+1Label6.Caption=Str(win_O)EndIfwiner=True'<>2-4-6ElseIf(Command1(2).Caption=Command1(4).Caption)And_(Command1(4).Caption=Command1(6).Caption)And_(Command1(2).Caption<>""AndCommand1(4).Caption<>""AndCommand1(6).Caption<>"")ThenLabel2.Caption="为:"+Command1(Index).CaptionCommand2.Enabled=TrueIfCommand1(Index).Caption="X"Thenwin_X=win_X+1Label4.Caption=Str(win_X)Elsewin_O=win_O+1Label6.Caption=Str(win_O)EndIfwiner=True'<5>2-5-8ElseIf(Command1(2).Caption=Command1(5).Caption)And_(Command1(5).Caption=Command1(8).Caption)And_(Command1(2).Caption<>""AndCommand1(5).Caption<>""AndCommand1(8).Caption<>"")ThenLabel2.Caption="为:"+Command1(Index).CaptionCommand2.Enabled=TrueIfCommand1(Index).Caption="X"Thenwin_X=win_X+1Label4.Caption=Str(win_X)Elsewin_O=win_O+1Label6.Caption=Str(win_O)EndIfwiner=True'<6>3-4-5ElseIf(Command1(3).Caption=Command1(4).Caption)And_(Command1(4).Caption=Command1(5).Caption)And_(Command1(3).Caption<>""AndCommand1(4).Caption<>""AndCommand1(5).Caption<>"")ThenLabel2.Caption="为:"+Command1(Index).CaptionCommand2.Enabled=TrueIfCommand1(Index).Caption="X"Thenwin_X=win_X+1Label4.Caption=Str(win_X)Elsewin_O=win_O+1Label6.Caption=Str(win_O)EndIfwiner=True'<7>6-7-8ElseIf(Command1(6).Caption=Command1(7).Caption)And_(Command1(7).Caption=Command1(8).Caption)And_(Command1(6).Caption<>""AndCommand1(7).Caption<>""AndCommand1(8).Caption<>"")ThenLabel2.Caption="为:"+Command1(Index).CaptionCommand2.Enabled=TrueIfCommand1(Index).Caption="X"Thenwin_X=win_X+1Label4.Caption=Str(win_X)Elsewin_O=win_O+1Label6.Caption=Str(win_O)EndIfwiner=TrueEndIfIfTimes_number=9Andwiner<>TrueThenLabel2.Caption="双方平局"Command2.Enabled=TrueEndIfEndSub'开始PrivateSubCommand2_Click()DimiAsIntegerFori=0To8Step1Command1(i).Caption=""Command1(i).Enabled=TrueNextiCommand2.Enabled=FalseLabel2.Caption=""winer=FalseTimes_number=0EndSubPrivateSubCommand3_Click()EndEndSub'winer判断是否有一方胜利PrivateSubForm_Load()DimiAsIntegerFori=0To8Step1Command1(i).Enabled=FalseCommand1(i).Caption=""Command1(i).FontSize=25NextiTimes_nmumber=0win_X=0win_O=0winer=faseEndSub4.课程设计成果运行结果(可用屏幕抓图的方法说明)(五号,宋体)(多页)5.程序调试过程写出程序调试步骤,及遇到的问题。(1)注意控件按钮的属性及使用PrivateSubForm_Load()DimiAsIntegerFori=0To8Step1Command1(i).Enabled=FalseCommand1(i).Caption=""Command1(i).FontSize=25NextiTimes_nmumber=0win_X=0win_O=0winer=faseEndSub(2)胜负的判定'<1>0-1-2If(Command1(0).Caption=Command1(1).Caption)And_(Command1(1).Caption=Command1(2).Caption)And_(Comman
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论