ImageVerifierCode 换一换
格式:PPT , 页数:16 ,大小:348.50KB ,
资源ID:1368832      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1368832.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c实训教程课件第4章.ppt)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c实训教程课件第4章.ppt

1、C#实训教程,第4章 八数码游戏,【学习概述】,通过制作小游戏软件,学习Panel、GroupBox、TabControl控件,Point、Random类,#region和while语句的使用。,4.1 项目说明,4.1.1 任务书(1)项目名称:八数码游戏(2)工作期限:3个工作日(3)工作任务:人工智能里面有一个著名的八数码问题,在一个33的方阵中有8个数码,刚开始时它们是无序排列的,并剩下一个空格,空格可以在方阵中移动,要求通过有限次数的移动,使得数字方阵达到有序状态。人工智能里面是要求通过某种搜索方式找到该问题的解,这里是通过用户自己操作移动数码满足游戏的要求。具体要求如下:需要8个数

2、码和一个空格共同组成一个33的方阵。设置两种游戏目标(即两种有序排列状态),供用户进行选择。达到游戏目标,提示游戏成功“恭喜恭喜,你已经得到正确结果”,并显示“最终移动的次数”。(4)项目需达到的技术性能:用户可以使用软件进行游戏,鼠标控制,操作顺畅。,4.1 项目说明,4.1.2 计划书1时间分配(1)分析项目要完成的功能,确定所使用的软件开发工具和开发系统环境,安装好所需工具软件和系统环境,备好所需资料(约需要时间:1/2个工作日)。(2)项目需求分析,确立开发方案,进行软件的概念分析、功能结构分析、逻辑设计和界面的初步设计等(约需要时间:1/2个工作日)。(3)软件的物理设计,模块功能设

3、计,代码的初步实施(约需要时间:1个工作日)。(4)软件的代码实施,代码的功能测试,各模块的组装调试,软件的整体调试,软件注释文档的完善(约需要时间:1/2个工作日)。(5)创建软件系统的安装文件,发布软件的测试版本,并与用户完成软件的整体测试与功能完善(约需要时间:1/2个工作日)。,4.1 项目说明,2项目分析(1)游戏共分为三个区域:游戏区、初始状态区和目标状态区。(2)区域化分可使用Panel、GroupBox、TabControl控件。根据各自的特性,游戏区采用Panel控件,初始状态区采用GroupBox控件,目标状态区采用TabControl控件。(3)游戏区顾名思义就是用于操作

4、得以完成游戏的区域。该区域包含8个数码和一个空格,用户游戏过程中,这几个数码和空格是可以移动的,使用Label控件进行设计。(4)初始状态区,用于显示8个数码的初始状态,便于游戏时做参考,使用Label控件进行设计。(5)目标状态区,用于显示游戏完成时欲达到的有序状态,使用Label控件进行设计。(6)需要设置一个按钮,用于手动开始游戏,并且在游戏过程中可以手动重新开始游戏。(7)达到游戏目标,提示游戏成功“恭喜恭喜,你已经得到正确结果”,使用Message.Box类,并显示“最终移动的次数”,使用Label控件加以实现。,4.2 项目准备,4.2.1 控件1Panel控件Panel控件也称为

5、面板控件,用于为其他控件提供可识别的分组,常用于按功能细分窗体。2GroupBox控件GroupBox控件也称为分组框控件,功能和用法类似于Panel控件,不同之处是没有滚动条,但能够显示标题,其标题由Text属性定义。3TabControl控件TabControl控件可显示多个选项卡,这些选项卡类似于笔记本中的分隔卡和档案柜文件夹中的标签,选项卡中可包含图片和其他控件。TabControl控件可用来产生多页对话框,这种对话框出现在Windows操作系统中的许多地方,如显示器控制面板。,4.2 项目准备,4.2.2 类1IContainer类IContainer类提供容器的功能。容器是在逻辑上

6、包含零个或更多个组件的对象,能够封装和跟踪组件,可以在多种方案下使用组件和容器,包括可视化方案和非可视化方案。要成为容器,类必须实现IContainer接口,该接口支持添加、移除和检索组件的方法。2Point类Point类表示在二维平面中定义点的x和y坐标的有序对。由于该类在程序集using System.Drawing中,所以在使用Point类时,需添加如下代码:using System.Drawing;3Random类Random类能够实现伪随机数生成器。,4.2 项目准备,4.2.3 语句1#region语句【例4-1】#region块的应用。#region MyClass defini

