《C#程序设计》课程设计
题目:拼图游戏
专业:计算机科学与技术
学号:
姓名:
指导老师:
完成日期: 2012/12/26
《C#课程设计》评分标准
题目:拼图游戏专业:计算机科学与技术学号:姓名:
目录
1 前言 (4)
2 需求分析 (4)
要求 (4)
任务 (4)
运行环境 (4)
开发工具 (4)
3 概要设计与详细设计 (5)
系统流程图 (5)
结构功能图 (5)
4 编码与实现 (6)
编码分析 (6)
具体代码实现(附源代码) (9)
5 课程设计总结 (18)
参考文献 (19)
1.前言
拼图游戏一款非常经典的小游戏,因为它比较简单有趣,无论老少都比较适合。
拼图的设计对每一个C#语言设计者进行语言提高和进阶都是一个很好的锻炼机会。
拼图游戏的设计比较复杂,它涉及面广、牵涉方面多,如果不好好考虑和设计,将难以成功开发出这个游戏。
在这个游戏的设计中,牵涉到图形界面的显示与更新、数据的收集与更新,并且在这个游戏的开发中,还要应用类的继承机制以及一些设计模式。
因此,如何设计和开发好这个拼图游戏,对于提高C#开发水平和系统的设计能力有极大的帮助。
在设计开发过程中,需要处理好各个类之间的继承关系,还要处理各个类相应的封装,并且还要协调好各个模块之间的逻辑依赖关系和数据通信关系。
一个3×3的魔板,有一个格子是空的,其他格子内随机放置1-8共8个编号的方块,通过单击任意一个与空格子相邻的方块可以把该方块移入空格子,不断的移动方块,直到方块按照图片的原来的顺序排好。
2 需求分析
要求
(1)用C#语言实现程序设计;
(2)利用PictureBox控件来实现图片的移动
(3)超过200步提示重新来
(4)界面友好(良好的人机互交),程序要有注释。
任务
(1)制作流程图
(2)编写代码;
(3)程序分析与调试。
运行环境
(1)WINDOWS2000/XP/win7系统
(2)编译环境
开发工具
C#语言
3 概要设计与详细设计
系统流程图
如图所示。
图系统流程图功能结构图
如图所示。
Array
图功能结构图
这个游戏主要分为四个模块,分别是游戏开始、游戏复位、游戏结束和游戏退出。
这四个摸块的功能各不一样,游戏开始的模块就不用多介绍了,我们在这里主要说说重新开始的模块,如果玩家对自己本次的成绩不满意,可以通过重新开始模块来重完游戏
4 编码与实现
分析说明
游戏开始:界面如图4-1
图4-1
在程序开头定义变量,实例化数组;代码如下图
游戏进行中:
当游戏运行的时候,桌面上会出现图上的图形界面。
有一个文本框和一个图形界面。
其中通过点击鼠标移动图片,游戏就正式开始,且此游戏是通过计算鼠标点击的次数,而不是计算时间,所以玩游戏的人可以有充分的时间考虑。
游戏中见图4-2
图4-2
左右图片对照方便有游戏的进行,左下角有显示有戏进行的步数,复位时直接把右边的图相应的赋给左边,代码实现如下图:
这里从第一个到第九个PictureBox都有相应赋值和命令这里只截取Box1的图片对应的代码
游戏时本段代码主要运用的c#知识是二维数组和if`~else语句,通过判断box1
游戏复位:
如果觉得自己的成绩不够好,可以选择复位重新开始。
复位时直接把右边的图相应的赋给左边,复位后效果和刚开始一样。
代码实现如下
游戏完成:
当玩家在200步以内完成拼图则提示"恭喜你已经完成拼图!"如图4-3 ;否则将提玩家重新来过如图4-4
图4-4
具体代码实现
附源代码
using System;
using ;
using ;
using ;
using ;
using拼图游戏2
{
public partial class Form1 : Form {
public static int aa;
public static int bb;
private t;
public Form1()
{
InitializeComponent();
}
nabled = false;
}
}
}
nabled = true;
}
}
ss:
switch (aa) nabled = false;
}
}
}
et平台上,C#更是发挥了他强大的作用,使得软件开发变为一件非常容易且高效的事情。
C#在将来必定会占据软件行业高端市场,因此使用C#做高层软件开发是个不错的选择,将来我会考虑使用C#做高层软件开发。
所有的计算机程序都是运行在计算机上的,因此所有的编程语言和开发工具在一定程度上都具有很大的共同点,熟练掌握好一门编程语言和一套开发工具,在今后学习其他的编程语言和工具时,会变得很容易很轻松。
因此,我们学习阶段,不需要贪多,不需要追随最新,而是要求精。
计算机科技发展的速度非常快,时下最时髦的编程语言和开发工具在未来几年中就可能被淘汰,因此,了解程序的运行机制,掌握工具的原理是非常重要的。
.Net平台为程序员做了太多的事情,它将很多的操作都以类的形式封装起来,好处是适合开发软件,坏处是不适合培养专业程序员,至于原因为何,读者自己领会。
最后,要感谢我们的C#任课老师--邵老师。
老师非常负责任,上课讲解详细,是我在大学中见过最对学生负责任的老师之一。
还有我的C#课程设计李老师,在做课程设计时给我们辅导答疑,并予以指导。
还有和我一起的队友,是他们的帮忙,我才能完成这份课程设计,感谢身边的每一个帮助过我的人。
参考文献
[1] 张福祥. C语言程序设计[M]. 辽宁大学出版社,
[2] 张福祥.C语言程序设计实验实训与习题解答 [M].沈阳:辽宁大学出版社,
[3] 牛莉,刘远军等.计算机等级考试辅导教程[M].北京:中国铁道出版社,2008.
[4] 百度文库
11。