7、tionpublic class MyClass public static void Main()#endregion,4.2 项目准备,2while语句while语句是一种与for语句有所区别的循环语句,其一般形式如下:while(表达式)循环体;,4.3 项目开发,4.3.1 界面设计(1)启动Visual Studio 2008,单击“项目”部分中的“新建项目”,或者选择“文件”“新建”“项目”,新建一个C#项目。(2)这时会自动生成一个Form1.cs窗体,右键选择“属性”,修改“外观”中的Text为“八数码游戏”。(3)选择“工具箱”“Windows窗体”,左键双击Panel或左键

8、选中Panel拖拽到Form1窗体中,将其命名为mypanel。(4)在Panel中添加九个Label,分别命名为“img1”、“img2”、“img3”、“img4”、“img5”、“img6”、“img7”、“img8”、“img0”,并修改“外观”中的“Text”为“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”和空白,在“外观”中的Font设置字体类型,在此设置字体为“Microsoft Sans Serif”、字型为“粗体”、大小为“72”。(5)选择“工具箱”“Windows窗体”,左键双击GroupBox或左键选中GroupBox拖拽到Form1窗体中,其默认名称为

9、groupBox1。,4.3 项目开发,(6)在“GroupBox”中添加九个Label,分别命名为“lbl1”、“lbl 2”、“lbl 3”、“lbl 4”、“lbl 5”、“lbl 6”、“lbl 7”、“lbl 8”、“lbl 9”,并修改“外观”中的Text为“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”和空白,并在“外观”中的Font设置字体类型。(7)选择“工具箱”“Windows窗体”,左键双击TabControl或左键选中TabControl拖拽到Form1窗体中,左键单击“杂项”中TabPage后的按钮,在弹出的“TabPage集合编辑器”中添加tabPag

10、e1、tabPage2,分别修改“外观”中的Text为“目标状态1”、“目标状态2”。(8)分别在“目标状态1”、“目标状态2”中各添加九个Label,并分别将九个Label的“外观”中的Text修改为“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”和空白,并在“外观”中的Font设置字体类型。(9)添加按钮【开始游戏】。(10)添加Label,用于显示文本“移动次数:”。(11)添加Label,命名为“step_lbl”,设置“外观”中的Text为“0”,用于显示移动次数。做好的八数码游戏界面如图4.1所示。4.3.2 代码设计,4.3 项目开发,4.3.2 代码设计1声明2按

11、钮【开始游戏】代码3初始化函数InitGame()4目标状态改变事件5数字移动规则6游戏成功提示,4.3 项目开发,4.1 八数码游戏界面,4.4 实训:推箱子游戏,1项目要求经典的推箱子是一个古老的游戏,目的是在训练逻辑思考能力。在一个狭小的仓库中,要求把木箱放到指定的位置,稍不小心,就会出现箱子无法移动或者通道被堵住的情况,所以需要巧妙地利用有限的空间和通道,合理安排移动的次序和位置,才能顺利地完成任务。编写程序完成推箱子游戏,要求如下:(1)棋盘采用33模式。(2)游戏中有一只箱子和一个推动箱子的小人。(4)箱子只能推动不能拉动。(5)游戏成功提示“恭喜恭喜!”,并显示箱子移动次数。2设

12、计提示本游戏可以看成是八数码游戏中一个数字的还原,不同的是要根据小人的位置移动箱子,例如:小人在箱子左侧,箱子只能向右侧移动,同时小人也要跟着一起移动。3项目评价项目评价是在教师的主持下,通过项目负责人的讲解演示,评估项目的完成情况,评价内容如下:(1)工具类软件界面是否简洁,操作是否简便;(2)使用过程中有无错误提示;(3)能否实现基本功能。,4.5 习题,1填空(1)Panel控件若要显示滚动条,应将其_属性设置为true。(2)GroupBox控件用于_,分组框的标题由_属性定义。当移动单个GroupBox控件时,包含的所有控件_移动。(3)GroupBox控件类似于Panel控件;但只

13、有_控件显示标题,而且只有_l_控件可以有滚动条。(4)随机函数是_。(5)TabControl控件最重要的属性是_,包含单独的选项卡。(6)Point表示_的有序对。2该段代码折叠后显示:#region MyClass definitionpublic class MyClass public static void Main()#endregion,4.5 习题,3下列代码的输出为:using System;class WhileTest public static void Main()int n=1;while(n 6)Console.WriteLine(Current value of n is 0,n);n+;,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1